I've been running without a swapfile for years, but it's never been a totally pain-free process. My old thinkpad had 2GB of memory, which was pretty much fine for a machine running XP, but I'd occasionally run out (firefox being the usual culprit) and the program would crash.

When I got my new thinkpad, it came with 4GB, because 8GB just wasn't reasonably priced. I got by alright: every once in a while win7 would nag me about memory usage being high and insist that I close some programs, but I could usually ignore it.

A few days ago I do a cursory check of RAM prices and realize that 4GB SODIMMs have come down a lot in eight months, so I upgraded. I'm quite confident that I'll never use all 8GB of the memory I have installed now... by the time anything needs that much, I'll probably be on to the next machine.

What this means is that $150 in memory, less if you're using a desktop, is enough to obviate the need for a swapfile for basically everyone.

Ah, memories. Remember how machines used to thrash with 16MB of RAM? Let's reminisce.

I don't mind Windows taking up a few gigs of my harddrive space. What I do mind is that programs taking forever to dig out of the PF once they're banished there. I've got shittons of memory, there's no reason to banish a program just because I alt tabbed away.

I've been running without a swapfile for years, but it's never been a totally pain-free process. My old thinkpad had 2GB of memory, which was pretty much fine for a machine running XP, but I'd occasionally run out (firefox being the usual culprit) and the program would crash.

So basically, you caused yourself pain (i.e. programs crashing) by disabling the pagefile, pain which would have been prevented by not disabling the pagefile, and you still think disabling the pagefile is just a smashing idea.

Are you high?

Quote:

What this means is that $150 in memory, less if you're using a desktop, is enough to obviate the need for a swapfile for basically everyone.

the first paragraph in your post proves you don't have anywhere near enough of a clue to make statements like that.

Does anyone know of a good Win 7 memory "adjuster" app. I am looking for one that releases allocated Windows memory once Windows is done using it. Bonus if the app has a status bar icon that flashes different colors when it is working.

-Alright alright, page file vs. swap file... no need to get caught up in pedantry.

-I've never run into a program that wouldn't run for lack of a swap, er, pagefile.

-I'm not being cheap with disk space here.

I do take issue with the idea that eliminating the pagefile is the equivalent of registry cleaning or TURBO INTERNET ACCELERATOR or whatever.

Jim Z wrote:

So basically, you caused yourself pain (i.e. programs crashing) by disabling the pagefile, pain which would have been prevented by not disabling the pagefile, and you still think disabling the pagefile is just a smashing idea.

Are you high?

Quote:

What this means is that $150 in memory, less if you're using a desktop, is enough to obviate the need for a swapfile for basically everyone.

the first paragraph in your post proves you don't have anywhere near enough of a clue to make statements like that.

Even four years ago with 2GB of memory, disabling the pagefile resulted in an immediately noticeable increase in responsiveness that I judged to be well worth a semi-annual firefox crash. 5400rpm laptop disks aren't exactly fast.

On one hand you have everyone here saying "windows knows best" and on the other hand there's my (admittedly anecdotal) observation. This sort of thing is of course kind of tough to benchmark.

We're in an era where memory is just too cheap to worry about how efficiently windows is using it. Maybe there's a few hundred MB of memory that the OS could swap out to disk and you'd never notice, but who cares? If you need more RAM, go ahead and buy it.

Let's put it this way: at what point will it finally seem outmoded to have a small amount of infrequently-used memory written out to disk? How much memory is enough for a pagefile to cease being necessary? 8GB? 24GB? When your average system comes with 64GB, are we really still going to think it's a good idea to use a disk as memory? Why not get ahead of the curve?

I'm not saying 8GB of memory is enough for *everyone*... but just about everyone. I'd also contend that if 8GB isn't enough for whatever you're doing, it's probably real work and the cost of the extra RAM would be pretty easy to justify.

Anyway, I didn't realize this was a weekly thread here. I just upgraded my RAM and thought I'd share what I thought was an interesting consequence of that decision.

Even four years ago with 2GB of memory, disabling the pagefile resulted in an immediately noticeable increase in responsiveness that I judged to be well worth a semi-annual firefox crash.

