|
|
| odysseus |
| Posted: Dec 19 2002, 09:10 AM |
 |
|
Unregistered

|
in Win2k and NT I have a machine with 1gig of ram but the F@#$^%@#%ING OS is constantly swapping.
Even when I set the priority of virtualdub to realtime and close all other applications I'm still showing 500 MEG of memory free !!! , 400 page faults per second (300 minimum, 5000 max) and oodles of swap space usage.
With video capture I can understand this kind of thing, but with disk-to-disk transcoding it makes no sense.
Is this normal (I've searched usenet and lots of people were complaining about this behavior a while ago with no resolution) .
Is there some option for virtualdub that could force NT/2k/XP to keep as much memory as possible devoted to virtualdub?
Would it be worthwhile trying to operate with a very small swap file? I was warned against doing this by the NT admins at work.
Am I wrong in thinking that if my RAM gets used and page faults per second go to near-zero I'll get a large speed increase? I mean there is just NO REASON to swap with 500 meg of RAM just sitting there. |
 |
| pf100 |
| Posted: Feb 2 2003, 04:06 AM |
 |
|
Unregistered

|
This stopped all of my disk swapping problems with windows 2000
http://www.oosoft.de/cgi-bin/download/download-e.pl |
 |
| pf100 |
| Posted: Feb 2 2003, 04:09 AM |
 |
|
Unregistered

|
Whoops. Click on the Clevercache link on this page
http://www.oosoft.de/cgi-bin/download/download-e.pl |
 |
| phaeron |
| Posted: Feb 2 2003, 05:37 AM |
 |
|

Virtualdub Developer
  
Group: Administrator
Posts: 7773
Member No.: 61
Joined: 30-July 02

|
Cache control applications may not help -- VirtualDub deliberately bypasses the disk cache to avoid thrashing (unbuffered I/O). You will see a bunch of page faults when a processing operation starts as VirtualDub enlarges its pipeline buffers to hold incoming frames. What you should probably look for is a memory leak -- memory usage only shows the working set of a process, and in NT Task Manager you want to enable the "VM Size" column. This shows the actual amount of memory committed to a process. Any video filter, codec, or driver operating in VirtualDub's process, or VirtualDub itself, could be contributing to the leak.
Note that page faults are not necessarily indicative of swapping. They can also occur as the result of memory allocation, memory mapped disk I/O, or exploratory faulting by the working set manager. Page faults do eat a bit of CPU, but a "soft fault" is not nearly as expensive has a hard fault that hits disk. |
 |
| pf100 |
| Posted: Feb 3 2003, 04:43 AM |
 |
|
Unregistered

|
This CleverCache program has a reclaim memory option that I haven't enabled. Would enabling it, or using any memory reclaming program, be a workaround for a memory leak? I've been ripping lots of stuff with virtualdub since I posted last, and my computer does do some swapping out still after I'm done ripping, but it eventually speeds back up again now whereas it didn't before installing this program. And btw, I promise I don't have any affiliation with the company that makes this program. |
 |
| phaeron |
| Posted: Feb 3 2003, 05:46 AM |
 |
|

Virtualdub Developer
  
Group: Administrator
Posts: 7773
Member No.: 61
Joined: 30-July 02

|
No. The operating system can tell when a page of memory has gone unused and can swap it out to disk, which keeps the system running fairly smoothly in case of a slow leak. The result is a really large VM Size compared to Memory Usage in Task Manager. It cannot, however, tell that there is a leak or know that page won't ever be hit again, so it can't reclaim the page for other uses. Leaked memory can only be reclaimed when the program exits.
What can recover "leaked" memory is a garbage collector, as such as used by Java -- but that requires language and application support. |
 |
| pf100 |
| Posted: Feb 3 2003, 07:35 PM |
 |
|
Unregistered

|
Ah, I see phaeron. Your explanation helped me understand what the os does in case of a memory leak. Thanks |
 |