Performance Monitor

Performance Monitor (known as System Monitor in Windows 9x, Windows 2000 and Windows XP) is a system monitoring program introduced in Windows NT 3.1. It monitors various activities on a computer such as CPU or memory usage. This type of application may be used to determine the cause of problems on a local or remote computer by measuring the performance of hardware, software services, and applications. The program can define thresholds for alerts and automatic actions, generate reports, and view past performance data.
In Windows 9x, System Monitor is not installed automatically during Windows setup, but could be installed manually using the Add/Remove Programs applet, located in the Control Panel. It has few counters available and offers little in the way of customization. In contrast, the Windows NT Performance Monitor is available out-of-the-box and has over 350 performance measurement criteria (called "counters") available. Performance Monitor can display information as a graph, a bar chart, or numeric values and can update information using a range of time intervals. The categories of information that can be monitored depends on which networking services are installed, but they always include file system, kernel, and memory manager. Other possible categories include Microsoft Network Client, Microsoft Network Server, and protocol categories.
In Windows 2000, the System Monitor of Windows 9x and the Performance Monitor of Windows NT 4 and earlier, as well as another program called Network Monitor, were merged into a Microsoft Management Console (MMC) plug-in called Performance, which consisted of two parts: "System Monitor" and "Performance Logs and Alerts". The "System Monitor" naming was kept in Windows XP. Some third-party publications referred to it as "Performance Monitor" however, even in Windows 2000 or XP contexts.
The name displayed inside the MMC plug-in was changed back to "Performance Monitor" in Windows Vista, although it was also bundled with a Reliability Monitor and with a new performance summary feature called Resource Overview. In Windows 7, the resource overview feature was split to a stand-alone Resource Monitor application, with the landing page for the Performance Monitor in Windows 7 containing a pointer to the (new) Resource Monitor; Windows 7 also moved the Reliability Monitor to the Action Center. A new feature added to the Performance Monitor in Windows Vista is Data Collector Set, which allows sets of accounting parameters to be easily manipulated as a group. Performance Monitor plots system CPU activity, and offers an ability to add counters as a method of plotting performance different from the ability to view CPU activity within Task Manager. Various integrated counters are available within the program, and the tool also offers the option to import them. The tool allows for selective instances to be monitored when selecting counters, and offers a description of each counter. Additionally, counters can be highlighted if multiple are selected. Also included are various options for monitoring, Chart, Log, and Report options. Chart allows for the monitoring of performance in graph form, and within this the Alert feature can be used to alert for results within set parameters. Report allows for the performance graph to be transitioning into a reporting format with all numbers instead of a graph. The Log option gives the ability to monitor performance and save results to the computer. Through data collector sets and reports, the Performance Monitor provides a mechanism that allows for logging information and events within the system.
The tool can be accessed by typing Performance Monitor into the taskbar, and can also be accessed by using the keyboard shortcut Windows + R, and typing perfmon.
Counters
Various counters are offered within Performance Monitor. Counters provide the ability to track specific performance measures within the system.
Counters and Description
.NET CLR Data .Net CLR Data
.NET CLR Exceptions Runtime statistics on CLR handling.
.NET CLR Interop Stats for CLR Interop
.NET CLR Jit Stats for CLR Jit.
.NET CLR Loading Statistics for CLR Class Loader.
.NET CLR Memory Counters for CLR Garbage Collected heap.
.NET CLR Remoting Stats for CLR Remoting.
.NET CLR Security Stats for CLR Security.
Authorization Manager Applications The set of Counters for Authorization Manager Applications
Browser The Browser performance object consists of counters that measure the rates of announcements, enumerations, and other Browser transmissions.
Cache The Cache performance object consists of counters that monitor the file system cache, an area of physical memory that stores recently used data as long as possible to permit access to the data without having to read from the disk. Because applications typically use the cache, the cache is monitored as an indicator of application I/O operations. When memory is plentiful, the cache can grow, but when memory is scarce, the cache can become too small to be effective.
Database Database provides performance statistics for each process using the ESE high performance embedded database management system.
Distributed Routing Table The Distributed Routing Table (DRT) performance object consists of counters that monitor the local DRT cache as well as counters that measure the rates at which DRT protocol messages are sent and received.
Distributed Transaction Coordinator Microsoft Distributed Transaction Coordinator performance counters.
Energy Meter The Energy Meter performance object measures total energy consumption.
FileSystem Disk Activity The FileSystem Disk Activity performance counter set consists of counters that measure the aspect of filesystem's IO Activity. This counter set measures the number of bytes filesystem read from and wrote to the disk drive.
GPU Engine The running time of each gpu engine
GPU Process Memory The memory usage of each process
HTTP Service Set of HTTP service counters
ICMP The ICMP performance object consists of counters that measure the rates at which messages are sent and received by using ICMP protocols. It also includes counters that monitor ICMP protocol errors.
IPsec Connections IPsec Connections is the set of Internet Protocol security (IPsec) counters that apply to IPsec encapsulated connections.
IPsec Driver IPsec Driver is the set of Internet Protocol security (IPsec) driver counters that apply to traffic over Internet Protocol version 4 and Internet Protocol version 6.
IPv4 The IP performance object consists of counters that measure the rates at which IP datagrams are sent and received by using IP protocols. It also includes counters that monitor IP protocol errors.
Job Object Details % Job object Details shows detailed performance information about the active processes that make up a Job object.
LogicalDisk The Logical Disk performance object consists of counters that monitor logical partitions of a hard or fixed disk drives. Performance Monitor identifies logical disks by their a drive letter, such as C.
Memory The Memory performance object consists of counters that describe the behavior of physical and virtual memory on the computer. Physical memory is the amount of random access memory on the computer. Virtual memory consists of the space in physical memory and on disk. Many of the memory counters monitor paging, which is the movement of pages of code and data between disk and physical memory. Excessive paging, a symptom of a memory shortage, can cause delays which interfere with all system processes.
Paging File The Paging File performance object consists of counters that monitor the paging file(s) on the computer. The paging file is a reserved space on disk that backs up committed physical memory on the computer.
Physical Disk The Physical Disk performance object consists of counters that monitor hard or fixed disk drive on a computer. Disks are used to store file, program, and paging data and are read to retrieve these items, and written to record changes to them. The values of physical disk counters are sums of the values of the logical disks (or partitions) into which they are divided.
Process The Process performance object consists of counters that monitor running application program and system processes. All the threads in a process share the same address space and have access to the same data.
Processor The Processor performance object consists of counters that measure aspects of processor activity. The processor is the part of the computer that performs arithmetic and logical computations, initiates operations on peripherals, and runs the threads of processes. A computer can have multiple processors. The processor object represents each processor as an instance of the object.
Processor Information The Processor Information performance counter set consists of counters that measure aspects of processor activity. The processor is the part of the computer that performs arithmetic and logical computations, initiates operations on peripherals, and runs the threads of processes. A computer can have multiple processors. On some computers, processors are organized in NUMA nodes that share hardware resources such as physical memory. The Processor Information counter set represents each processor as a pair of numbers, where the first number is the NUMA node number and the second number is the zero-based index of the processor within that NUMA node. If the computer does not use NUMA nodes, the first number is zero.
Redirector The Redirector performance object consists of counter that monitor network connections originating at the local computer.
Search Gatherer Counters for the Windows Search Service Gathering service object
Server The Server performance object consists of counters that measure communication between the local computer and the network.
Sycrhonization The Synchronization performance object consists of counters for kernel synchronization. The synchronization object represents each processor as an instance of the object.
System The System performance object consists of counters that apply to more than one instance of a component processors on the computer.
Thread The Thread performance object consists of counters that measure aspects of thread behavior. A thread is the basic object that executes instructions on a processor. All running processes have at least one thread.
WFP Provider Count is the number of providers registered with the Windows Filtering Platform.
Windows Time Service Windows Time Service Performance Counters display the time synchronization runtime information from the service. Note that the service has to be running in order for this information to be displayed.
See also
Windows Task Manager
Process Explorer
References
Windows components