atop 显示队列深度高于最大值

atop 显示队列深度高于最大值

在我的atop日志中,我看到avq(“平均队列深度”)超过 600。这是在 LVM 逻辑卷 (LV) 上。 LV 和物理卷的nr_requests(最大队列深度)均为 128。

(请注意,要avq在 中查看atop,我减小了终端字体大小(“查看”->“缩小”)。这提供了atop足够的空间来显示它所了解的所有统计信息)。

无法写入 LV 上的最大队列深度。所以我不知道 LV 上的最大队列深度是否有任何作用。但我预计队列深度有一些限制...并且不会超过 600!

此日志样本来自系统处于压力之下且响应不太灵敏的时间。所以我试图分析它......但不清楚我是否可以信任这个特定的数据点。

这是什么意思?是否atop显示了错误或误导性的数字?内核做错了什么吗?内核是否可以按设计工作,并且有一个我不知道的解释?

系统是Fedora Workstation 28。我不记得做过任何IO调整。我的atop版本是2.3.0-10.fc28.x86_64,内核是4.18.16-200.fc28.x86_64


LVM | ll_2016-swap | busy 59% | read 24328 | write 175735 | KiB/r 4 | KiB/w 4 | MBr/s 0.2 | MBw/s 1.1 |avq 684.13| avio 1.76 ms

DSK | sda | busy 93% | read 88967 | write 45808 | KiB/r 81 | KiB/w 152 | MBr/s 11.8 | MBw/s 11.4 | avq 96.50 | avio 4.12 ms

$ lsblk
NAME                      MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda                         8:0    0 465.8G  0 disk 
├─sda1                      8:1    0   500M  0 part /boot/efi
~
└─sda7                      8:7    0 371.4G  0 part 
  ├─alan_dell_2016-fedora 253:0    0    40G  0 lvm  /
  ├─alan_dell_2016-swap   253:1    0     2G  0 lvm  [SWAP]
  └─alan_dell_2016-home   253:2    0   303G  0 lvm  /home

$ cat /sys/block/dm-1/dm/name
alan_dell_2016-swap

$ cat /sys/block/dm-1/queue/nr_requests
128
$ cat /sys/block/sda/queue/nr_requests
128

$ echo 4 | sudo tee /sys/block/dm-1/queue/nr_requests
4
tee: /sys/block/dm-1/queue/nr_requests: Invalid argument
$ cat /sys/block/dm-1/queue/nr_requests
128

$ echo 4 | sudo tee /sys/block/sda/queue/nr_requests
4
$ cat /sys/block/sda/queue/nr_requests
4
$ cat /sys/block/dm-1/queue/nr_requests
128

相关内容