Source: UML Software Engineering Organization
1 Windows Performance Counter analysis
Object |
Counter |
Analysis |
Processor |
%precessor time |
recommended threshold value 85% |
Memory |
Available bytes |
The recommended threshold value is less than 4MB to add memory; In addition, it is recommended to have at least 10% of physical memory value |
Pages reads/sec |
Page reads/sec refers to the number of times a disk is read for parsing a hard page error, if the value continues to be large, indicating that there may be insufficient memory recommended threshold value of5 ), large values indicate disk reads instead of cached reads |
Pages writes/sec |
Page writes/sec refers to the number of times a page is written to disk in order to free up physical memory space |
Pages input/sec |
Pages input/sec refers to the number of pages read from disk to resolve page faults |
Pages output/sec |
Pages output/sec refers to the number of pages written to disk in order to free up physical memory space If the value is much greater than Pages input/sec, There may be memory leaks |
Pages/sec |
pages/sec refers to the number of pages that are read from or written to disk for parsing a hard page error recommended threshold Value 20 |
Network interface (for TCP/IP) |
Bytes received/sec |
This data is combined Bytes total/sec See |
Bytes sent/sec |
This data is combined Bytes total/sec See |
Bytes total/sec |
It is recommended not to exceed 50% of the bandwidth |
Packets/sec |
based on the actual data volume size, there is no recommended threshold, which combines Bytes total/sec See |
PhysicalDisk |
Disk reads/sec |
Depending on the drive manufacturer's specifications, check the specified transfer speed of the disk to verify that the speed is not exceeding the specifications |
Disk writes/sec |
Depending on the drive manufacturer's specifications, check the specified transfer speed of the disk to verify that the speed is not exceeding the specifications Also: the upper two values are added, which should be less than the maximum capacity of the disk device |
%disk time |
recommended threshold value 90% |
Current Disk Queue Length Avg. Disk Queue Length ( If you use a RAID device,the%disk time counter can display a value greater than 100%.) If it is greater than 100%, use the AVG. Disk Queue Length counter to determine the average number of system requests that are waiting for disk access . |
no more than 1.5~2 times the number of disks if the upper two values are always high , consider upgrading the disk drive or moving some files to another disk or server |
2 Some precautions
1. If the monitoring is not more than 4 hours, it is reasonable to update every 15 seconds, if the system will be monitored for 8 hours or longer, set the interval not less than 300 seconds
2. Personally, the test report results are also attached to the reference, because the minimum, maximum and average values do not explain the problem
3. Unlike physical disk counters, data for logical disk counters is not collected by the operating system by default. To obtain performance counter data for a logical drive or storage volume, you must type DISKPERF–YV at the command prompt. By default, the operating system uses the DISKPERF–YD command to include physical drive data. For more information about using command diskperf, at a command prompt, type diskperf-?.
4. In general, determining whether performance is acceptable is a subjective judgment that changes significantly with the user's environment.
5. Insufficient memory is the most common cause of severity problems in computer systems. Workstations are slow to respond most likely due to memory and processor problems, and servers are more susceptible to disk and network problems.
6. At the start of the program, the Process\%processor time value of each program quickly climbs, decreases, and then stabilizes. Note that the peak of the processor at the start of the program is important; You may want to temporarily ignore the high startup values in the monitoring data to get a more accurate picture of the typical program's use of processor conditions.
7. When memory is reduced, the operating system begins to replenish by obtaining memory from the working set of the less active programs (working set), so you will see an increase in the working set of one program and a decrease in the value of other programs. If there is not enough memory in the system to meet the requirements of all active programs, memory paging will occur and program performance will be affected.
8. If a memory leak occurs, the values of the Process\Private bytes counter and the Process\Working set counter tend to rise, while available bytes decreases.
9. If the process is missing, modify the disable under Registry HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PerfProc\Performance The performance counters value is 0.
3 UNIX Performance Counter analysis
Counter |
Describe |
Average load |
Ready average number of state concurrency processes |
Collision Rate |
Number of collisions per second detected on Ethernet |
Context Switches Rate |
Number of transitions per second between processes or threads |
CPU Utilization |
CPU percent of usage time |
Disk Rate |
Rate of disk transfers |
Incoming Packets Error Rate |
Accept an Ethernet packet error per second |
Incoming Packets Rate |
Ethernet Packets Received per second |
Interrupt Rate |
Number of interrupts per second of device |
Outgoing packets Error Rate |
Send Ethernet packets per second error |
Outgoing packets Rate |
Send Ethernet packets per second |
Page in rate |
Pages of physical memory read per second |
Page out rate |
Pages written to the paging file and moved from physical memory per second |
Paging Rate |
The number of pages per second that are read into physical memory or written to a paging file |
Swap in rate |
Number of processes exchanged |
Swap out rate |
Number of processes exchanged |
System Mode CPU Utilization |
System Mode percentage of CPU usage time |
User Mode CPU Utilization |
User Mode percentage of CPU usage time |
4 SQL Server Performance counter analysis
Counter |
Describe |
Buffer Manager/buffer Cache Hit ratio |
can be found in the buffer pool without the need to read from disk ( physical I/O) the percentage of the page. If the value is low, there may be an out-of-memory or incorrect index |
General Statistics Object/user Conections |
refers to the activity in the system. number of SQL connections. The counter information can be used to determine the maximum number of concurrent users of the system |
Locks/lock requests/sec |
Indicates the number of locks requested per second. By optimizing the query to reduce the number of reads, you can reduce the value of the counter. |
Locks/lock timeouts/sec |
The number of lock requests per second that are waiting for authorization to lock, ideally, the value of this counter is 0 |
Locks/lock waits/sec |
The number of lock requests that can be timed out without immediate authorization per second, ideally, the value of this counter should be as much as 0 |
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 |
Memory Manager/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 Statistics/batch requests/sec |
Refers to the number of requests per second that a batch is submitted to the server. This counter is used to determine the load size of the system |
SQL Statistics/sql compilations/sec |
refers to the number of compilations per second. Ideally the value of this counter should be low, if the value of the batch Requests/sec counter is very close to the counter, there may be a large number of special SQL calls |
SQL statistics/re-compilations/sec |
Refers to the number of recompilation per second. The lower the value of the counter, the better. Stored procedures should ideally be compiled only once and then reused by their execution plans. 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 |
Original: UML Software engineering Organization
Performance Test Counter Analysis guide