Performance Troubleshooting with Windows Resource Monitor – … In Troubleshooting Performance with Resource Monitor Part 1 we looked at getting with started the Resource Monitoring interface and using the CPU tab to diagnose performance issues.
The Memory tab
The Memory tab is different from others in the sense that it does not have multiple detailed tables. Instead, it has a colour coded bar chart below the key table. To make sense of the data displayed in this tab, we first need to understand the categories of memory it’s referring to.
When an application runs within Windows, it’s allocated a certain amount of memory. This memory is given a logical address space which is a set of memory locations. This logical memory can be made up of two components: physical memory – that’s the actual RAM installed on the machine – and the page file memory. A page file is a physical file sitting on the disk that Windows uses as if it was a part of the RAM. As the physical memory fills up with data and program code (it has only a finite size), Windows swaps data in and out of this disk file to make room for more. Together, these two components – physical memory and the page file – create a virtual memory system. The logical address space that a process is allocated can come from anywhere in this virtual memory: part of it can be the physical RAM and the rest of it can come from the disk file. As far as the application is concerned, it cannot differentiate between the two.
Now within the physical RAM allocated to a process, there may be data pages that it shares with other processes. This is possible and it’s done to save memory space for commonly executed routines. The way it works is that Windows loads only one copy of the memory page containing the data and that memory page is mapped to the virtual address spaces of multiple processes. So each process would virtually be accessing the same location. This is called the shared memory. There will also be locations in the physical memory that is exclusively locked by a process. This is called private memory.
The act of reading/writing data from and to the page file is known as “paging” or “page faults” or “hard faults”. As the memory requirement of an application grows, Windows may not be able to satisfy its demands entirely from the physical RAM, so it will write some of the data to the disk file. When those pieces of information are required, the data will have to be read back from the page file. Since disk activity always takes more time than direct memory access, paging is an expensive operation in terms of system speed. Paging is quite normal in any computer system, but you would want to minimise it to ensure data resides in the physical memory as much as possible.
Armed with this knowledge, let’s look at the columns of the Processes key table of the Memory tab; we need to understand which one could be telling us about a possible memory issue.
Committed (KB): This column shows the total amount of virtual memory (physical RAM plus page file) in kilobytes Windows has allocated for a processWorking Set (KB): This column shows the actual physical memory in KB the process is currently using Shareable (KB): This column shows the amount of physical memory in KB that a process is currently using that can be shared with other processesPrivate (KB): This column shows the actual amount of physical memory in KB currently in use by a process that cannot be shared by any other process. That’s the non-shareable, exclusive physical memory the process is currently using.Hard Faults/sec: This column shows the average number of page faults per second in the last one minuteLooking at this list, you can straightway see the single most valuable information could be coming from the Hard Faults/sec or the Private (KB) column.
The Physical Memory table below the key table shows a colour-coded bar graph. Your eyes may be immediately drawn to the section labelled Free Memory and you may be inclined to draw a conclusion about poor performance due to low available memory. However, this may not be the case though. To understand the sections of the bar graph, let’s go through them one by one.
Hardware Reserved: as the name suggests, the Hardware Reserved section shows the amount of memory Windows has set aside for various hardware devices. This section is shown in gray and is typically very small in proportion. Hardware reserved memory is locked and cannot be shared with any other process.
var idcomments_acct = ’62089e20c30196b091933230f42f0718′;var idcomments_post_id;var idcomments_post_url;
Outstanding source and article