【AIX 学习】性能优化--vmstat

vmstat 命令报告关于内核线程、虚拟内存、磁盘、陷阱和 CPU 活动的统计信息。由 vmstat 命令生成的报告可以用于平衡系统负载活动。系统范围内的这些统计信息(所有的处理器中)都计算出以百分比表示的平均值,或者计算其总和。
如果调用 vmstat 命令时不带标志,则报告包含系统启动后虚拟内存活动的摘要。如果指定 -f 标志,则 vmstat 命令报告自从系统启动后派生的数量。PhysicalVolume 参数指定物理卷的名称。
Interval 参数指定每个报告之间的时间量(以秒计)。如果没有指定 Interval 参数,vmstat 命令生成包含有自系统启动以来的统计信息的单个报告然后退出。Count 参数只能和 Interval 参数一起指定。如果指定了 Count 参数,其值决定生成的报告数目和相互间隔的秒数。如果指定 Interval 参数而没有指定 Count 参数,则连续生成报告。Count 参数不允许为 0。

---要显示引导后的统计信息摘要:
ufserver[/]#vmstat
System Configuration: lcpu=4 mem=3920MB
kthr    memory              page              faults        cpu   
----- ----------- ------------------------ ------------ -----------
 r  b   avm   fre  re  pi  po  fr   sr  cy  in   sy  cs us sy id wa
 1  1 546986 305375   0   0   0   1   19   0   7 2997 508  1  1 98  0
关于内核线程状态的 kthr: 信息。
r 取样时间间隔内的平均可运行内核线程数。可运行是指处于预备状态但等待运行的线程,以及已经在运行的线程。
b 取样时间间隔内的置于 VMM 等待队列(等待资源、等待输入/输出)的平均内核线程数。
内存 memory:关于使用虚拟内存和实内存的信息。如果虚拟页已经被访问的话,虚拟页可以被认为是活动的页面。一页为 4096 个字节。
avm 活动虚拟页。
fre 空闲列表的大小。
注:
大部分实内存都用作文件系统数据的高速缓存。对于保持较小的空闲列表,这是很正常的。
页 page:关于缺页故障和调页活动的信息。这些是间隔的平均值,以秒为单位给出。
re 页面调度程序输入/输出列表。
pi 从调页空间调度进的页面。
po 调出到调页空间的页面。
fr 释放的页(页面替换)。
sr 通过页替换算法扫描的页面。
cy 按页替换算法的时钟周期。
故障 faults:采样间隔平均每秒的捕获和中断率。
in 设备中断
sy 系统调用。
cs 内核线程上下文切换。
Cpu:CPU 使用时间故障百分比。
us 用户时间。
sy 系统时间。
id CPU 空闲时间。
wa CPU 空闲时间,在此期间系统有未完成的磁盘/NFS I/O 请求。请参阅上面的详细描述。
pc 消耗的物理处理器数。仅当使用共享处理器运行分区时才显示。
ec 消耗的授权容量百分比。仅当使用共享处理器运行分区时才显示。因为计算该数据所依赖的时基可以变化,所以授权容量百分比可能有时会超过 100%。该超过现象仅在小采样时间间隔时显得尤为突出。

磁盘 disk xfer :每秒向指定物理卷提供的传送数目,该过程在采样间隔中发生。PhysicalVolume 参数可以用于指定一到四个名称。每个指定驱动器的传送统计信息按指定顺序给出。该计数代表向物理设备的请求数。它并不暗示读取或写入的数据量。几个逻辑请求可以组合成为一个物理请求。如果使用了 PhysicalVolume 参数,则在命令执行的开始打印物理卷名称。
--要显示 2 秒时间间隔的 5 个摘要:
ufserver[/]#vmstat 2 5
System Configuration: lcpu=4 mem=3920MB
kthr    memory              page              faults        cpu   
----- ----------- ------------------------ ------------ -----------
 r  b   avm   fre  re  pi  po  fr   sr  cy  in   sy  cs us sy id wa
 0  0 546958 305403   0   0   0   0    0   0   5 2574 729  1  1 99  0
 0  0 546958 305403   0   0   0   0    0   0   8 2432 727  1  1 99  0
 0  0 547086 305275   0   0   0   0    0   0  12 5982 702  2  2 96  0
 0  0 547005 305356   0   0   0   0    0   0   5 2363 587  1  1 99  0
 0  0 547005 305356   0   0   0   0    0   0   6 2753 586  1  1 99  0

