Mark Russinovich, (of sysinternals fame), did a series of videos with David Solomon, and this is one of the topics they covered. So this information comes from them and that video. I suggest everyone check it out some time, those guys probably know more about Windows than most people.
1) No paging file == no crash dumps. Windows writes crash dumps to the paging file on the boot volume. So if you want a full memory dump, you'll need to match your paging file size to your physical memory size.
2) Modified private virtual memory is the only memory that gets written to the paging file. Not code. Code can be read from the same place it got it from in the first place. And only memory that isn't referenced for some amount of time gets paged. So my understanding of that is even though you disable your paging file, CODE can still be "paged out".
3) So, it's slightly more efficient to have a SMALL paging file than none at all. Some memory allocated by software may be used once then never touched again. The paging file gives Windows a place to put it, so the paging file essentially becomes write-only. Then those pages are freed up for the memory manager to use.
4) If you're going to use a paging file, the correct size to use is the sum of the private bytes of user-space programs plus the kernel private bytes. This is known as the "commit charge" which you can see in the lower left hand size of the built-in task manager. That is the "potential page file usage", not the amount of actual paged-out memory.
Personally, I've been running without a paging file for years without issues. Unless I need to do a crash dump analysis.