Here's another counter-intuitive notion: It's more efficient for a system to use as much memory as possible -- not to fill it with data, necessarily, but to populate memory pages with something. In an illustration for his part of this morning's workshop, Microsoft Distinguished Engineer Landy Wang showed a Windows 7 Task Manager panel where a machine with 8 GB of DRAM, running just a handful of regular processes, ended up with 97 MB free, or completely "zeroed." And that was a good thing.
"A lot of people might think, 'Wow, 97 megabytes doesn't seem like a lot of free memory on a machine of that size,' said Wang. "And we like to see this row actually be very small, 97 MB, because we figure that free and zero pages won't generally have a lot of use in this system. What we would rather do, if we have free and zero pages, is populate them with speculated disk or network reads, such that if you need the data later, you won't have to wait for a very slow disk or a very slow network to respond. So we will typically take these free and zero pages as we come across them, and pre-populate them with any files you might have read before, or executables we think you might run in the future -- we will get that in advance, so you don't have to wait when you click on something. It's already in memory, but you shouldn't take this low counter as implying that we're using a lot of memory."
Then Wang paused before adding, "We really are using a lot of memory, but we think we're using it in a smart way that you really want us to be using it in."