----要显示引导后包括逻辑磁盘 hdisk0 和 hdisk1 的统计信息摘要:
ufserver[/]#vmstat hdisk0 hdisk1
System configuration: lcpu=4 mem=3920MB drives=3
kthr    memory              page              faults        cpu      disk xfer
----- ----------- ------------------------ ------------ ----------- -----------
 r  b   avm   fre  re  pi  po  fr   sr  cy  in   sy  cs us sy id wa  1  2  3  4
 1  1 547061 305300   0   0   0   1   19   0   7 2997 508  1  1 98  0  0  0  -  -
ufserver[/]#vmstat hdisk0
System configuration: lcpu=4 mem=3920MB drives=3
kthr    memory              page              faults        cpu      disk xfer
----- ----------- ------------------------ ------------ ----------- -----------
 r  b   avm   fre  re  pi  po  fr   sr  cy  in   sy  cs us sy id wa  1  2  3  4
 1  1 546963 305397   0   0   0   1   19   0   7 2997 508  1  1 98  0  0  -  -  -

---要显示派生统计信息:
ufserver[/]#vmstat -f
              1321380 forks

---要显示各事件的计数:
ufserver[/]#vmstat -s
            688544634 total address trans. faults
              3333967 page ins
             18677519 page outs
                78267 paging space page ins
               191702 paging space page outs
                    0 total reclaims
            279623431 zero filled pages faults
                18658 executable filled pages faults
             39724067 pages examined by clock
                   46 revolutions of the clock hand
              3664060 pages freed by the clock
             10874914 backtracks
                  238 free frame. waits
                    0 extend XPT waits
               261675 pending I/O waits
             22008658 start I/Os
              3103421 iodones
           1011062654 cpu context switches
             14951473 device interrupts
             99590678 software interrupts
            847510213 decrementer interrupts
               104853 mpc-sent interrupts
               104853 mpc-received interrupts
               339269 phantom interrupts
                    0 traps
           5957816239 syscalls
----要显示 vmstat 的每一输出栏旁边的时间戳记:
 
ufserver[/]#vmstat -t
System Configuration: lcpu=4 mem=3920MB
kthr    memory              page              faults        cpu       time 
----- ----------- ------------------------ ------------ ----------- --------
 r  b   avm   fre  re  pi  po  fr   sr  cy  in   sy  cs us sy id wa hr mi se
 1  1 547050 312235   0   0   0   1   20   0   7 2997 508  1  1 98  0 15:14:58

---要以另一套输出栏显示 I/O 定向视图:
ufserver[/]#vmstat -I
System Configuration: lcpu=4 mem=3920MB
  kthr     memory              page              faults        cpu   
-------- ----------- ------------------------ ------------ -----------
 r  b  p   avm   fre  fi  fo  pi  po  fr   sr  in   sy  cs us sy id wa
 1  1  0 547051 305368   1   9   0   0   1   20   7 2997 508  1  1 98  0

要显示所有可用的 VMM 统计信息:
ufserver[/]#vmstat -vs
            688555942 total address trans. faults
              3333968 page ins
             18721908 page outs
                78267 paging space page ins
               191702 paging space page outs
                    0 total reclaims
            279628354 zero filled pages faults
                18658 executable filled pages faults
             39852998 pages examined by clock
                   46 revolutions of the clock hand
              3685603 pages freed by the clock
             10875080 backtracks
                  238 free frame. waits
                    0 extend XPT waits
               261676 pending I/O waits
             22053048 start I/Os
              3104815 iodones
           1011350314 cpu context switches
             15085751 device interrupts
             99592347 software interrupts
            847528659 decrementer interrupts
               104856 mpc-sent interrupts
               104856 mpc-received interrupts
               339279 phantom interrupts
                    0 traps
           5958323666 syscalls
              1003520 memory pages
               960185 lruable pages
               313797 free pages
                    1 memory pools
               216257 pinned pages
                 80.0 maxpin percentage
                  5.0 minperm percentage
                 15.0 maxperm percentage
                 14.0 numperm percentage
               134485 file pages
                  0.0 compressed percentage
                    0 compressed pages
                 14.0 numclient percentage
                 15.0 maxclient percentage
               134485 client pages
                    0 remote pageouts scheduled
               153417 pending disk I/Os blocked with no pbuf
               152426 paging space I/Os blocked with no psbuf
                 2228 filesystem I/Os blocked with no fsbuf
                 6131 client filesystem I/Os blocked with no fsbuf
                  245 external pager filesystem I/Os blocked with no fsbuf
                    0 Virtualized Partition Memory Page Faults
                 0.00 Time resolving virtualized partition memory page faults

