Author: Scott Gasch
Date: 23:38:56 01/16/03
Go up one level in this thread
On January 17, 2003 at 01:02:26, Robert Hyatt wrote: >On January 16, 2003 at 16:36:27, Scott Gasch wrote: > >>>According to perfmon, in the first second or so, there are some page faults, but >>>as soon as everything is "up and running", it stays flat on zero. So I guess >>>that's not the problem. I/O read bytes is maxed to 100, scale 1,000. I didn't >>>try the others. What is "working set"? >>> >> >>Working set is the number of bytes that the memory manager keeps resident in >>memory. Private bytes is the total number of private bytes allocated to your >>process. If memory is tight the working set gets trimmed and pages get swapped >>out. > > >If a perfmon uses that term it is misused badly. > >Working set is the number of pages a process needs at any instant in time so >that it doesn't page unnecessarily. > >Resident set is the set of pages that are actually in memory at any instant >in time. > >The goal of the memory manager is to make the resident set size (which it can >control) equal to the working set size (which it can't control). Or, for Unix, >to make the RS _slightly_ smaller than the WS so that the application pages >very slightly, which is an indication that the RS is not too big which would >waste memory. > >But someone is corrupting the terminology it seems... That or I simply don't know what I'm talking about. Actually the people writing documentation at MS don't seem to have a consistent definition of Working Set either: From SetProcessWorkingSetSize (in MSDN): The working set of a process is the set of memory pages currently visible to the process in physical RAM memory. These pages are resident and available for an application to use without triggering a page fault. The size of the working set of a process is specified in bytes. The minimum and maximum working set sizes affect the virtual memory paging behavior of a process. From About Working Set (in Perfmon.exe): Working Set is the current size, in bytes, of the Working Set of this process. The Working Set is the set of memory pages touched recently by the threads in the process. If free memory in the computer is above a threshold, pages are left in the Working Set of a process even if they are not in use. When free memory falls below a threshold, pages are trimmed from Working Sets. If they are needed they will then be soft-faulted back into the Working Set before leaving main memory. Scott
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.