Click or drag to resize

mcMemoryManagerInfo Enumeration

Allowed values for the McResourceManager.MemoryManagerInfo property's InfoToGet parameter.

Namespace:  MediaCy.IQL.Engine
Assembly:  MediaCy.IQL.Engine (in MediaCy.IQL.Engine.dll) Version: 10.0.6912.0
Syntax
VB
Public Enumeration mcMemoryManagerInfo
Members
  Member nameValueDescription
mcmmiNone0No information is returned
mcmmiTotalVirtual1Total virtual memory in MB. This is the100% value for McResourceManager mcmtVirtualMemory percentage values.
mcmmiTotalPhysical2Total physical memory in MB.
mcmmiUsablePhysical3"Usable" physical memory in MB. This isthe 100% value for McResourceManager mcmtImageMemory and mcmtPhysicalMemory percentage values. Under favorable conditions, it is min(mcmmiTotalPhysical,mcmmiTotalVirtual) minus a fixed reserve; the size of the reserve depends on the total amount of physical memory available. This computed value is mcmmiUsablePhysicalMax. If the amount of available physical memory (mcmmiAvailPhysical) at memory manager initialization is less than mcmmiUsablePhysicalMax, then mcmmiUsablePhysical is set to the amount of available physical memory at that time. (see also mcmmiUsablePhysicalDynamic)
mcmmiAvailPhysical4Immediately available physical memoryin MB; that is, physical memory that can be committed without needing to access the operating system's paging file. This is the same value that is exposed by McResourceManager.MemoryFree(mcmtPhysicalMemoryMBytes).
mcmmiAllImageData5Total MB that would be occupied byall frames managed by the system if they were all in memory at once. Note that this includes opened Large Image files, which are never fully loaded into memory. This value is the sum of the mcmmiLargeImageData and mcmmiNormalImageData values.
mcmmiLargeImageData6Total MB that would be occupied byframes opened at full resolution from Large Image files; these frames are never fully loaded into memory.
mcmmiNormalImageData7Total MB that would be occupied byall normal sized frames managed by the system if they were all in memory at once. Normal sized image frames may at times be fully loaded into memory.
mcmmiManagerTracked8Total MB that the image memorymanager is tracking. This includes not only image memory that is allocated and freed by the manager (see mcmmiManagerOwned and mcmmiManagerMalloced), but also image memory that is owned by the image creator (see mcmmiExternallyOwned). It includes all frame data from normal-sized frames (see mcmmiNormalImageData) plus any image data cast to a different type during the lifetime of a McRegionAccess that holds such a cast. But it only includes the portions of Large Image files (see mcmmiLargeImageData) that are currently in memory (see mcmmiLargeImageCached).
mcmmiManagerOwned9Total tracked MB that isallocated and freed by the manager using virtual allocations. This memory is potentially freeable, either by swapping it to a temporary file or by discarding it if it is backed by data in some image file. This value will include the portions of any Large Image frames that are currently in memory (see mcmmiLargeImageCached), but will not include the portions of those frames that are not. By contrast, this value does include all normal-sized frame memory (see mcmmiNormalImageData) plus any type-casts of it, even if it is not currently in memory.
mcmmiManagerMalloced10Total tracked MB that is allocatedand freed by the manager using malloc. These are small allocations are made for efficiency purposes for images that will occupy very small amounts of meory for all of their frames (less that 16KB). This memory is freed only when the image is closed and fully released.
mcmmiExternallyOwned11Total tracked MB that is allocatedand freed by the caller who created the image frame(s). This memory must be freed by the caller after the image is closed and fully released.
mcmmiLargeImageCached12Total tracked MB that is holding theportions of any Large Image frames that are currently in memory. This memory is discardable if managed memory resources get tight, since it can always be reloaded from the open Large Image file. Note that portions of Large Image frames that are loaded into memory may overlap and/or be sub-sampled to less than full resolution; as a result, subtracting this value from the mcmmiLargeImageData value tells you little or nothing about how much of the Large Image frame is loaded into memory.
mcmmiOnDemandCached13Total tracked MB that is holding theportions currently in memory of normal-sized frames that are available in the original image file and that have not been written to (see mcmmiDirtyPhysical). This memory is discardable if managed memory resources get tight, since it can be reloaded from the original image file. This value is the difference between mcmmiGoodInOnDemandFile and mcmmiAvailableInOnDemandFile.
mcmmiSwapFileCached14Total tracked MB that is holdingthe portions currently in memory of normal-sized frames that are available in in a temporary swap file and that have not been written to (see mcmmiDirtyPhysical). This memory is discardable if managed memory resources get tight, since it can be reloaded from a temporary swap file. This value is the difference between mcmmiGoodInSwapFile and mcmmiAvailableInSwapFile.
mcmmiTotalImageCached15Total tracked MB that isdiscardable if managed memory resources get tight; this is the memory that can be reloaded from the original image file or a temporary swap file. This value is the sum of the mcmmiLargeImageCached, mcmmiOnDemandCached and mcmmiSwapFileCached values.
mcmmiDirtyPhysical16Total MB of allocated (i.e.,committed) physical memory that will need to be written to a temporary swap file before its space can be freed for other purposes.
mcmmiVirtualAllocated17Total MB of allocated logical memory.If this value approaches McResourceManager.MemoryMax(mcmtVirtualMemoryMBytes), as it often will in 32-bit operating systems, then memory is freed by discarding or swapping to temporary files to free up space.
mcmmiPhysicalAllocated18Total MB of allocated (i.e.,committed) managed image physical memory. If this value approaches McResourceManager.MemoryMax(mcmtImageMemoryMBytes), then memory is freed by discarding or swapping to temporary files to free up space. The difference between this value and mcmmiTotalImageCached is the amount of physical memory that would need to be placed in temporary swap files in order to completely free the space it occupies (see also mcmmiDirtyPhysical).
mcmmiGoodInOnDemandFile19Total MB of memory in normal-sizedframes that has not been written to and is available from the original image file. The portions of this data that are not already in memory (see mcmmiOnDemandCached) will be loaded into memory as needed from the original file. Note that this value does not include data in Large Image files, because all of that data (see mcmmiLargeImageData) is good (those images being read-only).
mcmmiGoodInSwapFile20Total MB of memory that has beenwritten out to a temporary swap file and is still valid (that is, has not been subsequently reloaded and then written to). The portions of this data that are not already in memory (see mcmmiSwapFileCached) will be loaded into memory as needed from the swap file.
mcmmiAvailableInOnDemandFile21Total MB of memory in normal-sizedframes that is not in memory, has not been written to and is available from the original image file. This data will be loaded into memory as needed from the original file. Note that this value does not include data in Large Image files, because all of that data (see mcmmiLargeImageData) is good (these images being read-only), and there is no simple relationship between portions of the large frames already in memory and portions that will need to be read from the image file (see discussion with mcmmiLargeImageCached)
mcmmiAvailableInSwapFile22Total MB of memory that has beenwritten out to a temporary swap file and is still valid (that is, has not been subsequently reloaded and then written to) and has not been subsequently reloaded into memory. Accesses to this data will require a disk access.
mcmmiSwapDiskSpace23Total MB of disk space in thecurrent McResourceManager.MemorySwapPath that is occupied by temporary memory manager swap files. This value may be substantially greater than the mcmmiGoodInSwapFile value, because swap files are allocated for all frames in an image. So if only the first and last frame of an image needs to be swapped out space for the entire file must be allocated on the disk. If an assignment is made that changes McResourceManager.MemorySwapPath, then this value is reset to zero, even though swap files written to the old path still exist and can be accessed as necessary.
mcmmiCumulativeWrittenToSwapFile24Total MB of managed imagememory that has been written out to any temporary swap file since the start of the application. This value does not include any memory written by the operating system to its virtual memory pagefile.
mcmmiCumulativeDiscarded25Total MB of cached, managed imagememory (see mcmmiTotalImageCached) that has been discarded since the start of the application.
mcmmiWorkingSet26The application's memory "WorkingSet" in MB. The working set of a process is the set of committed pages in the virtual address space of the process that are currently resident in physical memory. See mcmmiPeakWorkingSet for the peak working set and mcmmiPhysicalPagedOut for paged out committed memory.
mcmmiPeakWorkingSet27The peak value since it startedof the application's memory "Working Set" in MB. See mcmmiWorkingSet for the current working set and mcmmiPhysicalPagedOutPeak for peak paged out committed memory.
mcmmiProcessPageFaults28The current cumulative number ofoperating system memory page faults caused by the application since it was started. This count includes both "soft" and "hard" page faults, so it is more a measure of general memory intensive activity rather than operator swapping to the pagefile.
mcmmiPhysicalPagedOut29The current amount of theapplication's committed virtual memory which is in excess of the working set. If this value is positive, it will be an estimate of the amount of the application's committed memory which has been written out to the page file. This is the Commit Charge minus the Working Set (mcmmiWorkingSet), in MB.
mcmmiPhysicalPagedOutPeak30The peak excess committed memoryover the peak working set. If this value is positive, it will be an estimate of the peak amount of the application's committed virtual memory which was spooled out to the page file. This is the peak Commit Charge minus the peak Working Set (mcmmiPeakWorkingSet) in MB. It is only an underestimate of the peak amount of application memory which the operating system paged out; that is, application memory may be spooled out to the pagefile due to memory demands from other processes (see mcmmiExternalPhysicalUsed).
mcmmiReservedPhysical31The current total physicalmemory reserved via calls to McResourceManager.ReserveMemory(mcmtPhysicalMemory). Normally, immediately after a successful ReserveMemory(mcmtPhysicalMemory) the user will call memory allocation routines to actually commit the physical memory that was reserved.
mcmmiExternalPhysicalUsed32The amount of physical memory inMB that is used by processes other than the application. This value is computed as (mcmmiTotalPhysical - mcmmiAvailPhysical - mcmmiWorkingSet).
mcmmiExternalPhysicalUsedDelta33Change in the amount of physicalmemory in MB that is used by processes other than the application (mcmmiExternalAllocated) since the memory manager was initialized. This value may be positive or negative and is an indication of changes in physical memory consumption that are out of the control of the application.
mcmmiUsablePhysicalMax34Maximum allowed "Usable" physicalmemory in MB. It is min(mcmmiTotalPhysical,mcmmiTotalVirtual) minus a fixed reserve; the size of the reserve depends on the total amount of physical memory available. Underfavorable condition, mcmmiUsablePhysical will be set to this value.
mcmmiUsablePhysicalDynamic35"Usable" physical memory in MB,dynamically adjusted for mcmmiExternalPhysicalUsedDelta. At memory manager initialization, mcmmiUsablePhysicalDynamic is equal to mcmmiUsablePhysical, which will be less than mcmmiUsablePhysicalMax if external programs are consuming substantial physical memory at that time. As processing progresses, other applications may allocate or deallocate physical memory which can impact the memory resources available for this application (see mcmmiExternalPhysicalUsedDelta). The mcmmiUsablePhysicalDynamic responds to these changes in external memory usage by varying up to mcmmiUsablePhysicalMax. The mcmmiUsablePhysicalDynamic is used to adjust the maximum allowed reservable physical memory; see the McResourceManager.MemoryMax(mcmtPhysicalMemory) property and the ReserveMemory method. Whenever the McResourceManager.MemoryMax(mcmtImageMemory) property is assigned, the usable physical memory level (mcmmiUsablePhysical) is reset to this level.
mcmmiUnmanagedPhysicalUsed36This is an estimate of how muchof the application's physical memory consumption (mcmmiWorkingSet) is used outside of the managed image memory and the physical memory reserved by a call to McResourceManage.ReserveMemory(mcmtPhysicalMemory) and then allocated. It is computed as (mcmmiWorkingSet - mcmmiPhysicalAllocated - mcmmiReservedPhysical), and will only be meaningful if physical memory that is successfully reserved by a call to McResourceManager.ReserveMemory(mcmtPhysicalMemory) is subsequently actually allocated before accessing this property value.
mcmmiCriticalSectionNestingDepth37Depth of nesting with the memorymanager critical sections. For internal use only.
See Also