s 将总数结构中的内容写入到标准输出,该结构包含从系统初始化后调页事件的绝对计数。-s 标志只能与 -v 标志一起使用。如下描述了这些事件:
地址翻译错误
每次发生地址转换页面故障时增加。解决页面故障可能需要 I/O,也可能不需要。存储保护页面故障(失去锁定)不包含在此计数之内。
入页
随虚拟内存管理器读入的每页增加。计数随调页空间和文件空间的入页增加。它和出页统计信息一起表示实际 I/O(由虚拟内存管理器启动)的总量。
出页
随虚拟内存管理器写出的每页增加。计数随调页空间和文件空间的出页而增加。它和入页统计信息一起表示实际 I/O(由虚拟内存管理器启动)的总量。
调页空间入页
只随 VMM 启动的来自调页空间的入页而增加。
调页空间出页
只随 VMM 启动的来自调页空间的出页而增加。
总回收
当不启用一个新的 I/O 请求也可以满足地址翻译错误时增加。如果页面以前已经被 VMM 请求过,但是 I/O 还没有完成;或者页面被预读算法提前提取,但是被故障段隐藏了;或者如果页面已经被放入空闲列表中,但还没有重新使用,则会发生此情况。
零填充页面故障
如果页面故障针对的是工作存储器,且可以通过指定一个帧并以零填充帧来满足它的话,则该值增加。
可执行填充页面故障
随着每个指令页面故障而增加。
用时钟检查页面
VMM 利用时钟算法实施伪最近最少使用(1ru)的页面替换模式。时钟检查过的页面是 aged。为每个时钟检查过的页面增加此计数值。
时钟指针的转动
随着每次 VMM 时钟旋转而增加(即在每一次完整的内存扫描后)。
用时钟释放的页面
随着时钟算法从实内存中选择释放的每一个页面而增加。  
回溯
随着解决前一个页面故障时出现的每一个页面故障而增加。(必须首先解决新的页面故障,然后可以回溯到最初的页面故障。)
空闲帧等待
在收集可用帧时,每次 VMM 等待一个进程时增加。
扩展 XPT 等待
每次正在进行提交而使得 VMM 等待一个进程时,随着正在被访问的段而增加。
暂挂 I/O 等待
每次 VMM 等待一个进程时随着要完成的入页 I/O 而增加。
启动 I/O
随着每个被 VMM 启动的读取或写入 I/O 请求而增加。此计数应该与入页和出页的总数相等。
iodones
在每次完成 VMM I/O 请求时增加。
CPU 上下文交换
随着每次 CPU 上下文交换而增加(新进程的分派)。
设备中断
每次硬件中断时增加。
软件中断
每次软件中断时增加。一次软件中断是一个类似于硬件中断(保存一些状态和服务器例程分支)的机器指令。系统调用用软件中断指令来完成,该指令转换控制到系统调用处理程序例程。
decrementer 中断
每次 decrementer 中断时增加。
mpc 发送中断
每次 mpc 发送中断时增加。
mpc 接收中断
每次 mpc 接收中断时增加。
幻象读取中断
每次幻象读取中断时增加。
陷阱
不通过操作系统来维护。
syscalls
随着每次系统调用而增加。
 

