XP Pagefile on a RAM disk?


Recommended Posts

I have 3GB RAM in my laptop, but XP does still use the pagefile with around 2-300MB... Whith over 2GB of free RAM!

Is it safe to disable the pagefile, or is there any way to place it on a RAM-disk?

Link to comment
Share on other sites

Just change the setting to 768 Mb min and max and you'll be fine. But to answer your question yes, you can put the PF on a ram disk, but unless you are very short of hd space there's really no advantage.

Link to comment
Share on other sites

I would disable it

So did I with just 2 Gigs of RAM running XP Pro. No Problems yet.

As long as there is free mem, there?s no need for a pagefile.

Link to comment
Share on other sites

As I've tried to explain before, you cannot disable the pagefile, only your ability to manage it. XP was designed to page to virtual memory and it always will. If you set the pf to zero it will create a pagefile when and where it chooses and you will never know it.

And the fact that the ram drive is faster than a hd will have little or no effect on 99% of user systems (we ran a test on this years ago, when XP was first released and it only made a difference to those running huge datacentric programs).

Link to comment
Share on other sites

except for the fact that ram is much faster than the hard drive?
So, your logic is to remove RAM from operational space, only to provide it for swap? :ermm:

I fail to see the advantage.

Link to comment
Share on other sites

I agree, this'd cause a massive slow down. On Machines with 4GB of RAM I still set them up with a 2GB pagefile. If you get a memory leak in an application you can recover from it easily, if you've not got a page file then you'll fill your ram and have to force reset.

Link to comment
Share on other sites

So, your logic is to remove RAM from operational space, only to provide it for swap? :ermm:

I fail to see the advantage.

Just around 2-300MB. It's a laptop with a 5400rpm disk which is fairly slow, so instead of copy data from the disk to the pagefile (on the disk), wouldn't it be faster to copy it to the RAM?

I'm only using windows for playing CS:s, BF2, and some other games. Otherwise i use GNU/Linux. But i'll try to disable the pagefile instead... If i only have 300MB for it, and if then and the RAM is full, i think i get the same result as disabling it: Probably a crach. ;)

Link to comment
Share on other sites

Just around 2-300MB. It's a laptop with a 5400rpm disk which is fairly slow, so instead of copy data from the disk to the pagefile (on the disk), wouldn't it be faster to copy it to the RAM?

...

No.

Yes, a ramdisk speed is much faster than a hard disk speed. But you have taken away RAM resources from the OS to use for the applications, so it must now "page" that memory exactly that much quicker. So, instead of using that RAM for RAM, it is using that RAM for page operations.

Link to comment
Share on other sites

  • 2 months later...
Believe whatever makes you happy. The fact is you cannot prevent XP from using virtual memory.

Since Windows XP always swaps things to the page file despite lots of unused RAM, would it be a performance enhancement to place the page file in a Ram Disk on a PC with plenty of spare RAM (eg, a 4GB system)? Not having to read/write from/to a page file located on a hard disk probably speeds the PC up, doesn't it?

One illustrative scenario is Jezzy's Eclipse (java virtual machine) experience. (See Jezzy's comment on September 22, 2007)

http://www.codinghorror.com/blog/archives/...22.html?r=28017

For those who think that Windows doesn't swap if it's not necessary: run Eclipse with a very big project (or any other big Java application) and leave it for a night. Then come back and try to do something. It's almost impossible because the whole Eclipse (java virtual machine) is in the pagefile!

By not disabling the page file and avoiding any potential instability (however small and theoretical) and putting a page file on a Ram Disk, can a best practical approach be achieved?

Any comments?

Edited by max789
Link to comment
Share on other sites

As I said above, it only makes sense to place the pagefile on a ramdisk if you are running a huge datacentric application (a very large database that is continually updated and needs to swap data in and out constantly). Otherwise, you are better off using the memory for normal ram. Remember, a ramdisk takes the memory from your ram. So if you have 2Gb of ram and you create a 512Mb ramdisk, your system now only has access to 1.5Gb ram for that session.

Link to comment
Share on other sites

  • 10 months later...
Otherwise, you are better off using the memory for normal ram. Remember, a ramdisk takes the memory from your ram. So if you have 2Gb of ram and you create a 512Mb ramdisk, your system now only has access to 1.5Gb ram for that session.

