- I dont get that you dont get it? Enough for workload X would be (otherwise i'd gotten memory faults) : 12G, 6G actual and 6G swap. Now the logic would be that 12G actual physical ram would do the job WITHOUT pagefile (this is, actual logic, not just spouting random words here).
Ok so you're basically saying that from those two scenarios:
Scenario 1: Pagefile available. Application runs out of memory and trashes around a bit. We get a bit lower performance (since the scheduler can swap out memory of other processes that may not even need it right now, maybe not even much). If we want to redeem this situation we can just install another memory stick when we get around it. Cost: A few gb space which for the large majority of people is extremely cheap, the minority is able to fix the problem and also get the cheap cost with one change.
Scenario 2: Pagefile disabled. Application runs out of memory, we get a out of memory exception (or even funnier a BSOD, we can swap some kernel memory out). Your whole work is lost and you can start anew, which undoubtly will cost a whole lot more time. Person is rightfully extremely pissed at windows.
Cost: Lost work, all the possible problems a BSOD while working can get you, annoyed person.
Scenario 2 is to be preferred.
Nope, I don't really see the appeal. Especially considering that virtual memory in its whole glory (overcommitment [oh god, why did I have to remind myself of that?], PAE,..) is complicated enough that even many programmers who should know it better don't get it completely right.
Also there are some application that allocate a large amount of memory at startup without planning to use all of it at once - without the pagefile windows can't handle that request (yeah linux could with overcommitment enable - something which incidentially still causes me nightmares). So without a pagefile the app fails.
And if we go into OS engineering reasons, usually the OS commits a whole lot of more memory than is actually needed so without a pagefile we actually WASTE perfectly good memory for no use, write the memory back with a low priority IO and afterwards use it for something useful (after all low priority IO only happens if nobody else wants to use the disk anyhow)
Completely agree with Nothinman on that one - there ARE some extremely rare cases where disabling it makes sense, but if you have one of those at hand you don't need to ask questions here (no local writeable disk; you want to make sure the scheduler doesn't swap out dirty pages,..)