---要以 8 秒为时间间隔显示“大页面”部分(包含 alp 和 flp 列):
ufserver[/]#vmstat -l 8
System Configuration: lcpu=4 mem=3920MB
kthr    memory              page              faults        cpu     large-page
----- ----------- ------------------------ ------------ ----------- -----------
 r  b   avm   fre  re  pi  po  fr   sr  cy  in   sy  cs us sy id wa   alp   flp
 0  0 547092 334672   0   0   0   0    0   0 172 3212 871  1  1 98  0     0     0
 1  0 547112 336250   0   0   0   0    0   0 170 4121 877  1  1 98  0     0     0
 0  0 547095 339024   0   0   0   0    0   0 173 4063 871  1  1 98  0     0     0
 0  1 547078 342568   0   0   0   0    0   0 170 3952 877  1  2 92  6     0     0
 0  0 547077 344536   0   0   0   0    0   0 172 3001 859  1  1 98  0     0     0
 0  0 547059 347513   0   0   0   0    0   0 170 4012 877  1  1 98  0     0     0
 1  0 547094 349030   0   0   0   0    0   0 181 4147 873  1  1 98  0     0     0
 0  0 547097 350561   0   0   0   0    0   0 177 4207 881  1  1 98  0     0     0
 1  0 547169 351954   0   0   0   0    0   0 174 4297 877  1  1 98  0     0     0
 0  0 547080 354313   0   0   0   0    0   0 169 3217 868  1  1 98  0     0     0
 2  0 547070 356333   0   0   0   0    0   0 171 4146 883  1  2 97  0     0     0
 1  0 547062 358706   0   0   0   0    0   0 172 4088 876  1  1 98  0     0     0
 0  1 547068 359198   0   0   0   0    0   0 175 4028 866  1  1 96  2     0     0

---要显示指定到特定页面大小(在该示例中,4K)的 VMM 统计信息:
ufserver[/]#vmstat -p 4k
System Configuration: lcpu=4 mem=3920MB
kthr    memory              page              faults        cpu   
----- ----------- ------------------------ ------------ -----------
 r  b   avm   fre  re  pi  po  fr   sr  cy  in   sy  cs us sy id wa
 1  1 547599 336356   0   0   0   1   20   0   7 2997 508  1  1 98  0
psz   avm   fre  re  pi  po  fr   sr  cy     siz
4K 439728 271635   0   0   0   1   20   0  830928

--要显示系统支持的所有页面大小的 VMM 统计信息:
ufserver[/]#vmstat -p ALL
System Configuration: lcpu=4 mem=3920MB
kthr    memory              page              faults        cpu   
----- ----------- ------------------------ ------------ -----------
 r  b   avm   fre  re  pi  po  fr   sr  cy  in   sy  cs us sy id wa
 1  1 547635 336320   0   0   0   1   20   0   7 2997 508  1  1 98  0
  psz   avm   fre  re  pi  po  fr   sr  cy     siz
   4K 439764 271599   0   0   0   1   20   0  830928
  64K  6742  4045   0   0   0   0    0   0   10787

--要仅显示特定页面大小(在该示例中,4K)的 VMM 统计信息:
  64K    10787     6742     4045     0     0     0     0      0     0
ufserver[/]#vmstat -P 4K
System configuration: mem=3920MB
pgsz            memory                           page                
----- -------------------------- ------------------------------------
           siz      avm      fre    re    pi    po    fr     sr    cy
   4K   830928   439805   289194     0     0     0     1     20     0

---要仅显示所有受支持的页面大小的 VMM 统计信息中每一页的故障信息:
ufserver[/]#vmstat -P ALL
System configuration: mem=3920MB
pgsz            memory                           page                
----- -------------------------- ------------------------------------
           siz      avm      fre    re    pi    po    fr     sr    cy
   4K   830928   439763   271600     0     0     0     1     20     0
  64K    10787     6742     4045     0     0     0     0      0     0

时间: 2024-09-20 09:44:00

【AIX 学习】性能优化--vmstat的相关文章

为什么性能优化中,设置style属性会引起reflow?

问题描述 为什么性能优化中,设置style属性会引起reflow? 在学习性能优化的时候,看到repaint和reflow,说每设置一次style就会引起一次reflow.那么如果style设置的时候没有改变元素的几何属性(宽高)的话,为什么还会引起reflow呢? 解决方案 不只宽高,比如边距改变,文本内容改变.位置改变等都会引起reflow. 宽高只是最终表象.但改变宽高的因素有什么.

kvm虚拟化学习笔记(二十一)之KVM性能优化学习笔记

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://koumm.blog.51cto.com/703525/1606422 本学习笔记系列都是采用CentOS6.x操作系统,KVM虚拟机的管理也是采用virsh方式,网上的很多的文章都基于ubuntu高版本内核下,KVM的一些新的特性支持更好,本文只是记录了CentOS6.x系列操作系统下KVM优化的点,有很多都是默认支持开启了的,除了采用virtio方式的磁盘IO,与网络IO接口

