RTX64 MSpaces

Use RTX64 MSpaces to view local memory allocation spaces (MSpaces) of all RTSS processes (optionally including internal system processes and proxy processes). For each process’s MSpaces, this utility displays summary and fragmentation information within the entire MSpace, or separately within Local Pool and Pool Cache of the MSpace. For more information, see Allocation Spaces in Local Memory. The memory ranges can be sorted in ascending order by range start address.

To view RTSS process MSPACE information:

Type the following in a command prompt from %INSTALL DIR%\IntervalZero\RTX64\bin:

rtssrun RTX64MSpaces.rtss [/all] [/m] [/p] [/sort] [/help]

Parameters

none

Displays MSpace summary information for all RTSS processes.

/a or /all

Displays MSpace summary information for all RTSS processes, including internal system processes and proxy processes.

/m

Displays MSpace summary information and memory fragmentations within the MSpace.

/p

Displays MSpace summary information and memory fragmentations separated into the Local Pool and Pool Cache.

/s or /sort

Displays fragmentations sorted in ascending order by range start address (used in conjunction with /m or /p).

NOTE: It may take several minutes for sorting results to display, depending on the number of fragmentations.

Results

Result Meaning
MSpace minimum threshold The minimum size of the MSpace (bytes).
Commit memory at startup Allocating Non-Paged memory from Windows into the Local Pool of MSpace at process startup, when a process is started with RtssRun and the /i initial_size option.
Auto expand size The minimum MSpace expand size (bytes).
Auto expand MSpace Automatically expand the MSpace when depleted.
Auto shrink MSpace Automatically shrink the MSpace when the component allocating memory trims its Pool Cache or when freeing memory allocated directly from the Local Pool.
MSpace peak usage

The statistical maximum memory size within the MSpace. This value will be greater than the current usage if trimming has occurred (bytes).

NOTE: This can be used to determine the optimal MSpace size at which Auto expand can be disabled.

Current usage The current memory size within the MSpace (bytes).
OS memory obtained The Windows Non-Paged memory allocated to the MSpace (bytes).
Total memory in MSpace The total memory (used and free) within the MSpace (bytes).
Free MSpace The amount of free memory available to the user within the MSpace (bytes).
Used MSpace The amount of used memory within the MSpace (bytes).
Largest free block The maximum virtually contiguous free memory within the MSpace (bytes).
Free local pool The amount of free memory within the Local Pool (bytes).
Used local pool The amount of used memory within the Local Pool (bytes).
Free pool cache The amount of free memory within the Pool Cache (bytes).
Used pool cache The amount of used memory within the Pool Cache (bytes).
Pool cache free blocks The number of free blocks within the Pool Cache.
Top free block size The size of the free block within the Pool Cache, from which the next memory allocation will be allocated if the block size is larger than the request size (bytes).
Start address The starting address of a memory range.
End address The next address above a memory range. This address does not belong to the range.

Fragmentation Information Type

Result Meaning
OS block The range is Windows Non-Paged memory allocated to the MSpace.
Free (Local Pool) The range is free memory within the Local Pool.
Free (Pool Cache) The range is free memory within the Pool Cache.
Free (Pool Cache top) The range is the top free block within the Pool Cache, from which the next memory allocation will be allocated if the block size is larger than the request size (bytes).
Used The range is used memory.
Chunk page The range is a page of chunks used by the Local Pool (bytes).

Local Pool Fragmentation Information Type

Result Meaning
OS block The range is Windows Non-Paged memory allocated to the Local Pool.
Free The range is free memory within the Local Pool.
Used (Pool Cache) The range is the used memory allocated to the Pool Cache.
Used (Application) The range is the used memory allocated directly by the application.
Chunk page The range is a page of chunks used by the Local Pool (bytes).

Pool Cache Fragmentation Information Type

Result Meaning
Free The range is free memory within the Pool Cache.
Free (at top) The range is the top free block within the Pool Cache, from which the next memory allocation will be allocated if the block size is larger than the request size (bytes).
Used The range is used memory within the Pool Cache.

Example Output

The output below was generated using the following command:

Rtssrun RTX64MSpaces /m /sort

========== RTX64MSpaces – 4.5.0 =========

