What is most resource intensive, 2D Raycasting or physics2D.overlapArea?

I’m making a game in which there are a lot of “organisms” (can range from a hundred to thousands) and they should have the ability to “look” (essentially scanning a little area in front of them) for other organisms. Each organism has a rectangular collider2D and a rigidbody2D.

Diffrent organisms have a diffrent sizes of areas they should see (i got the maths and stuff figured out)

And i wonder: Is it more resource intensive to use Physics2D.OverlapCollider on the area that the organism can see or to use RayCastHit2D in front of the organisms?
And how does it depend on the amount of rays? I assume its less resource intensive to cast 1 ray than to overlap a triangular area but doing 5 raycasts vs scanning a septagonal area?

(And no i wont have 1000 organisms doing this every frame, ive done that before and it didnt end up too well xD)

Thanks in advance!

Try both, and use the profiler to find out which takes longer.