Virtual Memory Settings In MSP 8

Post Reply
kjcmjc

Virtual Memory Settings In MSP 8

Post by kjcmjc »

I have two HD's on my system a 80gb IDE system drive, and a 300gb SATA video drive. I have installed all of my programs to the C drive (80gb) and partitioned my 300 gb drive into 3. I have 2 gigs of memory installed.

My question is, I have my page file set to double my physical ram on the C drive. What about the other drive with the three partitiones? Do I set up a page file for each one? Or leave them with no page file? I capture all of my DV video clips to one partition, Render on another, and save all of my photos etc on the third. This computer is only for MSP 8 projects. Thanks

Win XP Pro SP 2
Opteron 170
Asrock Dual 939 MB
2 GB Ram
Matrox P 750 VC
Turtle Beach SC
MSP 8 with Hot Fix
Devil
Posts: 3032
Joined: Fri Mar 18, 2005 8:06 am
Location: Cyprus

Post by Devil »

I'm assuming your machine is dedicated for video. I suggest you have your second drive with 2 partitions. The first partition could be, say, 5 Gb, in which you put your 4 Gb of virtual memory, but set it for 4 Gb min and 4 Gb max. Remove all virtual memory from the C: drive. The second partition on the second drive should be reserved for your video work.

If you don't reboot often (say, daily), you will have to defrag your VM partition from time to time. You cannot do this with the MS apology of a defragger but some commercial defraggers allow it.

I suggest you do a full reformat of your video drive before starting a new project.
[b][i][color=red]Devil[/color][/i][/b]

[size=84]P4 Core 2 Duo 2.6 GHz/Elite NVidia NF650iSLIT-A/2 Gb dual channel FSB 1333 MHz/Gainward NVidia 7300/2 x 80 Gb, 1 x 300 Gb, 1 x 200 Gb/DVCAM DRV-1000P drive/ Pan NV-DX1&-DX100/MSP8/WS2/PI11/C3D etc.[/size]
Helge
Posts: 177
Joined: Thu Jan 05, 2006 12:53 pm
Location: Germany

Post by Helge »

1) MSP8 does not need much virtual memory if you have 2 GB ram. This is because the programm itself fits well into the memory and the data is mostly directly read from and writen to the files. So only for calculations during rendering is additional memory required for the actual handled frame. (I have 2.5 GB ram and when I inspected with task manager or process explorer I saw that most of it was unused.) This holds of course with the assumption that you dont run much other programms in parallel.

2) Distributing virtual memory between physical drives can sometimes improve performance, since windows is clever enough to swap to an other drive if the first one is busy. Distributing it between logical drives (partions) wont help, because if a drive is busy with one partition, it is busy with all. (With the exception if you have a disk where the heads can move independently.)

3) Its best to connect the disks to different controllers, especially not one be master and one slave on the same cable, because at one time there can be only one signal on the cable. (Also it is theoretically possible for two scsi disks on the same cable to exchange data without interference of the cpu, I am sure that windows does not use this feature.)

4) Partioning a volume is only helpful for management tasks like backup and defragmenting by reformating as Devil suggested.

5) I allways use two different physical disks for video: one for input and one for output. So input and output can be streamed with as little movements of the heads of the disks as possible. So e.g. capture to drive E and render to drive D, create dvd on drive E.
Devil
Posts: 3032
Joined: Fri Mar 18, 2005 8:06 am
Location: Cyprus

Post by Devil »

Helge,

Don't ask me why, but both Windows and Linux always suggest that your swap files should be at least twice the physical RAM. I agree that virtual memory is rarely used when you have a large memory and it does seem contradictory to increase your swap file as you increase your RAM.

Occasionally, for no apparent reason, the 'puter seems to pause with some HDD usage. This usually occurs when you are doing nothing, so it is not even noticed. I speculate that Windows uploads the RAM to HDD and then downloads it again as a means of reducing memory leakage and "defragging" the RAM. Certainly, if you try to do something when it happens, it just ignores your commands for a couple of seconds. If this is the case, then I can understand the 2 x RAM recommendation. However, as I say, this is speculation.
[b][i][color=red]Devil[/color][/i][/b]

[size=84]P4 Core 2 Duo 2.6 GHz/Elite NVidia NF650iSLIT-A/2 Gb dual channel FSB 1333 MHz/Gainward NVidia 7300/2 x 80 Gb, 1 x 300 Gb, 1 x 200 Gb/DVCAM DRV-1000P drive/ Pan NV-DX1&-DX100/MSP8/WS2/PI11/C3D etc.[/size]
Helge
Posts: 177
Joined: Thu Jan 05, 2006 12:53 pm
Location: Germany

Post by Helge »

Hey Devil,
I know this recommentation. It is a good estimation what seems to be useful for smaler memory sizes. But I think I had also sometimes read a statement from MS that this is not necessary for larger memory sizes.

Why usually double? The explanation is the following: You might think that your available memory is the sum of the physical ram and the swap space. Unfortunatly that is not true. To avoid system instability (deadlocks) the memory manager (a part of the os) needs for every memory it commits to a process the same amount as swapspace. Newer systems have usually improved algorithms to acount for the nowerdays large physical available ram and to allow diskless workstations (which get every data from a server over the net). But it still makes sense (if you ever need to swap) to have at leased the same amount of space available as swapspace. An other reason is because in the case of a system fault, the system writes first the whole memory content to the swapfile from which later the coredump is generated. But why not more than double? Oh, you can make it as large, as you like. But if you really need so much virtual memory for your daily work, you will feel uncomfortable with much swapping. So the value double comes simple from the experiance that with this the performance is still acceptable.

There is no memory defragmentation and there is no need for !!!
This is because the memory management of modern computers is done with paging, what means that the memory is divided into pages of 4096 (on intel PCs) bytes size, which can be freely aranged by the mmu (= memory management unit). All the tools which promise memory defragmentation are simply fraud. IF you are interested in the details you can find it e.g. in the book "inside microsoft windows 2000".


It is true, that windows will prophylacticly swap pages out if it is idle to save time in case it needs memory, but it will not read them in again, as long as they are still available. The delay you noticed is probably due to some other effects:
I am quite sure that you have no virus scanner activ, so it is eighter the system restore mechanism (disable it for your video disk in control panel system), the automatic defragmentation (which however as far as I noticed terminates allways very quickly if there is any activity) or - most likely- the windows indexing service. Just recently I somewhere read that some modules of this service block files entirely. This is a known bug of windows. So disable this service or disallow at leased the indexing of your video disk (you will rarely search for keywords in video files :) )(context menu on the drive icon in explorer). If none of this work you could try to find the guilty with the tool filemon from www.sysinternals.com. If you do this and you have MSP8 running, you will notice something which disapointed me about ulead: MSP8 is polling some ini-files about 20 times a second while idle - bad programming practice :(
Helge
Posts: 177
Joined: Thu Jan 05, 2006 12:53 pm
Location: Germany

Post by Helge »

In the article How to determine the appropriate page file size for 64-bit versions of Windows Server 2003 or Windows XP ( http://support.microsoft.com/kb/889654 ) MS writes:

The 64-bit versions of Microsoft Windows Server 2003 and Microsoft Windows XP can support more RAM than the 32-bit versions of these products. When lots of memory is added to a computer, a paging file may not be required.
...
When you set up a 64-bit version of Microsoft Windows Server 2003 or Microsoft Windows XP, the operating system will create a page file that is one and a half times the amount of RAM that is installed in your computer. However, as the amount of RAM in a computer increases, the need for a page file decreases.

Even this article is especially for 64-bit windows, similar considerations could be made for 32-bit windows.
Post Reply