
왠지 원시 IOPS 측면에서는 QD2가 가장 좋은 것 같습니다...
흥미로운 기사를 본 후SLOG 사용을 위해 몇 가지 다른 드라이브 비교, 다양한 대기열 깊이에서 내 시스템의 성능이 궁금했습니다.
이 시스템은 i9-13900K, 128GB DDR5-4800 시스템 메모리와 단일 미러링 Vdev로 Samsung 980 PRO 2개로 구성됩니다. 테스트는 ProxMox 7의 컨테이너에 있는 다음 구성에서 FIO를 실행하고 있습니다.
fio --name=random-write --ioengine=posixaio --rw=randwrite --bs=<4k/8k> --numjobs=1 --size=8g --iodepth=<1/2/4/8> --runtime=30 --time_based
내가 발견한 이상한 점은 비동기 쓰기 중에 대기열 깊이 2에서 일관되게 최고의 성능이 발생한다는 것입니다. 여러 가지 압축, 블록 크기 및 레코드 크기 조합을 시도했지만 QD2가 지속적으로 최고의 IOPS 점수를 얻었습니다... 예상했던 것입니다. 더 높은 대기열 깊이에서 더 나은 결과를 얻으려면, 아니면 뭔가 빠졌나요? (드라이브당 NAND 칩이 2개만 있는 드라이브와 관련이 있는지 궁금합니다.)
ashift=12로 설정하고 위에 나열된 것 외에는 특정 ZFS 조정이 수행되지 않았습니다.
ZFS 비동기 쓰기가 QD1, QD4 또는 QD8에 비해 QD2에서 가장 잘 작동하는 이유를 아는 사람이 있습니까?
그리고 이제... 그래프! 이것은 제가 시도한 216가지 조합의 평균 결과입니다.
(16k라는 기록 크기가 왜 최악이었는지는 알 수 없습니다)
(8k의 블록 크기는 여전히 전체적으로 더 많은 결과를 가져옵니다.대역폭)
Zstd가 LZ4를 이기는 것을 보고 조금 놀랐습니다. 아마도 이 열악한 SSD의 IO 한계에 도달하고 있는 것일까요? 그만큼실제SSD 활동은 테스트 중에 일반적으로 400-700MB/s에 도달했습니다.
NB 모든 테스트 중에 CPU 거버너는 "성능"으로 설정되었으며, "절전"으로 설정하면 IOPS 수치가 30-50% 더 나빴습니다!