欢迎交流测试经验

性能计数器解释

上一篇 / 下一篇  2007-05-15 22:10:51 / 个人分类:技术文摘

如果Process\Private Bytes计数器和Process\Working Set计数器的值持续升高
I9w1["R}I;|6s7oi0
同时Memory\Available bytes计数器的值却持续降低的话
8G| MN/T.j ~1m0
说明很有可能是存在内存泄漏

&U/R(yU,V,J)o6i0

 

M$S6Y#pMfm\c0

windows自带的Performance Monitor,控制面版->管理工具->性能
W8b%g b!U0
检测内存泄漏,我们一般可以监视Process对象的Handle CountVirutal BytesWorking Set三个CounterHandle Count记录了进程当前打开的HANDLE的个数,监视这个Counter有助于我们发现程序是否有Handle泄漏;Virtual Bytes记录了该进程当前在虚地址空间上使用的虚拟内存的大小,NT的内存分配采用了两步走的方法,首先,在虚地址空间上保留一段空间,这时操作系统并没有分配物理内存,只是保留了一段地址。然后,再提交这段空间,这时操作系统才会分配物理内存。所以,Virtual Bytes一般总大于程序的Working Set。监视Virutal Bytes可以帮助我们发现一些系统底层的问题; Working Set记录了操作系统为进程已提交的内存的总量,这个值和程序申请的内存总量存在密切的关系,如果程序存在内存的泄漏这个值会持续增加,但是Virtual Bytes却是跳跃式增加的。

z2[+O~ F\0

 

l+oYYp,@ v0

性能对象

Q{'Y bF!WR]0

计数器

*q G"EL ^4D6`bHp'e0

描述

(tv oGM0

Processor使用

7d)Q{L0d l$\ v0

%Processor Time(所有实例)

+wdz,R S0

指处理器执行非闲置线程时间的百分比。这个计数器设计成用来作为处理器活动的主要指示器。它通过在每个范例间隔中衡 量处理器用于执行闲置处理线程的时间,并且用100%减去该值得出。(每 台处理器有一个闲置线程,该线程在没有其它线程可以运行时消耗周 期)。可将其视为范例间隔用于做有用工作的百分比。这个计数器显 示在范例间隔时所看到的忙时平均值。这个值是用100%减去该服务不活 动的时间计算出来的。

o?k#E1a0?)x)_0

Processor瓶颈

;r WAX$nw^l0

Interrupts/secTestAge 中国软件测试时代 q C Th'LAl

指处理器每秒钟接收并维护的硬件中断的平均值。它不包括DPCDPC将单独计算。这个值是产生中断的设备(如:系统时钟、鼠标、磁盘驱动器、数据交流线路、网络街面卡和其它附件设备)的活动的间接指示器,这些设备通常在完成了一项任务或需要注意时中断处理器。正常的线程操作在中断时悬停。大多数的系统时钟每隔10毫秒中断处理器一次,形成了间隔活动的后台。这个计数值显示用上两个实例中观察到的值之间的差除于实例间隔的持续时间所得的值。

w.S%CE AF9Fk1f/[0

System/Processor Queue Length(所有实例)TestAge 中国软件测试时代+Z`)I8`9UBi U ^

是指处理列队中的线程数。即使在有多个处理器 的计算机上处理器时间也会有一个单列队。不象磁盘计数器,这个计数器仅 计数就绪的线程,而不计数运行中的线程。如果处理器列队中总是有两个以上的线程 通常表示处理器堵塞。这个计数器仅显示上一次观察的值;而不是一个平 均值。

2[abOrs/\H0

System/Context Switches/sec

(|`#y)w:?0

指计算机上的所有处理器全都从一个线程转换到另一个线程的综合速率。当正在运行的线程自动放弃处理器时出现上下文转换,由一个有更高优先就绪的线程占先或在用户模式和特权(内核)模式之间转换以使用执行或分系统服务。它是在计算机上的所有处理器上运行的所有线程的Thread: Context Switches/sec的总数并且用转换数量衡量。在系统和线程对象上有上下文转换计数器。这个计数值显示在上一次两个实例中观察到的值除于实例间隔的持续时间所得的值的差异。

KU*NbzE'qqu{'E0

ProcessTestAge 中国软件测试时代VqAS5N'iI:`/B ?

(进程)TestAge 中国软件测试时代/g,]T\ j3V

Private Bytes

7ixNc1b'ZPi0

指这个处理不能与其它处理共享的、已分配的当前 字节数。

8u2@P4?9j,U)Zi7F b0

Virtual BytesTestAge 中国软件测试时代2~ P5d9I/I7m'wA*Z A\

指处理使用的虚拟地址空间的以字节数显示的当前大小。 使用虚拟地址空间不一定是指对磁盘或主内存页的相应的使用。虚 拟空间是有限,如果使用过多,可能会限制处理加载数据 库的能力。TestAge 中国软件测试时代R(hpc8D%p

Working SetTestAge 中国软件测试时代rB0W ~ZG[ R

指这个处理的Working Set中的当前字节数。Working Set是在处理中被线程最近触到的那个内存页集。如果 计算机上的可用内存处于阈值以上,即使页不在使用中,也会留在一 个处理的Working Set中。当可用内存降到阈值以下,将从Working Set中删除页。如果需要页时,它会在离开主内存前软故障返回   Working Set中。TestAge 中国软件测试时代*@R;`Yey

Handle CountTestAge 中国软件测试时代,a%w z"?.n7}IQ8~7jK

由这个处理现在打开的句柄总数。这个数字是在这个处理中每个线程当前打开的句柄的总数。TestAge 中国软件测试时代d9MZ5?h^&A p+A

ObjectsTestAge 中国软件测试时代7Fi wHxrA4S

ThreadsTestAge 中国软件测试时代.Zv7|ZcM

线程指在数据收集时在计算机中线程的数目。请注意这是 一个即时计算而不是一个时间间隔的平均值。一个线程为一个基本 的可执行实体,该实体在处理器中执行指令。

^6m:Fr8p4XL0

Memory使用

9qzy8n5h0

Available Bytes

mx/v(qwx8_0

是计算机上可用于运行处理的有效物理内存的字节数量。是用零、 空闲和备用内存表上的空间总值计算的。空闲内存指可以使用内存;零内存指为了防 止以后的处理看到以前处理使用的数据而在很多页内存中充满了零的内存。备用内 存是指从处理的工作集(它的物理内存)移到磁盘的,但是仍旧可以调用的内存。这个计数器只显示上一次观察到的值;它不是一个平均值。TestAge 中国软件测试时代0I.tF:|AvKnQ1\

Cache BytesTestAge 中国软件测试时代)T,^0o,}m?A~_

System Cache Resident Bytes的总数。System Driver Resident BytesSystem Code Resident Bytes、以及Pool Paged Resident Bytes计数器。该计数器只显示最后一次观察的值,它不是一个平均值。

uZK]6n:xvFF0

Memory瓶颈或溢出

,n6Q_i'~(U7\ ]nc0

Pages/secTestAge 中国软件测试时代3mfN3N"U0x(lf

是指为解析硬页错误从磁盘读取或写入磁盘的页数。(当处理程序请求 不在本身工作集或物理内存其它地方中的代码或数据,而必须要从磁盘上检索时就会出现硬页错误)。这个计数器设计成可以显示导致系统范围延缓类型错误的主要指示器。它是Memory: Pages Input/secMemory: Pages Output/sec的 总和。是用页数计算的,以便在不用做转换的情况下就可以同其它页计数如:  Memory: Page Faults/sec做比较,这个值包括为满足错误而在文件系统缓存(通常由应用程 序请求)的非缓存映射内存文件中检索的页。这个计数器显示用上两个实例中观察到的值 之间的差除于实例间隔的持续时间所得的值。

-t2D(qoqYQ \)a0

Page Reads/sec

!M%mmw5r5]*I0

是指为解析硬页错误而读取磁盘的次数。(当处理请求的硬 页错误不在工作集和物理内存其它地方中的代码或数据,而必须从磁盘上检索时 就会出现硬页错误)。这个计数器设计成可以显示导致系统范围延缓 错误的主要指示器。这个包括要满足错误而在文件系统缓存(通常由应用程 序请求)的非缓存映射内存文件终检索的页。这个计数器显示用上两个实例中 观察到的值之间的差除于实例间隔的持续时间所得的值。TestAge 中国软件测试时代Wh cI%W.R;g$l

Transition Faults/secTestAge 中国软件测试时代.ay S4u%y:ra'm"I z`

是指由在修改页列表、备份页表或在页错误时写入 磁盘上造成的页错误数量。这些页是在没有额外磁盘活动的情况下恢复的。传输 错误是在不计算每次操作时出错的页数的情况下计算错误数量。这个计数 器显示用上两个实例中观察到的值之间的差除于实例间隔的持续时间所得的值。TestAge 中国软件测试时代 }? Tjl9_l"p

Pool Paged BytesTestAge 中国软件测试时代dU blY4[w

指在分页池中的字节数,分页池是系统内存(操作系 统使用的物理内存)中可供对象(在不处于使用时可以写入磁盘的)使 用的一个区域。Memory: Pool Paged Bytes的计数方式与Process: Pool Paged Bytes的方式不同,因此可能不等于Process: Pool Paged Bytes: _Total。这个 计数器仅显示上一次观察的值;而不是一个平均值。TestAge 中国软件测试时代2`'J:O6PwwH.l@

Pool Nonpaged Bytes

Ti#aU#b_|&}3T0

指在非分页池中的字节数,非分页池是指系统内存(操作系统使用的物理内存)中可供对象(指那些在不处于使用时不可以写入磁盘上 而且只要分派过就必须保留在物理内存中的对象)使用的一个区域。Memory: Pool Nonpaged Bytes的计数方式与Process: Pool Nonpaged Bytes的计数方式 不同,因此可能不等于Pool Nonpaged Bytes: _Total。 这个计数器仅显示上一次观察的值;而不是一个平均值。TestAge 中国软件测试时代;S(n&I?z-F d

PhysicalDisk

O1D7\*WR0

的使用TestAge 中国软件测试时代z:?W,a?8{n }

%Disk TimeTestAge 中国软件测试时代MJ"_-}4J&H3y

指所选磁盘驱动器忙于为读或写入请求提供服务所用的时间 的百分比。TestAge 中国软件测试时代NU`^@-A9CO

请谨慎对待% Disk Time计数器。因为该计数器的_Total实例不能精确反映多磁盘系统的利用率,因此使用% Idle Time计数器也非常重要。TestAge 中国软件测试时代a"Wc5u2J oHui8Lo9[

% Idle TimeTestAge 中国软件测试时代0l*t$@?DM3w3y

汇报在实例间隔时磁盘闲置时间的百分比。TestAge 中国软件测试时代["q,P B6Z2c

Disk Reads/secTestAge 中国软件测试时代,|P^+Rx%shni

指在此盘上读取操作的速率。

K#ao3cD^a&i3N0

Disk Writes/secTestAge 中国软件测试时代@"h"@'Iu qM;@1~ V

指在此盘上写入操作的速率。

Mv4j0awd0

PhysicalDisk的瓶颈TestAge 中国软件测试时代 n5V-NuY

Avg.Disk Queue Length(所有实例)

A-Jl'Vl0

指读取和写入请求(为所选磁盘在实例间隔中列队的)的平均数。

Ju'cTS0

SystemTestAge 中国软件测试时代'](CcH7C%K$A

File Data Operations/ sec

?6^5]$ku0

指在计算机的所有逻辑磁盘上读取和写入操作的综合速度。这是系统的逆转率:每秒钟的文件控制操作。这个总值显示了上两个实例中观察到的值的差异除于实例间隔的时间。TestAge 中国软件测试时代 L?3b2g#G)LO;p

Processor Queue LengthTestAge 中国软件测试时代J7yC3V]cd

是指处理列队中的线程数。即使在有多个处理器 的计算机上处理器时间也会有一个单列队。不象磁盘计数器,这个计数器仅 计数就绪的线程,而不计数运行中的线程。如果处理器列队中总是有两个以上的线程 通常表示处理器堵塞。这个计数器仅显示上一次观察的值;而不是一个平 均值。TestAge 中国软件测试时代#{(yao8K&I

网络使用TestAge 中国软件测试时代0@,LZ{:O&U2z

Network Segment\ % Net Utilization
5J[S6h.W_o;n^0
请注意,必须为网络监视器安装网络监视器驱动程序才能使用该计数器。TestAge 中国软件测试时代6R5H\ N~ ua

 

nyF;o2de0

网络吞吐量TestAge 中国软件测试时代o-\K3f@S)S

TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

我的栏目

日历

« 2008-05-15  
    123
45678910
11121314151617
18192021222324
25262728293031

数据统计

  • 访问量: 1067
  • 日志数: 9
  • 建立时间: 2007-05-15
  • 更新时间: 2007-06-05

RSS订阅