Disk Performance Counter is divided into two parts:PhysicalDisk and LogicalDisk.
The PhysicalDisk object is used for the An analysis of the overall disk, despite the partitions. Isk. When evaluating overall disk performance This would is the one to select.
The LogicalDisk object analyzes information for a and a single partition. Thus the values would be isolated to activity that's particularly occurring on a single partition and not necessarily repr Esentative of the entire load that the disk was burdened with. The LogicalDisk object is useful primarily if looking at the affects or a particular application, like SQL Server, on th E disk performance.
Under the LogicalDisk and PhysicalDisk catalog, there are many children, such as
LogicalDisk two more than PhysicalDisk:%free sapce and free megabytes, percentage and size in megabytes (MB)
Disk performance is mainly divided into the following categories
1,disk Queue (a primary measure of Disk congestion)
2,disk Read/write
3,disk Transfer
4,split IO
Important Disk Performance Counter have
% Disk Time |
The counter monitors the percentage of time that the disk is busy reading/writing activities. |
Avg.Disk Queue Length |
The average number of read and write requests (queued in the instance interval for the selected disk) |
Current Disk Queue Length |
Indicates the number of disk I/O requests that have been suspended. If this value is always higher than 2, it indicates a congestion |
Avg.Disk Bytes/transfer |
Average number of bytes transferred to or from disk during write or read operations |
Disk bytes/sec |
The byte rate that is transmitted from or to the disk during read and write operations |
In System Monitor, the PhysicalDisk:% Disk Time counter monitors the percentage of the disk that is busy with read/write activity. If the value of the PhysicalDisk:% Disk Time counter is higher (greater than 90%), check the physicaldisk:current disk Queue Length counter for the number of system requests waiting for disk access. The number of wait I/O requests should remain at 1.5 to twice times the number of axes that comprise the physical disk. You can use the values of the current disk Queue Length and% Disk Time counters to detect bottlenecks in the disk subsystem.
If the value of the current disk Queue Length and% Disk time counters is always high, consider the following:
1. Use a faster disk drive.
2. Move some files to a different disk or server.
3. If you are using a RAID array, add the disks to the array. (Most disks have only one axis, but redundant array of independent disks (RAID) devices typically have multiple axes.) The hardware RAID device appears as a physical disk in System Monitor. Multiple RAID devices created by software appear as multiple instances in System Monitor. )
Reference: Performance Monitor Counters
Disk Performance Counters
The disk performance counters help you to evaluate the performance of the disk subsystem. The disk subsystem is more than the disk itself. It would include to disk controller card, the I/O bus of the system, and the disk. When measuring disk performance it was usually better to has a good baseline for performance than simply to try and Evalua Te the disk performance on a case by case basis.
There is objects for the disk-physicaldisk and LogicalDisk . The counters for the identical. However, in some cases they may leads to slightly different conclusions. The PhysicalDisk object is used for the An analysis of the overall disk, despite the partitions. When evaluating overall disk performance This would is the one to select. The LogicalDisk object analyzes information for a and a single partition. Thus the values would be isolated to activity that's particularly occurring on a single partition and not necessarily repr Esentative of the entire load that the disk was burdened with. The LogicalDisk object is useful primarily if looking at the affects or a particular application, like SQL Server, on th E disk performance. Again the PhysicalDisk is primarily for looking at the performance of the entire disk subsystem. In the list of that follows, the favored object was indicated with the counter. When the LogicalDisk and PhysicalDisk objects is especially different, the counter would be listed twice and the Differenc E speCifically mentioned.
-
physicaldisk:current Disk Queue Length. This counter provides a primary measure of disk congestion . Just as the processor queue was a indication of waiting threads, the disk queue is an indication of the number of TRANSAC tions that is waiting to being processed. Recall that the queue was an important measure for services this operate on a transaction basis. Just like the "line" at the supermarket, the queue would be representative of the the number of a transactions, but also t He length and frequency of each transaction.
-
PhysicalDisk:% Disk time. Much like% Processor time, this counter are a general mark of how busy the disk is. You'll see many similarities between the disk and processor since they is both transaction-based services. This counter indicates a disk problem, but must is observed in conjunction with the current disk Queue Length counter to B E truly informative. Recall also that the disk could is a bottleneck prior to the% Disk time reaching 100%.
-
physicaldisk:avg. Disk Queue Length. This counter was actually strongly related to the%disk time counter. This counter converts the%disk time to a decimal value and displays it. This counter is needed in times when the disk configuration employs multiple controllers for multiple physical disks. In these cases, the overall performance of the disk I/O system, which consists of controllers, could exceed that of a n individual disk. Thus, if you were looking at the%disk time counter, you would only see a value of 100%, which wouldn ' t represent the Tota L Potential of the entire system, but only so it had reached the potential of a single disk to a single controller. The real value may be 120% which the AVG. Disk Queue Length counter would display as 1.2.
physicaldisk:disk reads/sec. This counter are used to compare to the Memory:page inputs/sec counter. Need to compare the both counters to determine how much of the Disk Reads is actually attributed to satisfying page FA Ults.
logicaldisk:disk reads/sec. When observing an individual application (rather a partition) This counter would be a indication of how often the Applicat Ions on the partition is reading from the disk. This would provide you with a more exact measure of the contribution of the various processes on the partition that is AFF Ecting the disk.
physicaldisk:disk Reads bytes/sec. Primarily, you'll use this counter to describe the performance of disk throughput for the disk subsystem. Remember that is generally measuring the capability of the entire disk hardware subsystem to respond-requests for Information.
logicaldisk:disk Reads bytes/sec. For the partition, this would be a indication of the rate, which data is being transferred. This would be a indication of what type of activity the partition is experiencing. A smaller value would indicate more random reads of smaller sections.
-
physicaldisk:avg. Disk bytes/read. This counter was used primarily to let you know the average number of bytes transferred per read of the disk system. This helps distinguish between random reads of the disk and the more efficient sequential file reads. A smaller value generally indicates random reads. The value for this counter can also is an indicator of file fragmentation.
-
physicaldisk:avg. Disk sec/read. The value for this counter are generally the number of seconds it takes to does each read. On Less-complex disk subsystems involving controllers it does not have intelligent management of the I/O, this value is a Multiple of the disk ' s rotation per minute. This does not negate the rule, the entire system is being observed. The rotational speed of the hard drive would be the predominant factor in the value with the delays imposed by the Controll ER card and Support bus system.
physicaldisk:disk reads/sec. The value for this counter is the number of reads, the disk was able to accomplish per second. Changes in this value indicate the amount of the random access to the disk. The disk is a mechanical device, which is capable for the only so much activity. When files were closer together, the disk is permitted to get to the files quicker than if the files were spread throughout The disk. In addition, disk fragmentation can contribute to a increased value here.
Reference Windows Performance Monitor Learning notes
The following table provides a brief description of the important performance counters:
Performance counters: |
|
|
Performance Object |
Counter |
Description |
Processor |
%processor time |
The percentage of time that the processor is performing a non-idle thread, measuring the time the processor is busy this counter is designed to be the primary indicator for processor activity, you can select a single CPU instance, or you can select Total |
Interrupts/sec |
The number of interrupts that the processor is processing from the application or hardware |
|
|
|
PhysicalDisk |
% Disk Time |
The counter monitors the percentage of time that the disk is busy reading/writing activities. In System Monitor, the PhysicalDisk:% Disk Time counter monitors the percentage of the disk that is busy reading/writing activity. If the value of the PhysicalDisk:% Disk Time counter is higher (greater than 90%), check the physicaldisk:current disk Queue Length counter for the number of system requests waiting for disk access. The number of wait I/O requests should remain at 1.5 to twice times the number of axes that comprise the physical disk. Most disks have only one axis, but redundant array of independent disks (RAID) devices typically have multiple axes. The hardware RAID device appears as a physical disk in System Monitor. Multiple RAID devices created by software appear as multiple instances in System Monitor. You can use the values of the current disk Queue Length and% Disk Time counters to detect bottlenecks in the disk subsystem. If the values of the current disk Queue Length and% Disk Time counters are always high, consider the following: 1. Use a faster disk drive. 2. Move some files to a different disk or server. 3. If you are using a RAID array, add the disks to the array. |
Avg.Disk Queue Length |
The average number of read and write requests (queued in the instance interval for the selected disk) |
Current Disk Queue Length |
Indicates the number of disk I/O requests that have been suspended. If this value is always higher than 2, it indicates a congestion |
Avg.Disk Bytes/transfer |
Average number of bytes transferred to or from disk during write or read operations |
Disk bytes/sec |
The byte rate that is transmitted from or to the disk during read and write operations |
|
|
|
Memory |
Pages/sec |
The number of requested pages. |
Available Bytes |
The number of available physical memory |
Committed Bytes |
Virtual memory assigned to physical RAM for storing or assigning to a paging file |
Pool nonpaged Bytes |
Amount of RAM in Nonpaged Pool system memory Area |
Page faults/sec |
Is the average number of page errors per second |
|
|
|
Network Interface |
Bytes received/sec |
Number of bytes received using this network adapter |
Bytes sent/sec |
Number of bytes sent using this network adapter |
Bytes total/sec |
Number of bytes sent and received using this network adapter |
Server |
Bytes received/sec |
Compare this counter to the total bandwidth of the network adapter to determine if the network connection is creating a bottleneck |
|
|
|
SQL Server Access Methods |
Page splits/sec |
The page split score that occurs per second due to an overflow in the index page. If you find a lot of page splits, consider raising the fill factor for index. The data page will have more space to hold the fill for the data, reducing page splits |
Pages allocated/sec |
Number of pages allocated per second in all databases in this instance of SQL Server. These pages include pages that are assigned from mixed and unified extents |
Full scans/sec |
The number of full scans that are unrestricted per second. These scans can be either a base table scan or a full-text index scan |
|
|
|
SQL Server:sql Statistics |
Batch requests/sec |
Number of Transact-SQL command batches received per second. This statistic is affected by all constraints, such as I/O, number of users, cache size, complexity of the request, and so on. A high number of batch requests means throughput |
SQL compilations/sec |
The number of compilations per second. Indicates the number of times the compiled code path was entered. Includes compilation caused by statement-level recompilation in SQL Server. When the SQL Server user activity is stable, the value will reach a stable state |
Re-compilations/sec |
The number of times per second the statement was recompiled. Counts the number of times the statement recompilation was triggered. In general, this number is best smaller, and the stored procedure should ideally be compiled only once, and then the execution plan is reused. If the value of this counter is high, you may need to write the stored procedure in a different way, reducing the number of recompilation |
|
|
|
SQL server:databases |
Log flushes/sec |
Number of log refreshes per second |
Active transactions |
Number of active transactions for the database |
Backup/restore throughput/sec |
Read/write throughput for the backup and restore operations of the database per second. For example, when you use multiple backup devices in parallel or use a faster device, you can measure the performance changes in database backup operations. Throughput of a database backup or restore operation can determine the process and performance of backup and restore operations |
|
|
|
SQL Server General Statistics |
User Connections |
The number of active SQL connections in the system. The counter information can be used to find out the maximum number of concurrent users of the system |
Temp Tables Creation Rate |
Number of temporary table/table variables created per second |
Temp Tables for Destruction |
Number of temporary table/table variables waiting to be destroyed by purged system threads |
|
|
|
SQL Server Locks |
Number of Deadlocks/sec |
The number of lock requests that resulted in deadlocks per second. Deadlocks are very harmful to the scalability of the application and can lead to a poor user experience. The counter must be 0 |
Average Wait Time (ms) |
Average wait time for each lock request that causes a wait |
Lock requests/sec |
The number of new locks and lock conversions requested by the lock manager per second. By optimizing the query to reduce the number of reads, you can reduce the value of the counter |
|
|
|
SQL server:memory Manager |
Total Server Memory (KB) |
Memory submitted from the buffer pool (this is not the total memory used by SQL Server) |
Target Server Memory (KB) |
Total amount of dynamic memory that the server can use |
SQL Cache Memory (KB) |
Total dynamic memory that the server is using for dynamic SQL cache |
Memory Grants Pending |
Refers to the number of processes per second that are waiting for a workspace memory authorization. The counter should be as close to 0 as possible, otherwise there may be a memory bottleneck |
|
|
|
SQL Server Buffer Manager |
Buffer Cache hit Ratio |
Cache Hit ratio, the percentage of pages found in the buffer cache that do not need to be read from disk (physical I/O). If the value is low, there may be an out-of-memory or incorrect index |
Page reads/sec |
The number of physical database page reads issued per second. This statistic shows the total number of physical page reads between all databases. Because of the overhead of physical I/O, you can minimize overhead by using methods such as larger data caches, smart indexes, more efficient queries, or changing database designs |
Page writes/sec |
Number of physical database page writes performed per second |
Page Life expectancy |
The number of seconds that the page will stay in the buffer pool if it is not referenced |
Lazy writes/sec |
Number of buffers written per second by the buffer manager's lazy writer |
Checkpoint pages/sec |
The number of pages per second flushed to disk by checkpoints or other operations that require all dirty pages to be flushed |
Performance Counter Usage1:harddisk Performance