IO性能工具
一、iotop
1. 用法
# iotop --help Usage: iotop [-h] [-P] [-d <delay>] [-n <cycles>] [-s <column>] -a 显示字节数而非速率 -d 设置刷新间隔(秒) -h 显示此帮助信息 -m 设置要显示的进程或线程数 -n 设置退出前的刷新次数 -P 显示进程数而非默认的线程数 -s 设置排序依据的列: pid、read、write、total、io、swap、faults、sched、mem 或 delay。
2. 示例
iotop -d 5 //统计最近5秒的
iotop -m 4 //循环显示4个线程
iotop -m 4 -n 3 //只循环显示3次
iotop -P -m 4 //以进程为单位进行展示而不是线程
iotop -s faults -m 4 //按faults进行排序,可选的还有 pid, read, write, total, io, swap, faults, sched, mem or delay
# iotop | head -5 --- IO (KiB/s) --- --- faults --- ----------- delayed on ---------- //单位KB/s PID Command read write total major minor IO swap sched mem total 1165 logcat 0 212 212 0 0 0.00% 0.00% 0.00% 0.00% 0.00% 26337 peechservice 0 44 44 0 3451 0.00% 0.00% 0.00% 0.00% 0.00% 2808 queued-work-loo 0 12 12 0 3 0.00% 0.00% 0.00% 0.00% 0.00% # iotop -a | head -5 ---- IO (KiB) ---- --- faults --- ----------- delayed on ---------- //单位KB PID Command read write total major minor IO swap sched mem total 1165 logcat 0 240 240 0 0 0.00% 0.00% 0.00% 0.00% 0.00% 1167 logcat 0 36 36 0 0 0.00% 0.00% 0.00% 0.00% 0.00% 2921 Thread-4 0 12 12 0 0 0.00% 0.00% 0.00% 0.00% 0.00% # iotop -m 10 --- IO (KiB/s) --- --- faults --- ----------- delayed on ---------- PID Command read write total major minor IO swap sched mem total 7976 speech_po 0 532 532 0 412 0.00% 0.00% 0.00% 0.00% 0.00% 7890 native_fsp 0 216 216 0 135 0.00% 0.00% 0.00% 0.00% 0.00% 1158 cnss_diag 0 192 192 0 0 0.00% 0.00% 0.00% 0.00% 0.00% 8250 iot.coreservice 0 152 152 0 38 0.00% 0.00% 0.00% 0.00% 0.00% 8314 iaopeng.smartas 0 152 152 0 38 0.00% 0.00% 0.00% 0.00% 0.00% 1014 logcat 0 12 12 0 0 0.00% 0.00% 0.00% 0.00% 0.00% 1 init 0 0 0 0 0 0.00% 0.00% 0.00% 0.00% 0.00% 2 kthreadd 0 0 0 0 0 0.00% 0.00% 0.00% 0.00% 0.00% 3 rcu_gp 0 0 0 0 0 0.00% 0.00% 0.00% 0.00% 0.00% 4 rcu_par_gp 0 0 0 0 0 0.00% 0.00% 0.00% 0.00% 0.00% TOTAL 0 1256 1256 0 949
注: major fault 应该是从swap中换回内存,而 minor fault 应该是单纯的 page fault.
3. 相关命令
# io
ionice iorap.cmd.maintenance iorap.prefetcherd iorenice
iorap.cmd.compiler iorap.inode2filename iorapd iotop
4. 实验
下面命令创建大量IO, 看统计结果
# time dd if=/dev/zero of=/sdcard/test.file bs=1G count=5 5+0 records in 5+0 records out 5368709120 bytes (5.0 G) copied, 13.336342 s, 384 M/s 0m13.35s real 0m00.00s user 0m11.20s system
posted on 2025-01-17 10:38 Hello-World3 阅读(71) 评论(0) 收藏 举报
浙公网安备 33010602011771号