Is the 3GB option for process RAM supported by Unity per chance?
This would give more flexibility at least for x64 users with plenty of RAM. And also for others with 3GB option enabled for OS.
Supposedly, yes. But, Unity is a kind of complex process with multiple different sections to it: unmanaged memory for the engine itself, the mono runtime as part of the same process, and for things like textures, etc; and then the managed memory that is for game objects, our code, etc. It seems like there are limits on our managed part of the memory to keeping it to something like 1.2GB or something (which translates into maybe 1.6GB of unmanaged memory, usually, when the too many heap sections thing creeps in).
So it's kind of annoying with that, hopefully that will be improved on many fronts in the future. The other big problem being that if there are currently (say) 850 MB of managed memory in use, and 450 of those would be freed by the next garbage collection run, and the game needs to allocate another 50 MB of managed memory, it will allocate those 50 MB of memory even if that would cause a too many heap sections error, despite the fact it could have easily avoided that. Sui-freaking-cidal. Grr.
At any rate, the H/Ks aren't an optional thing because their point is less about lower-end machines and more about avoiding running out of memory on higher-ship-count campaigns. You can still easily get battles with absolutely thousands of ships in them, though, so it's not like it's cutting the ship counts down into the hundreds or anything.
I'm overall just trying to keep the battles to a few thousand per side, rather than ever having ten thousand per side; same as I'm trying to keep the overall ship counts for games to the 30,000 to 100,000 range, rather than letting them get up into the 300,000 ship range at times. Same sort of reasons, in terms of memory usage restrictions.