then you don't even understand how the pagefile works.

If messing with your pagefile settings actually changes your system's performance, then YOU DO NOT HAVE ENOUGH RAM!

If you actually have "enough" memory as you claim you do/did, then any perceived improvement in performance is placebo.

Quote:

On one hand you have everyone here saying "windows knows best" and on the other hand there's my (admittedly anecdotal) observation. This sort of thing is of course kind of tough to benchmark.

your observation is worthless. if you can't actually show a performance improvement, then there isn't one.

Quote:

We're in an era where memory is just too cheap to worry about how efficiently windows is using it. Maybe there's a few hundred MB of memory that the OS could swap out to disk and you'd never notice, but who cares? If you need more RAM, go ahead and buy it.

we're also in an era where disk space is so cheap that obsessing over a few GiB for a pagefile is silly.

Quote:

Let's put it this way: at what point will it finally seem outmoded to have a small amount of infrequently-used memory written out to disk?

what difference does it make? If you truly have "enough" RAM so that you think you can disable the pagefile, then there's no harm in leaving it enabled because it won't be fucking affecting anything anyway! Even with "sufficient" RAM, there's no reason not to have the pagefile enabled as a "safety net" of sorts. At least if you have something go nuts leaking memory, you can have a better chance of intercepting and killing it before everything else starts crashing.

Quote:

I do take issue with the idea that eliminating the pagefile is the equivalent of registry cleaning or TURBO INTERNET ACCELERATOR or whatever.

you clearly don't understand how it works so you have no business taking issue with anything.

Thanks, Hattie. It is now called Memturbo 4.1, and it is $30, with a 15 day trial. I love it! It has made my P3 with 256M of RAM running Windows 7 feel like a Ferrari! Who needs a new computer?

A Google search for "APK Memturbo" revealed this March 2001 Ars forum thread , featuring many current day Ars members, plus, later in the thread, a lengthy list of other Ars threads about APK. A virtual time machine thread for long-time members. Not all links may still be functional.

Even four years ago with 2GB of memory, disabling the pagefile resulted in an immediately noticeable increase in responsiveness that I judged to be well worth a semi-annual firefox crash. 5400rpm laptop disks aren't exactly fast.

Funny, I worked for years off a laptop with a 5400 RPM disk. I frequently had Eclipse, Word, Firefox and some other stuff open at the same time. There was frequent paging. Throughout, the thought that was looping in my head was "man, I'm sure glad my programs won't CRASH due to not having enough memory. That would suck."

Let's put it this way: at what point will it finally seem outmoded to have a small amount of infrequently-used memory written out to disk? How much memory is enough for a pagefile to cease being necessary? 8GB? 24GB? When your average system comes with 64GB, are we really still going to think it's a good idea to use a disk as memory? Why not get ahead of the curve?

That's pretty idiotic. The disk IS NOT BEING USED AS MEMORY.

It's being used to evict stale pages from a faster area.

YOU WILL STILL NEED A PAGEFILE WHILEVER YOUR RAM IS SMALLER THAN YOUR DISK.

Is this not simplistic enough? Then let's be even simpler. Going from fastest to slowest, what do we notice about all these:Registers, L1 cache, L2 cache, L3 cache, RAM, Disk

Yep, as we go along they get bigger and slower. Until your RAM is bigger than your HD, or your HD faster than your RAM, you will ALWAYS need a pagefile, simply because you cannot cache the entire HD until this happens. Crippling one level of cache, such as L2 (to make a Celeron) or RAM (by killing the pagefile) will always reduce performance.

You cannot cripple a cache and improve performance, yet this is what you're claiming. It's idiotic.

And yet 5 people (so far) voted NO and 1 user voted for Setting it at twice the amount of RAM. TBH both are wrong, but those 5 are "wronger" than the sole proponent of that relic rule of thumb. Geez, one would expect that this concept ought to be already ingrained even in not very computer proficient users, but I guess not....

Until your RAM is bigger than your HD, or your HD faster than your RAM, you will ALWAYS need a pagefile, simply because you cannot cache the entire HD until this happens.

