Windows is low on Virtual Memory. Huh?!

Always set it myself, and used double the RAM so if 1GB system, I set just over 2GB in the pagefile. If you read up on pagefiles you'll know why it should be at least double.

And the reason it can be fragmented > The data doesn't get fragmented, its when your other info get fragmented on the drive and windows boots up, it takes the first available space and then the next, and then next, and the actual pagefile can be seperated from the start of your disk right to the end in a hypothetical situation. By setting it yourself, it fits the size you specify into the first available space with that size free. Therefore it keeps all the data on the same location on the disk which means faster writes and reads.

I expect that the testing that magazine did was install windows, set to 'yes' and test the speed. I bet they didn't use the PC for a while (months) and watch the performance degenerate with the swap file set to yes. The performance wouldn't suffer if you specified your own size as it's a permanent page file. Setting it to windows manage try's to grab the next free space everytime you boot into windows.

The answer here is to make sure you frequently defragment your harddisk if you have it set dynamically (the yes option). That way it doesn't spread it out to far across the disk.

Matthew
 
TheVoice said:
But that would mean if you had less RAM, your pagefile should be smaller. Doesn't make sense.


Yes that is true. Just because it is bigger doesn't mean it is all going to be used. Plus that's why they have minimum requirements for programmes.
 
TheVoice said:
Not really, because if you only have 256MB of RAM you'll end up with a smaller pagefile than someone with 2GB of RAM. Letting Windows configure the pagefile means it alters in size dynamically, and so will become more fragmented.

With 2GB of RAM, a pagefile of 1536MB works fine for me. 2048MB would also be good, but can't really see the point in going over that. Theoretically, the more RAM you have, the smaller the pagefile you need.
That's not strictly correct.

When an application is loaded, it asks for more RAM that it actually requires - the majority of this will be assigned in virtual mode (i.e. to the swap file).

Windows automatically assigns 150% of the physical memory to the swap file. If there are more requests for memory than the system actually has, XP will automatically extend the swap file (assuming that it is set to either "let windows manage" or if manually specified, it hasn't reached the upper limit). If you have a heavily fragmented volume, as the page file increases in size, the page file itself will also fragment. Depending on the level of fragmentation, this will impact performance.

Setting the page file size on a Windows system (*nix systems memory management works in a different way to Windows) with over 512 MB of memory can take a bit of thought - what is the system being used for? In this instance it is being used for memory hungry applications - so therefore, a larger swap file is needed - bearing in mind that the memory manager is not going to use the swap file for active processes unless it really needs to - it will assign inactive processes to it (for example the email and IM clients you also have running as well as various system processes which are not being used, but cannot be killed)

Morals of the story?

Page file fragmentation will not be an issue if you have a tidy hard disk (2 or 3 fragments really is not an issue)

The size of the page file is completely dependent on the application of the machine and a page file is better to have than not (at the end of the day - what difference does an extra couple of GB on your hard disk make?)
 
The page file is read and written to in a way that is called 'random access'. Basically this means that *any* part of the file could be accessed at any given time.

And given that each page of memory is 4KB, which is usually less than the block size of an NTFS partition - it's pretty obvious to me that page file "fragmentation" is not going to make a blind bit of difference to performance.

bearing in mind that the memory manager is not going to use the swap file for active processes unless it really needs to
Why bear in mind facts that applied to operating systems about 20 years ago? We are talking about modern OSes here, Windows and Linux, which use paging as an integral part of their memory management strategy. It is not something that just gets "turned on" when physical memory gets tight... it is *always on*, whether you have 4GB or RAM or 256MB of RAM.

It doesn't page out entire processes either. It is called the page file because a page of memory is what it deals with. A page is simply a 4KB chunk of data that can reside in physical memory or the page file. It all depends in what context we are talking, a page is the name for a unit of memory originating from the virtual memory address space. A "frame" is a unit of memory originating from the physical memory address pool... So when you allocate some "non-paged pool" memory in a kernel mode driver you are bypassing the virtual memory space and are in fact fetching a free frame directly. Of course this type of allocation is useful in kernel drivers because it has the explicit guarantee that the memory allocation will never raise a page fault so it is useful for DMA buffers and the like.
 
growse said:
Windows will always keep a pagefile, even if you tell it not to. It couldn't function otherwise. You'd probably find that performance increases a little if you add a pagefile.

Does it!? Where!? OO Defrag or disk keeper doesn't show a pagefile area :confused:

I want everything in the memory, far quicker than a HD? :confused:
 
NathanE said:
And given that each page of memory is 4KB, which is usually less than the block size of an NTFS partition - it's pretty obvious to me that page file "fragmentation" is not going to make a blind bit of difference to performance.
Sorry, I don't think I made myself very clear - the page file is difficult to defragment - you need third party tools to do it. If the page file fragments, it makes it harder to effectively defragment the rest of the disk - which will impact performance.

4 KB is actually the default block size for NTFS.

NathanE said:
It is not something that just gets "turned on" when physical memory gets tight... it is *always on*, whether you have 4GB or RAM or 256MB of RAM.

I never suggested otherwise...

NathanE said:
It doesn't page out entire processes either.
Of course it doesn't what would be the point?

My post was written in an attempt to simplify the process as much as possible.
 
Back
Top Bottom