FIO 进程从 aiospn 变为 100% CPU

FIO 进程从 aiospn 变为 100% CPU

我正在使用 FreeBSD 12.2 和 FIO 3.24。 ioengine 参数是 posixaio。测试 NVMe 驱动器。在测试的初始部分,我们以 QD 为 32 和 numjobs 为 4 的方式对被测单元进行 3 小时(随机写入,并混合了块大小)。通常在大约 2/3 的过程中,我注意到 4 个进程(一一)从通常使用 5-10% CPU 的 aiospn 状态转到以下 vfs.aio 值处于 100%CPU 的状态 CPUnnn。

问题是谁是罪魁祸首? FreeBSD 与 FIO?我猜测有人没有很好地处理丢弃的 I/O 请求。

vfs.aio.max_buf_aio: 8192
vfs.aio.max_aio_queue_per_proc: 65536
vfs.aio.max_aio_per_proc: 8192
vfs.aio.aiod_lifetime: 30000
vfs.aio.num_unmapped_aio: 0
vfs.aio.num_buf_aio: 0
vfs.aio.num_queue_count: 0
vfs.aio.max_aio_queue: 65536
vfs.aio.target_aio_procs: 4
vfs.aio.num_aio_procs: 4
vfs.aio.max_aio_procs: 32
vfs.aio.unsafe_warningcnt: 1
vfs.aio.enable_unsafe: 0

相关内容