저는 FreeBSD 12.2와 FIO 3.24를 사용하고 있습니다. ioengine 매개변수는 posixaio입니다. NVMe 드라이브를 테스트합니다. 테스트 초기 부분에서 우리는 테스트 중인 장치에 3시간 동안 QD 32와 numjobs 4를 적용했습니다(무작위 쓰기, 블록 크기 혼합). 일반적으로 2/3 정도의 과정에서 4개의 프로세스(하나씩)가 일반적으로 CPU를 5~10% 사용하는 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