LoadRunner processor、memory、network interface性能对象 常用性能计数器说明
LoadRunner,是一种预测系统行为和性能的负载测试工具。通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner能够对整个企业架构进行测试。通过使用 LoadRunner,企业能最大限度地缩短测试时间,优化性能和加速应用系统的发布周期。 LoadRunner是一种适用于各种体系架构的自动负载测试工具,它能预测系统行为并优化系统性能。
TPS 1 Transactions Per Second 的 缩 写, 也 就 是 事 务 数/ 秒
2 Throughtput Per Second 的缩写,单位:Byte/second 字节/秒,也就是吞吐量啦。。。。。
【分享】Network Interface 计数器
许多人对 Kbps、KB、Mbps 等速度单位有所误解,
以下简单解释一下所谓的 1.5M、3M、6M 如何计算。
所谓 1.5M 宽带,其实是指 1.5Mbps (bits per second),亦即 1.5 x 1024 / 8 = 192KB/sec,
但这只是理论上的速度,实际上则要再扣约 12% 的 Ethernet Header, IP Header, TCP Header, ATM Header 等控制讯号,故其传输速度上限应为 169KB/sec 左右。
在传输单位的写法上,B 和 b 分别代表 Bytes 和 bits,两者的定义是不同的,钱万不要混淆。
1 Byte = 8 bits
1 Kb = 1024 bits
1 KB = 1024 bytes
1 Mb = 1024 Kb
1 MB = 1024 KB
宽带最高下载理论值
1.5 M =169 KB/s
3 M =338 KB/s
6 M =676 KB/s
10 M =1126 KB/s
以上谈到的是理论值,对于实际的连接速度可以通过下载文件的方法来测试,
Bytes Total/sec 是在每个网络适配器上发送和接收字节的速率,包括帧字符在内。Network Interface\\Bytes Total/sec=Network Interface\\Bytes Received/sec+Network Interface\\Bytes Sent/sec.
Current Bandwidth 指以位/每秒估计的网络接口的当前带宽。
Output Queue Length 为输出数据列队(数据包)的长度。如果这个长于 2,即会出现延缓并且如果可能的话找出并解决瓶颈问题。由于请求是在这个操作由网络驱动程序接口规格(NDIS)列队,这永远会是 0。
Packets/sec 为在网络界面发送和接收数据包的速率。
Packets Outbound Discarded 为选为丢弃的输出数据包的数目,即便没有发现会阻止传输这些数据包的错误。丢弃数据包的可能原因是释放缓冲空间。
Packets Outbound Error 为由于错误不能传输的输出数据包的数目。
Packets Received Discarded 指选定要丢弃的输入数据包的数字,即使没有发现阻碍这些数据包成为可传送到更高层协议的错误。造成丢弃数据包的可能原因是释放缓冲器空间。
Packets Received Error 指输入数据包的数目,这些数据包含阻碍它们成为可传送到更高层协议的错误。
Packets Received/sec 为在网络界面接收数据包的速率。
Packets Sent/sec 为在网络界面发送数据包的速率。
【分享】Processor计数器
Processor计数器
% Processor Time 指处理器用来执行非闲置线程时间的百分比。计算方法是,测量范例间隔内非闲置线程活动的时间,用范例间隔减去该值。(每台处理器有一个闲置线程,该线程在没有其他线程可以运行时消耗周期)。这个计数器是处理器活动的主要说明器,显示在范例间隔时所观察的繁忙时间平均百分比。这个值是用 100% 减去该服务不活动的时间计算出来的。 通常CPU的平均活动符合应该在80%以下,超过80%表示CPU的处理能力已经达到极限。
% DPC Time 指在范例间隔期间处理器用在缓延程序调用(DPC)接收和提供服务的百分比。DPC 正在运行的为比标准间隔优先权低的间隔。由于 DPC 是以特权模式执行的,DPC 时间的百分比为特权时间百分比的一部分。这些时间单独计算并且不属于间隔计算总数的一部分。这个总数显示了作为实例时间百分比的平均忙时。越低越好。在多处理器系统中,如果这个值大于50%并且Processor:% Processor Time非常高,加入一个网卡可能会提高性能,提供的网络已经不饱和。
% Privileged Time 在特权模式下处理线程执行代码所花时间的百分比。当调用 Windows 系统服务时,此服务经常在特权模式运行,以便获取对系统专有数据的访问。在用户模式执行的线程无法访问这些数据。 对系统的调用可以是直接的(explicit)或间接的(implicit),例如页面错误或中断。不像某些早期的操作系统,Windows 除了使用用户和特权模式的传统保护模式之外,还使用处理边界作为分系统保护。某些由 Windows 为您的应用程序所做的操作除了出现在处理的特权时间内,还可能在其他子系统处理出现。这个时间包括CPU维护中断和延迟过程调用的时间。如果该值过高,应该有I/O处理导致大量系统中断。
% User Time 指处理器处于用户模式的时间百分比。用户模式是为应用程序、环境分系统和整数分系统设计的有限处理模式。另一个模式为特权模式,它是为操作系统组件设计的并且允许直接访问硬件和所有内存。操作系统将应用程序线程转换成特权模式以访问操作系统服务。这个计数值将平均忙时作为示例时间的一部分显示。
Interrupts/sec 是处理器接收和处理硬件中断的平均速度,单位为每秒事例数。这不包括分开计数的延迟的进程调用(DPCs)。这个值说明生成中断的设备(如系统时钟、鼠标、磁盘驱动器、数据通讯线、网络接口卡和其他外缘设备)的活动。这些设备通常在完成任务或需要注意时中断处理器。正常线程执行因此被中断。系统时钟通常每 10 毫秒中断处理器一次,创建中断活动的背景。这个计数值显示用上两个实例中观察到的值之间的差除于实例间隔的持续时间所得的值。
% Interrupt Time 是处理器在实例间隔期间接受和服务硬件中断的时间。此值间接表示了生成间隔的设备活动, 如系统时钟、鼠标、磁盘驱动程序、数据通讯线路、网络界面卡和其他外围设备。当这些设备完成一项任务或需要管理时,它们通常会中断处理器。中断期间,正常的线程执行会停止。多数系统时钟会每隔 10 毫秒中断处理器,产生间隔活动的背景,在间隔期间,终止正常的线程执行。此计数器显示此平均占用时间为实例时间的一部分。
Private Bytes 指这个处理不能与其他处理共享的、已分配的当前字节数。
Page Faults/sec 指在这个进程中执行线程造成的页面错误出现的速度。当线程引用了不在主内存工作集中的虚拟内存页即会出现 Page Fault。如果它在备用表中(即已经在主内存中)或另一个共享页的处理正在使用它,就会引起无法从磁盘中获取页。
% User Time 指处理线程用于执行使用用户模式的代码的时间的百分比。应用程序、环境分系统和集合分系统是以用户模式执行的。Windows 的可执行程序、内核和设备驱动程序不会被以用户模式执行的代码损坏。不像某些早期的操作系统,Windows 除了使用用户和特权模式的传统式保护模式之外,还使用处理边界作为分系统保护。某些由 Windows 为您的应用程序所做的操作除了出现在处理的特权时间内,还可能在其他子系统处理出现。
% Privileged Time 是在特权模式下处理线程执行代码所花时间的百分比。当调用 Windows 系统服务时,此服务经常在特权模式运行,以便获取对系统专有数据的访问。在用户模式执行的线程无法访问这些数据。对系统的调用可以是直接的(explicit)或间接的(implicit),例如页面错误或间隔。不像某些早期的操作系统,Windows 除了使用用户和特权模式的传统保护模式之外,还使用进程边界作为分系统保护。某些由 Windows 为您的应用程序所做的操作除了出现在进程的特权时间内,还可能在其他子系统进程出现。
% Processor Time 是所有进程线程使用处理器执行指令所花的时间百分比。指令是计算机执行的基础单位。线程是执行指令的对象,进程是程序运行时创建的对象。此计数包括处理某些硬件间隔和陷阱条件所执行的代码。
Virtual Bytes 指处理使用的虚拟地址空间的以字节数显示的当前大小。使用虚拟地址空间不一定是指对磁盘或主内存页的相应的使用。虚拟空间是有限的,可能会限制处理加载数据库的能力。
Working Set 指这个处理的 Working Set 中的当前字节数。Working Set 是在处理中被线程最近触到的那个内存页集。如果计算机上的可用内存处于阈值以上,即使页不在使用中,也会留在一个处理的 Working Set中。当可用内存降到阈值以下,将从 Working Set 中删除页。如果需要页时,它会在离开主内存前软故障返回到 Working Set 中。
Page File Bytes 指这个处理在 Paging file 中使用的最大字节数。Paging File 用于存储不包含在其他文件中的由处理使用的内存页。Paging File 由所有处理共享,并且 Paging File 空间不足会防止其他处理分配内存。
I/O Data Bytes/sec 处理从 I/O 操作读取/写入字节的速度。这个计数器为所有由本处理产生的包括文件、网络和设备 I/O 的活动计数。
【分享】Memory计数器
Page Faults/sec 每秒钟出错页面的平均数量。由于每个错误操作中只有一个页面出错,计算单位为每秒出错页面数量,因此这也等于页面错误操作的数量。这个计数器包括硬错误(那些需要磁盘访问的)和软错误(在物理内存的其他地方找到的错误页)。许多处理器可以在有大量软错误的情况下继续操作。但是,硬错误可以导致明显的拖延。当进程请求一块内存但系统无法分配时发生页面错误,该值过高(与未加压时比较)可能有两方面的原因:
1、 应用程序已经占用了过多内存,这可以通过增加内存量来解决。
2、 应用程序的内存请求过于频繁(如:频繁地创建和销毁对象)。此时要考虑更改设计。
Committed Bytes 指以字节表示的确认虚拟内存。确认内存磁盘页面文件上保留了空间的物理内存。每个物理磁盘上可以有一个或一个以上的页面文件。这个计数器只显示上一回观察到的值;它不是一个平均值。
Available MBytes 计算机上运行的进程的可用物理内存大小,单位是千字节,而不是在 Memory\\Available Bytes 中报告的字节。它是将零的、空闲的和备用内存列表的空间添加在一起来计算的。空闲内存可随时使用; 零内存是为了防止以后的进程看到以前进程使用的数据而在很多页内存中填满了零的内存。备用内存是指从进程的工作集(它的物理 内存)移到磁盘的,但是仍旧可以重新调用的内存。 这个计数器只显示观察到的最后一个值;它不是一个平均值。当这个数值变小时,Windows开始频繁地调用磁盘页面文件。如果这个数值很小,例如小于5 MB,系统会将大部分时间消耗在操作页面文件上。
Pages/sec 指为解决硬页错误从磁盘读取或写入磁盘的速度。这个计数器是可以显示导致系统范围延缓类型错误的主要指示器。它是 Memory\\Pages Input/sec 和 Memory\\Pages Output/sec 的总和。是用页数计算的,以便在不用做转换的情况下就可以同其他页计数如: Memory\\Page Faults/sec 做比较,这个值包括为满足错误而在文件系统缓存(通常由应用程序请求)的非缓存映射内存文件中检索的页。 一般如果pages/sec持续高于几百,那么您应该进一步研究页交换活动。
Commit Limit 指在不用扩展分页文件的情况下可以使用的虚拟内存的数量。这是用字节来计算的。确认的内存是指保留在磁盘分页文件上的物理内存。在每个逻辑磁盘上可以有一个分页内存。如果扩展分页文件,这个限量将相应增加。这个计数器只显示上一回观察到的值;而不是一个平均值。