Sorry to bring this topic to the surface again, but it really is important. I think max789's point was that because XP has BIG problems not using all/most available RAM before digging into the pagefile, a decent practical solution is to get XP to use the pagefile on the RAM drive. This way, XP gets its way (using a pagefile), and we get what we want, fast RAM access. If XP was more sensible with RAM, then of course you would be right.

In summary, it sounds like a great idea to create a pagefile in the RAM disk, considering XP will (stupidly) dig into it *even when only 10-30% of physical RAM* is being used up.

Am I right?

Link to comment
Share on other sites

XP manages memory very well. Your perception of XP's "problems" and "stupidity" is wrong. It uses the pagefile when it is supposed to and does so well. But by all means, go ahead and put the virtual memory on a ramdrive - it's your system.

Link to comment
Share on other sites

XP manages memory very well. Your perception of XP's "problems" and "stupidity" is wrong. It uses the pagefile when it is supposed to and does so well. But by all means, go ahead and put the virtual memory on a ramdrive - it's your system.

Thanks for your reply - maybe you've got a point.

It's just that after a cursory glance today, I've found at least 3 people from completely different websites who have said the same thing - how XP dips into the pagefile even when only 10-50% of real RAM has been used up. Any idea what the heck could be going on?

Do you think that it's theoretically possible that the pagefile could start to be used (by the OS) even when the real RAM used is less than 20%?

Link to comment
Share on other sites

Since you have plenty of memory for XP. (3GB)

Try the disable paging executive reg setting.

It will keep all kernel related items in memory and will never swap them to disk.

By default the paging executive is enabled and can start to swap kernel / O.S. items to swap space even when there is still plenty of ram available.

Link to comment
Share on other sites

1) Ignore the above post. As I've tried to explain numerous times you cannot disable the pagefile, only your ability to manage it. XP was designed to page and will always page - if you "disable" the pagefile it will continue to page to the hd but you will not know it and you will have no control over it. And of course there are a few programs that won't even run if you do not have a pagefile set.

2). XP pages when it needs to. It does not matter how much actual ram is being used at the time. It maximizes the use of real and virtual memory. Do you really think we know better than the programmers at Microsoft who designed the system?

Link to comment
Share on other sites

Try the disable paging executive reg setting.

It will keep all kernel related items in memory and will never swap them to disk.

When will the FUD die???

http://home.comcast.net/~SupportCD/XPMyths.html

Check out

DisablePagingExecutive

Myth - "Setting DisablePagingExecutive to 1 improves performance by preventing the kernel from paging to disk."

Reality - "DisablePagingExecutive applies only to ntoskrnl.exe. It does not apply to win32k.sys (much larger than ntoskrnl.exe!), the pageable portions of other drivers, the paged pool and of course the file system cache. All of which live in kernel address space and are paged to disk. On low memory systems this can force application code to be needlessly paged and reduce performance. If you have more than enough RAM for your workload, yes, this won't hurt, but then again, if you have more than enough RAM for your workload, the system isn't paging very much of that stuff anyway. This setting is useful when debugging drivers and generally recommended for use only on servers running a limited well-known set of applications."

http://www.edbott.com/weblog/?p=1298

Yet another silly set of Windows tweaks

I like this quote;

"For the average person, making a chance to the DisablePagingExecutive setting is like trying to perform a lobotomy on yourself with a pair of knitting needles."

Link to comment
Share on other sites

XP pages when it needs to. It does not matter how much actual ram is being used at the time.

But that's my point - it shouldn't 'need to' page to the HD if there's so much real RAM left over! How am I mistaken that this wouldn't be 'stupid' of Microsoft? Hence the idea of artifically creating a 'disk' to RAM to fool Windows into thinking it's really a HD. Even if it uses only a few hundred megabyte of stuff in that pagefilem, it would still be really useful to have it in RAM. Compare a system with say 4 GB of physical/real RAM:

a: 1000 MEG of real RAM used up + 100 MEG HD pagefile

OR...

b: 1100 of real RAM used up

OR...

c: 1000 MEG of real RAM used up + 100 MEG _RAMdisk_ pagefile

In situation A, Windows has 'stupidly' allocated 100 meg to the HD pagefile, when it could have stored it in real RAM as B or C (the hack) shows. Both situations are possible in the 4GB setup, and obviously the 2nd one would run faster. What am I missing?

Do you really think we know better than the programmers at Microsoft who designed the system?

Your guess is as good as mine here. I've heard that Vista is better at memory management, so maybe they've learnt from their mistakes? Evidence for this would be for the "conservative pagefile mangement" setting which is apparently Vista only.

