linux磁盘io测试(blktrace命令 – 分析磁盘I/O负载情况)
导读:blktrace命令来自英文词组“block trace”的缩写,其功能是用于分析磁盘I/O负载情况。查看Linux系统磁盘的负载情况,我们一般会使用iostat监控工具,其中很重要的参数就是await,await表示单个I/O所需的平均时间,但它同时也包含了I/O Scheduler所消耗的时间和硬件所消耗的时间,所以不能作为硬...
blktrace命令来自英文词组“block trace ”的缩写 ,其功能是用于分析磁盘I/O负载情况 。查看Linux系统磁盘的负载情况 ,我们一般会使用iostat监控工具 ,其中很重要的参数就是await ,await表示单个I/O所需的平均时间 ,但它同时也包含了I/O Scheduler所消耗的时间和硬件所消耗的时间 ,所以不能作为硬件性能的指标 。
那如何才能分辨一个io从下发到返回整个时间上 ,是硬件层耗时多还是在io调度上耗时多呢?如何查看io在各个时间段所消耗的时间呢?那么 ,blktrace命令在这种场合就能派上用场 ,因为它能记录I/O所经历的各个步骤 ,从中可以分析是IO Scheduler慢还是硬件响应慢 ,以及各个时间段所用时间 。
语法格式:blktrace [参数] 设备名
常用参数:
-a 添加到当前过滤器 -A 设置过滤信息为十六进制mask -b 设置缓存大小 -d 设置设备追踪 -D 设置输入文件的基本名称 -h 设置主机名 -k 杀掉正在运行的追踪 -l 设置要使用的缓冲区数量 -n 设置缓冲池大小 -o 设置输出文件的名字 -r 设置debugfs挂载点 -v 显示版本信息 -w 设置运行的时间参考示例
分析指定磁盘的I/O情况:
[root@linuxcool ~]# blktrace -d /dev/sda设置运行的时间为30秒 ,分析指定磁盘的I/O情况:
[root@linuxcool ~]# blktrace -w 30 -d /dev/sda === sda === CPU 0: 10 events, 1 KiB data CPU 1: 0 events, 0 KiB data CPU 2: 0 events, 0 KiB data CPU 3: 0 events, 0 KiB data CPU 4: 0 events, 0 KiB data CPU 5: 0 events, 0 KiB data CPU 6: 0 events, 0 KiB data CPU 7: 0 events, 0 KiB data CPU 8: 150 events, 8 KiB data CPU 9: 10 events, 1 KiB data CPU 10: 1 events, 1 KiB data CPU 11: 0 events, 0 KiB data CPU 12: 0 events, 0 KiB data ………………省略部分输出信息………………分析指定磁盘的I/O情况,并指定输出文件名称:
[root@linuxcool ~]# blktrace -d /dev/sda -o File [root@linuxcool ~]# ls File.blktrace.* File.blktrace.0 File.blktrace.14 File.blktrace.2 File.blktrace.4 File.blktrace.1 File.blktrace.15 File.blktrace.20 File.blktrace.5 File.blktrace.10 File.blktrace.16 File.blktrace.21 File.blktrace.6 File.blktrace.11 File.blktrace.17 File.blktrace.22 File.blktrace.7 File.blktrace.12 File.blktrace.18 File.blktrace.23 File.blktrace.8 File.blktrace.13 File.blktrace.19 File.blktrace.3 File.blktrace.9 ………………省略部分输出信息………………
声明:本站所有文章 ,如无特殊说明或标注 ,均为本站原创发布 。任何个人或组织,在未征得本站同意时 ,禁止复制 、盗用 、采集 、发布本站内容到任何网站 、书籍等各类媒体平台 。如若本站内容侵犯了原著者的合法权益 ,可联系我们进行处理 。
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!