Process (0x000003e9)       0xffffa38c400e0010    App1.rtss
=== External MSpace Summary Information ===
MSpace minimum threshold:  0x00000000ffffe000    Commit memory at startup: True
Auto expand size:          0x00000000ffffe000    Auto expand MSpace:       True
Auto shrink MSpace:        True
MSpace peak usage:         0x00000000fde90000    Current usage:            0x0000000000210000
OS memory obtained:        0x00000001007feff8    Total memory in MSpace:   0x00000000ffffdfc0
Free MSpace:               0x00000000ffff9d80    Used MSpace:              0x0000000000004240
Largest free block:        0x00000000e6bc9000
Free local pool:           0x00000000ffdedba0    Used local pool:          0x0000000000210420
Free pool cache:           0x000000000020c1e0    Used pool cache:          0x0000000000003e00
Pool cache free blocks:    0x0000000000000003    Top free block size:      0x00000000001fffb0
--- Fragmentation Information ---
Start address         End address           Size (bytes)  Type
0xffffa38a37001000    0xffffa38b36fff000    0xffffe000    OS block
0xffffa38a37001000    0xffffa38b1dbca000    0xe6bc9000    Free (Local Pool)
0xffffa38b1dbca000    0xffffa38b1ddca000    0x00200000    Free (Pool Cache top)
0xffffa38b1ddca000    0xffffa38b36fee000    0x19224000    Free (Local Pool)
0xffffa38b36fee000    0xffffa38b36fef000    0x00001000    Chunk Page (free: 0xba0, used: 0x420)
0xffffa38b36fef000    0xffffa38b36fef3e0    0x000003e0    Used
0xffffa38b36fef3e0    0xffffa38b36ff03f0    0x00001010    Used
0xffffa38b36ff03f0    0xffffa38b36ff0410    0x00000020    Used
0xffffa38b36ff0410    0xffffa38b36ff0520    0x00000110    Used
0xffffa38b36ff0520    0xffffa38b36ff0560    0x00000040    Used
0xffffa38b36ff0560    0xffffa38b36ff0d70    0x00000810    Used
0xffffa38b36ff0d70    0xffffa38b36ff0d90    0x00000020    Free (Pool Cache)
0xffffa38b36ff0d90    0xffffa38b36ff0db0    0x00000020    Used
0xffffa38b36ff0db0    0xffffa38b36ff0dd0    0x00000020    Used
0xffffa38b36ff0dd0    0xffffa38b36ff1de0    0x00001010    Used
0xffffa38b36ff1de0    0xffffa38b36ff2df0    0x00001010    Used
0xffffa38b36ff2df0    0xffffa38b36ffefb0    0x0000c1c0    Free (Pool Cache)
0xffffa38b36ffefb0    0xffffa38b36ffefe0    0x00000030    Used
=== Internal MSpace Summary Information ===
MSpace minimum threshold:  0x0000000000100000    Commit memory at startup: False
Auto expand size:          0x00000000ffffe000    Auto expand MSpace:       True
Auto shrink MSpace:        True
MSpace peak usage:         0x0000000000010000    Current usage:            0x0000000000010000
OS memory obtained:        0x0000000000101000    Total memory in MSpace:   0x00000000000fffc0
Free MSpace:               0x00000000000f7830    Used MSpace:              0x0000000000008790
Largest free block:        0x00000000000ef000
Free local pool:           0x00000000000effa0    Used local pool:          0x0000000000010020
Free pool cache:           0x0000000000007890    Used pool cache:          0x0000000000008770
Pool cache free blocks:    0x0000000000000001    Top free block size:      0x0000000000007840
--- Fragmentations Information ---
Start address         End address           Size (bytes)  Type
0xffffa38c40231000    0xffffa38c40331000    0x00100000    OS block
0xffffa38c40231000    0xffffa38c40320000    0x000ef000    Free (Local Pool)
0xffffa38c40320000    0xffffa38c40321000    0x00001000    Chunk Page (free: 0xfa0, used: 0x20)
0xffffa38c40321000    0xffffa38c40321020    0x00000020    Used
0xffffa38c40321020    0xffffa38c40321040    0x00000020    Used
0xffffa38c40321040    0xffffa38c40321060    0x00000020    Used
0xffffa38c40321060    0xffffa38c40321080    0x00000020    Used
0xffffa38c40321080    0xffffa38c40321100    0x00000080    Used
0xffffa38c40321100    0xffffa38c40321150    0x00000050    Used
0xffffa38c40321150    0xffffa38c40329160    0x00008010    Used
0xffffa38c40329160    0xffffa38c40329490    0x00000330    Used
0xffffa38c40329490    0xffffa38c40329560    0x000000d0    Used
0xffffa38c40329560    0xffffa38c40329770    0x00000210    Used
0xffffa38c40329770    0xffffa38c40331000    0x00007890    Free (Pool Cache top)