I understand that I need a pagefile. But why the hell would I want to cache the entire HD? How am I misreading this?

Because a HD is randomly accessed. The next file access could well be a cache miss. If available RAM is larger than the HD, then there'll never be a cache miss once the HD has populated RAM.

Having more available RAM minimizes the chance that the pathetically slow HD will be needed. A pagefile gives you more available RAM.

Windows is in full agreement: It features all sorts of very complex algorithms to try to guess what to load into cache from HD, before it is needed and is a catastrophic performance penalty. While even the "fastest" SSD is chugging away trying to find a file, a modern CPU has missed over a million instruction slots doing absolutely nothing. That's not even including the time taken to transfer the file, which may well be several more million.

Having the data already in RAM reduces that penalty from "millions" to "a few hundred".

Given how strongly people seem to feel that I'm a complete moron on this particular subject, I thought I'd educate myself a little.

Here's what Mark Russinovich, the guy behind all the sysinternals tools, officially employed by MS to write said tools, has to say on the matter:

Spoiler: show

Quote:

So how do you know how much commit charge your workloads require? You might have noticed in the screenshots that Windows tracks that number and Process Explorer shows it: Peak Commit Charge. To optimally size your paging file you should start all the applications you run at the same time, load typical data sets, and then note the commit charge peak (or look at this value after a period of time where you know maximum load was attained). Set the paging file minimum to be that value minus the amount of RAM in your system (if the value is negative, pick a minimum size to permit the kind of crash dump you are configured for). If you want to have some breathing room for potentially large commit demands, set the maximum to double that number.

Some feel having no paging file results in better performance, but in general, having a paging file means Windows can write pages on the modified list (which represent pages that aren’t being accessed actively but have not been saved to disk) out to the paging file, thus making that memory available for more useful purposes (processes or file cache). So while there may be some workloads that perform better with no paging file, in general having one will mean more usable memory being available to the system (never mind that Windows won’t be able to write kernel crash dumps without a paging file sized large enough to hold them).

To summarize: size your page file based on your expected peak commit charge. If that's less than the amount of RAM you have installed, you don't need a page file. However, disabling it will mean you can't get kernel crash dumps (because those are so very useful), and more importantly, windows will have less memory to use as cache. This may reduce performance. So, you guys are somewhat correct: the memory that windows can page out can be put to better use and so, sometimes and maybe even most of the time, having a page file will improve performance.

On the other hand, with 8GB of memory, having a few hundred megs wasted on dormant pages still leaves plenty for cache in most scenarios. Benchmark it if you want and make a decision based on that, but the lesson here is that all the people so enthusiastically attacking the idea of running without a pagefile aren't 100% right. Maybe you're right in most cases, but the vehemence with which the argument is being stated here doesn't suggest that anyone was willing to admit that the issue is anything but 100% settled fact with my position being flat out wrong.

Having a page file means that sometimes windows WILL use it as memory, if it has to. If something tries to commit 10GB, and it actually uses it, windows will have to start moving data back and forth between pagefile and physical RAM to meet that commit request. On the other hand, if you don't have a page file, the commit will fail and the program will crash. Both options kind of suck.

Lessons: 1. Have lots of memory, because it's cheap. If you're using the page file to meet routine commit requests, get more RAM.2. Page file pros: nothing will ever crash for lack of memory, stale/dormant/whatever pages can be written to disk to leave more room for file system cache and such. 3. Page file cons: every once in a while something will get paged out and then the program might need it back. You wait a bit.

Benchmarks under a wide variety of usage scenarios would be the only way to establish conclusively which is better.

The question posed is "why". Restating things doesn't help. All this supposed "need" is rather relative. It's not like your computer can't function without a page file. It can, and does quite well, as long as your programs don't use too much memory. I also see no reason to associate the need for a page file with the relative size of your RAM to your HDD(s). That's just silly.

Hat Monster wrote:

Crippling one level of cache... will always reduce performance. You cannot cripple a cache and improve performance...

Quote:

