I haven’t had initial slowdown with physics, but most of my projects take a good 5-20 seconds to start running stably, lots of geometry loading and generating, light probe rendering… There is no easy way around this, optimizing loading routines takes way to long, so I just dont ‘start’ the game until its stable, and hide it behind a loading screen.
Staggered loading can help in physics, loading in boxes in small groups over several frames, to average out slow down
It may be possible to take a snap shot of the position states for all boxes once they have settled, and use that for their inital positions for future loads, this may reduce the time it takes for them to “settle”.
I dont know about polling the physics space, you could check say 10 random boxes every frame, mark if they are asleep, continue untill all are marked asleep ?
Keep in mind this slow down might be on your machine only, it may be a pile of crap, so judging slowdown by using number of asleep objects may not be accurate, it may be better to check the average frame rate, wait until that hits your target fps and is stable, BAM run your game and profit.