Process (0x000003eb)       0xffffa38c40080010    App2.rtss
=== External MSpace Summary Information ===
MSpace minimum threshold:  0x0000000000100000    Commit memory at startup: False
Auto expand size:          0x0000000000100000    Auto expand MSpace:       True
Auto shrink MSpace:        True
MSpace peak usage:         0x00000000fde90000    Current usage:            0x0000000000100000
OS memory obtained:        0x0000000000303000    Total memory in MSpace:   0x00000000002fff80
Free MSpace:               0x00000000002fc050    Used MSpace:              0x0000000000003f30
Largest free block:        0x00000000000f6000
Free local pool:           0x00000000001ffec0    Used local pool:          0x00000000001000c0
Free pool cache:           0x00000000000fc190    Used pool cache:          0x0000000000003e30
Pool cache free blocks:    0x0000000000000004    Top free block size:      0x000000000002ffb0
--- Fragmentation Information ---
Start address         End address           Size (bytes)  Type
0xffffa38c05011000    0xffffa38c05111000    0x00100000    OS block
0xffffa38c05011000    0xffffa38c0501a000    0x00009000    Free (Local Pool)
0xffffa38c0501a000    0xffffa38c0501b000    0x00001000    Chunk Page (free: 0xfa0, used: 0x20)
0xffffa38c0501b000    0xffffa38c05111000    0x000f6000    Free (Local Pool)
0xffffa38c13891000    0xffffa38c13991000    0x00100000    OS block
0xffffa38c13891000    0xffffa38c13961000    0x000d0000    Free (Local Pool)
0xffffa38c13961000    0xffffa38c13991000    0x00030000    Free (Pool Cache top)
0xffffa38c40451000    0xffffa38c40551000    0x00100000    OS block
0xffffa38c40451000    0xffffa38c40480000    0x0002f000    Free (Local Pool)
0xffffa38c40480000    0xffffa38c4053ffb0    0x000bffb0    Free (Pool Cache)
0xffffa38c4053ffb0    0xffffa38c4053ffe0    0x00000030    Used
0xffffa38c40540000    0xffffa38c40541000    0x00001000    Chunk Page (free: 0xf20, used: 0xa0)
0xffffa38c40541000    0xffffa38c405413e0    0x000003e0    Used
0xffffa38c405413e0    0xffffa38c405423f0    0x00001010    Used
0xffffa38c405423f0    0xffffa38c40542410    0x00000020    Used
0xffffa38c40542410    0xffffa38c40542520    0x00000110    Used
0xffffa38c40542520    0xffffa38c40542560    0x00000040    Used
0xffffa38c40542560    0xffffa38c40542d70    0x00000810    Used
0xffffa38c40542d70    0xffffa38c40542d90    0x00000020    Free (Pool Cache)
0xffffa38c40542d90    0xffffa38c40542db0    0x00000020    Used
0xffffa38c40542db0    0xffffa38c40542dd0    0x00000020    Used
0xffffa38c40542dd0    0xffffa38c40543de0    0x00001010    Used
0xffffa38c40543de0    0xffffa38c40544df0    0x00001010    Used
0xffffa38c40544df0    0xffffa38c40550fb0    0x0000c1c0    Free (Pool Cache)
0xffffa38c40550fb0    0xffffa38c40550fe0    0x00000030    Used
=== Internal MSpace Summary Information ===
MSpace minimum threshold:  0x0000000000100000    Commit memory at startup: False
Auto expand size:          0x0000000000100000    Auto expand MSpace:       True
Auto shrink MSpace:        True
MSpace peak usage:         0x0000000000010000    Current usage:            0x0000000000010000
OS memory obtained:        0x0000000000101000    Total memory in MSpace:   0x00000000000fffc0
Free MSpace:               0x00000000000f7830    Used MSpace:              0x0000000000008790
Largest free block:        0x00000000000ef000
Free local pool:           0x00000000000effa0    Used local pool:          0x0000000000010020
Free pool cache:           0x0000000000007890    Used pool cache:          0x0000000000008770
Pool cache free blocks:    0x0000000000000001    Top free block size:      0x0000000000007840
--- Fragmentations Information ---
Start address         End address           Size (bytes)  Type
0xffffa38c40341000    0xffffa38c40441000    0x00100000    OS block
0xffffa38c40341000    0xffffa38c40430000    0x000ef000    Free (Local Pool)
0xffffa38c40430000    0xffffa38c40431000    0x00001000    Chunk Page (free: 0xfa0, used: 0x20)
0xffffa38c40431000    0xffffa38c40431020    0x00000020    Used
0xffffa38c40431020    0xffffa38c40431040    0x00000020    Used
0xffffa38c40431040    0xffffa38c40431060    0x00000020    Used
0xffffa38c40431060    0xffffa38c40431080    0x00000020    Used
0xffffa38c40431080    0xffffa38c40431100    0x00000080    Used
0xffffa38c40431100    0xffffa38c40431150    0x00000050    Used
0xffffa38c40431150    0xffffa38c40439160    0x00008010    Used
0xffffa38c40439160    0xffffa38c40439490    0x00000330    Used
0xffffa38c40439490    0xffffa38c40439560    0x000000d0    Used
0xffffa38c40439560    0xffffa38c40439770    0x00000210    Used
0xffffa38c40439770    0xffffa38c40441000    0x00007890    Free (Pool Cache top)


============== End RTX64MSpaces ==============