It seems there's always been obsession at Microsoft with the pagefile/swapping, but that could just be the bias of my bad memories with PCs running simple word processsors where HDs never stopped thrashing, while computers such as the Amiga ran effortlessly. Things have progressed (somewhat) since those days, but I'm not sure to what degree.

Edited by twinbee
Link to comment
Share on other sites

His original complaint was that the os was swapping to disk even with enough free memory available.

creating a swapdisk on a ramdisk is a real harmfull FUD. (DON't put a swapfile on a ramdisk, it's worthless.)

If you have more than enough RAM for your workload, yes, this won't hurt, but then again, if you have more than enough RAM for your workload, the system isn't paging very much of that stuff anyway.

Like the XP myth guy / site explains, it won't hurt... (he has 3GB of RAM)

Link to comment
Share on other sites

But that's my point - it shouldn't 'need to' page to the HD if there's so much real RAM left over! How am I mistaken that this wouldn't be 'stupid' of Microsoft? Hence the idea of artifically creating a 'disk' to RAM to fool Windows into thinking it's really a HD. Even if it uses only a few hundred megabyte of stuff in that pagefilem, it would still be really useful to have it in RAM. Compare a system with say 4 GB of physical/real RAM:

a: 100 MEG HD pagefile

b: 1000 MEG of real RAM used up

OR...

a: 100 MEG _RAMdisk_ pagefile

b: 1000 MEG of real RAM used up

Obviously the 2nd one would run faster. What am I missing?

Your guess is as good as mine here. I've heard that Vista is better at memory management, so maybe they've learnt from their mistakes? Evidence for this would be for the "conservative pagefile mangement" setting which is apparently Vista only.

It seems there's always been obsession at Microsoft with the pagefile/swapping, but that could just be the bias of my bad memories with PCs running simple word processsors where HDs never stopped thrashing, while computers such as the Amiga ran effortlessly. Things have progressed (somewhat) since those days, but I'm not sure to what degree.

Okay, you're right and I'm wrong. Go ahead and do as you wish.

Link to comment
Share on other sites

Like the XP myth guy / site explains, it won't hurt... (he has 3GB of RAM)
Amazing how people pull what they want to hear..

So it "won't hurt" -- Yeah what an awesome tweak, lets spread that everywhere!!

"If you have more than enough RAM for your workload"

So your SURE that 3GB is enough for his or anyone elses workload? At any given point in time? :rolleyes:

"What this setting does is to prevent drivers and kernel code from being written to the pagefile. Now, think this through logically. If you?re running so many programs that you exceed the amount of physical memory in your system and you start up a new program or process, the operating system has to move some program code and data out of memory and into the pagefile to make room for the bits you just requested. You could let the OS make intelligent choices about which bits to swap. Or you could constrain it by saying, ?Don?t ever swap this type of code out.? If you enable this tweak, you limit the flexibility of the OS and force it to throw something else out, which in this case is one of the other programs you?re running. That increases the delay you?ll encounter when you switch back to the other app."

"This setting is provided for use in servers, where administrators run a limited and well-known set of applications and need to debug or tune for performance in a controlled eUsing it in a workstation is asking for trouble trouble."

Here is common sense you can apply to MOST all of these so called "tweaks" out there.

"If this setting really made a difference in performance, don?t you think it would be enabled already"

Link to comment
Share on other sites

Do you really think we know better than the programmers at Microsoft who designed the system?

Yes, after seeing this crap they produced. XP seems to have very bad memory management and multitasking capabilities (based on personal experiences, of course a lot of people agree with that).

When will the FUD die???

http://home.comcast.net/~SupportCD/XPMyths.html

Check out

DisablePagingExecutive

Myth - "Setting DisablePagingExecutive to 1 improves performance by preventing the kernel from paging to disk."

Reality -

http://technet.microsoft.com/en-us/library/cc757875.aspx

DisablePagingExecutive

Setting this value to 1 is useful when debugging drivers, because all of the code and data is always memory resident. It also improves performance on machines with a lot of memory, because it prevents disk reads to get code or data.

Is M$ wrong?

"If this setting really made a difference in performance, don’t you think it would be enabled already"

If showing file-extensions would make sense, don't you think they would be enabled already? Hey, I could do a lot of these about Windows.

Edit: BTW that XP myths page is just random quotes from here and there, it isn't the truth so I wouldn't quote it like it is.

Link to comment
Share on other sites

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.