Jquery 学习笔记(二)jQuery性能优化指南

Jquery 学习笔记(二) -jQuery性能优化指南 2009年11月30日 一 作者:   邦畿千里   1,总是从ID选择器开始继承 在jQuery中最快的选择器是ID选择器,因为它直接来自于JavaScript的getElementById()方法. 例如有一段HTML代码: <div id="content"> <form method="post" action="#"> <h2>交通信号灯<

端到端GPU性能优化在深度学习场景下的应用实践

摘要:在2017杭州云栖大会机器学习平台PAI专场上,阿里巴巴高级算法专家杨军结合具体案例分享了端到端GPU性能优化在深度学习场景下的应用实践.   本文内容根据嘉宾演讲视频以及PPT整理而成.   目前深度学习和GPU已经成为了人工智能的基础,一软一硬的结合能够帮助我们实现图像识别.语音识别以及视频的处理,那么如何优化深度学习框架与GPU资源也是机器学习平台的一个研究方向.   本次分享主要分为以下5个部分: 1.         背景介绍 2.         优化思考 3.        

CSS3与页面布局学习总结(八)——浏览器兼容与前端性能优化

一.浏览器兼容 1.1.概要 世界上没有任何一个浏览器是一样的,同样的代码在不一样的浏览器上运行就存在兼容性问题.不同浏览器其内核亦不尽相同,相同内核的版本不同,相同版本的内核浏览器品牌不一样,各种运行平台还存在差异.屏幕分辨率不一样,大小不一样,比例不一样.兼容性主要考虑三方面: 1).CSS兼容2).JavaScript兼容3).HTML兼容 这三类也是前端的主要组成部分,都存在一定的兼容性问题,知己知彼,百战百胜,我们先了解浏览器的发动机-内核. 多年前我们一直为IE6兼容烦恼,为它没少加

JDBC学习笔记-jdbc性能优化

笔记|性能|优化 jdbc程序的性能主要由两个因素决定,一是数据库本身的性质,另一个是与数据库相对独立的jdbc应用程序接口(api)的使用.这里说的是如何正确使用jdbc编程接口,以获得更好的性能. jdbc主要优化有: 1.选择正确的jdbc驱动程序 2.Connention的优化 使用连接池来管理Connection对象 3.Statement的优化 使用批量更新等 4.Result的优化 正确的从数据库中get数据等 (1)选择正确的jdbc驱动程序: 1 jdbc-odbc 桥 2 本

Hibernate学习之------&amp;gt;Hibernate性能优化的几点建议

1.针对oracle数据库而言,Fetch Size 是设定JDBC的Statement读取数据的时候每次从数据库中取出的记录条数,一般设置为30.50.100.Oracle数据库的JDBC驱动默认的Fetch Size=15,设置Fetch Size设置为:30.50,性能会有明显提升,如果继续增大,超出100,性能提升不明显,反而会消耗内存. 即在hibernate配制文件中进行配制: 1 <property name="hibernateProperties"> 2

《Java程序性能优化》学习笔记 设计优化

第一章 Java性能调优概述 1.性能的参考指标   执行时间:   CPU时间:   内存分配:   磁盘吞吐量:   网络吞吐量:   响应时间: 2.木桶定律   系统的最终性能取决于系统中性能表现最差的组件,例如window系统内置的评分就是选取最低分.可能成为系统瓶颈的计算资源如,磁盘I/O,异常,数据库,锁竞争,内存等.   性能优化的几个方面,如设计优化,Java程序优化,并行程序开发及优化,JVM调优,Java性能调优工具的使用等. 3.Amdahl定律   加速比=优化前系统耗

mysql性能优化学习笔记

mysql性能优化 硬件对数据库的影响 CPU资源和可用内存大小 服务器硬件对mysql性能的影响 我们的应用是CPU密集型? 我们的应用的并发量如何? 数量比频率更好 64位使用32位的服务器版本 32位不能使用超过4G的内容,因此选择的时候需要注意. myisam innodb 磁盘的配置和选择 机械硬盘: 存储容量 传输速度 访问时间 主轴转速 物理尺寸 使用RAID增加传统机器硬盘的性能 RAID:一系列小磁盘组成大磁盘,数据冗余 RAID 0 :成本最低,但是没有数据冗余会造成数据丢失