The disk IS NOT BEING USED AS MEMORY.

Of course the disk isn't being "used as memory" in the sense of random access disk reads, and you know that's not what syncrotic meant. It is being used as memory in the sense that it stores information from the virtual memory of the running programs.

Quote:

It's being used to evict stale pages from a faster area.

Evicted why? So things can be cached that will very possibly never be used again?

In the past, programs allocating more RAM than you have was the rule, not the exception. Now, we have plenty of memory, and we think it the exception when our programs run us out of memory and we need the "safety net" of the page file.

How is having to bring back an "evicted" page any less "catastrophic" than a cache miss?

Am I saying that I always or even usually turn off my page file? Am I saying that I completely discount Windows' "very complex algorithms"? No. But I am saying that Windows doesn't always get it right. I know that from experience, and I mirror syncrotic's "admittedly anecdotal" "increase in responsiveness". Doesn't it seem silly to, on the one hand, say "You need a page file.", but on the other hand "You should never have to use it." because any use of the page file indicates "YOU DO NOT HAVE ENOUGH RAM"?

Evicted why? So things can be cached that will very possibly never be used again?

Strawman. Counter-argument: Do not evict why? So something used often will not be cached?

Quote:

How is having to bring back an "evicted" page any less "catastrophic" than a cache miss?

Because the evicted page may still be on the standby page list. The very fact that it got evicted means it was not being used often or even at all. If you're not printing, do you need the spooler in physical memory?

How is having to bring back an "evicted" page any less "catastrophic" than a cache miss?

Because the evicted page may still be on the standby page list.

I certainly wasn't taking "evicted" to include pages on the standby list. It was your word, originally, so use it how you like, but if you're going to follow the analogy very far, a standby page only has to leave when the new tenants get there, and they already have somewhere else to stay.

Quote:

If you're not printing, do you need the spooler in physical memory?

It's a person-by-person decision, but there's little reason I should have to wait for it to get put back into physical memory when there's plenty of memory to go around.

Quote:

How does having less available RAM make your system "increase in responsiveness"? Is it cumulative? If I downgrade to 16 MB, will my system be faster than the NEC Earth Simulator?

Are you trying to twist the meaning of what I say? What does "having less available RAM" have to do with anything? Your downgrade crack is pure trolling - what the heck? The only way paging helps you have more "available RAM" is by paging out things the system guesses aren't going to be useful anytime soon. Sometimes it's right, sometimes it isn't; sometimes I don't really care, because maybe I want a program to respond immediately, even if I haven't used it for hours or days. If I'm accessing a file, I understand if it takes a little while to fetch; I expect that because it's on the disk. If I try to access a loaded program, I expect it NOW, because I've already gone to the trouble of loading it.

A page file may provide more space for caching, but how many GBs are really necessary to provide decent caching? If I have 16GB RAM, and programs only use a fraction of that, do I really need more than 8-12GB of file system cache? I don't think so. In that, I think the OP's idea of page files becoming rather pointless isn't that far off target. You can still claim it as "a safety net" or "a last resort to avoid a crash", but there are other ways, certainly. As syncrotic already pointed out, "win7 would nag me about memory usage being high" so it's not like you won't be forewarned about a leaky program. A little preemptive management is all that's needed to avoid a crash - not some complex page file system.

this is why these discussions get so testy. You're making a statement based on ignorance. What makes you think you know how to better use system RAM than the operating system?

Quote:

In that, I think the OP's idea of page files becoming rather pointless isn't that far off target.

another ignorant statement with no basis in reality.

Quote:

You can still claim it as "a safety net" or "a last resort to avoid a crash", but there are other ways, certainly.

such as? a detailed explanation would be welcome.

Quote:

As syncrotic already pointed out, "win7 would nag me about memory usage being high" so it's not like you won't be forewarned about a leaky program. A little preemptive management is all that's needed to avoid a crash - not some complex page file system.

Given that all of the three major desktop/server OSes (Windows, Mac OS X, and Linux) use a page file or swap area to do much the same thing, you'd better get on the horn with all of those developers and tell them how wrong they are.