With hundreds of objects you should definitely disable behaviors for objects which are too far away. You can use "Is on screen" condition or distance() expression. So you can do something like this:
Every 2 seconds:
Pick EnemiesFamily where distance(EnemiesFamily.x, EnemiesFamily.y, Player.x, Player.y)<2000
EnemiesFamily enable behaviors
Pick EnemiesFamily where distance(EnemiesFamily.x, EnemiesFamily.y, Player.x, Player.y)>2000
EnemiesFamily disable behaviors
Note, that if you have too many objects, even disabled behaviors can affect performance. You might want to create objects only when player gets close to them, and destroy objects which are left far behind.