My high level explanation was what I read from documentation based on classic Mac OS’s virtual memory scheme.
Beyond that (which I will have to cite when I get back to my MacBook), I can’t tell you. But it does line up with what developers and publishers will recommend if performance issues arise (see a few of the sources cited way above).
Again, I never did any dev work for classic Mac OS applications, nor the OS and how it handles RAM when VM is switched on vs off. So unfortunately I can’t provide any more of a rational explanation as to why it works the way it works and why those other devs/publishers have their recommendations. I really wish I could.
and
@Cory5412, I agree that based on what was described from what I looked up (same citation I need to provide above), the expected performance impact SHOULD be bigger. But it isn’t. Again, I don’t know the why. But the impact is none the less there when VM is on, memory has not spilled to disk, and performance is nearing 100% demand of what the Mac can provide from a computational standpoint. I cited a few devs/publishers above that back that up.
Obviously there is always going to be the right tool for the right job, like Cory said. But sometimes you do a task for the thrill of saying it has been done. Such as MP3 playback on an SE/30, music video playback on a PowerBook 2400c, or Space Cadet Pinball on a modded color classic (which requires VGA mod and a swap to at LEAST an lc 520 logic board, but really a 550 board). These 3 examples are mine, but in each case VM on (despite plenty of available physical RAM as well) was causing stutters and sloppy performance. Only change of VM off, and smooth performance (except Space Cadet on 520 color classic, performance significantly improved but still had some choppiness. An eventual swap to lc550 board smoothed out the remaining choppiness. VM on for 550 color classic reintroduced stuttering in motion).
Again, I wish I had a more rational or clear explanation, but I don’t. I used to be firmly in the camp of VM on at all times as the OS and apps use less ram when it is on. However the first go of Space Cadet Pinball on a modded Color Classic and later reading through the included Read Me documentation a couple of years ago pointed me in the direction of disabling it unless absolutely needed (such as on the stock Color Classic board that only addresses 10mb of physical RAM... not a whole lot for 7.5.5 and multi tasking). And as it turns out, that game is far from alone in making that recommendation.