diskspd와 fio가 Linux에서는 홀수를 생성하지만 Windows에서는 생성하지 않는 이유는 무엇입니까?

diskspd와 fio가 Linux에서는 홀수를 생성하지만 Windows에서는 생성하지 않는 이유는 무엇입니까?

고쳐 쓰다

Anon의 답변 덕분에 파일 시스템에 문제가 있다는 것을 알았습니다. 저는 NTFS를 사용하고 있습니다. FAT32를 사용한 결과는 다음과 같습니다.

윈도우:

diskspd64 -b128K -d5 -o32 -t1 -W0 -Sh -w0 cdm
508, 518, 520, 513, 513

fio --name=dontknow --ioengine=windowsaio --thread --size=1024m --bs=128k --time_based=1 --runtime=5s --iodepth=32 --numjobs=1 --rw=read --direct=1 --buffered=0 --startdelay=0s --filename=cdm
557, 557, 557, 558, 556

리눅스:

diskspd -b128K -d5 -o32 -t1 -W0 -Sh -w0 cdm
529, 528, 529, 529, 529

fio --name=dontknow --ioengine=libaio --thread --size=1024m --bs=128k --time_based=1 --runtime=5s --iodepth=32 --numjobs=1 --rw=read --direct=1 --buffered=0 --startdelay=0s --filename=cdm
560, 560, 560, 560, 559

원래 질문

동일한 드라이브의 동일한 입력 파일을 기반으로 Windows에서 주어진 명령의 읽기 속도에 대한 결과 숫자는 다음과 같습니다(MB/s - 각각 5번 실행했습니다).

diskspd64 -b128k -d5 -o32 -t1 -W0 -S -w0 cdm
555, 555, 556, 556, 555

fio --name=doesntmatter --ioengine=windowsaio --thread=1 --size=1024m --bs=128k --time_based=1 --runtime=5s --iodepth=32 --numjobs=1 --rw=read --direct=1 --startdelay=0s --filename=cdm
561, 553, 562, 561, 558

그리고 Linux(정확하게 말하면 - KDE 네온 useredition-20180802):

diskspd -b128K -d5 -o32 -t1 -W0 -Sh -w0 cdm
1800, 2000, 1925, 1891, 1973

fio --name=doesntmatter --ioengine=libaio --thread=1 --size=1024m --bs=128k --time_based=1 --runtime=5s --iodepth=32 --numjobs=1 --rw=read --direct=1 --startdelay=0s --filename=cdm
2637, 2826, 2593, 2770

또한 이것이 SATA SSD 드라이브이고 공식적인 최대 읽기 속도는 555 MB/s.그래서 Windows 수치가 정확한 것 같습니다.

답변1

안타깝게도 귀하의 질문에 답할 수 있는 정보가 충분하지 않습니다. 일반적으로 실행의 전체 fio 출력을 보고 실행 중인 fio의 버전을 이해하는 것이 필요합니다. 이를 통해 도달한 깊이와 Linux 사용량 등을 알 수 있습니다. 디스크가 런타임 중에 있다고 생각합니다(예를 들어 대기 시간이 0에 가까우면 이는 거의 항상 캐싱의 신호입니다).

아마도direct=1파일이 사용 중인 옵션을 지원하지 않는 파일 시스템에 있습니다.. 어떤 이유로 파일이 완전히 캐시되어 캐시에서 파일을 다시 읽는 중일 수 있습니다. 파일 크기가 전체 RAM보다 훨씬 작은 경우 이 점에 유의하세요. 아마도 파일에 쓰지 않기 때문에 파일이 희박하거나 비어 있고 실제로 "거기"가 아니기 때문일 것입니다(다시 읽기 전에 전체 쓰기를 시도하십시오)...

추신: thread값이 필요하지 않습니다(참조http://fio.readthedocs.io/en/latest/fio_doc.html#cmdoption-arg-thread).

관련 정보