• SSD가 설치된 가상머신에서 fio를 이용해 disk 성능 측정 (Update: Apr 14, 2021)

환경 구성

  • OS: Ubuntu 20.04
  • fio: v3.16 with apt install
  • SSD: WD Black NVMe SSD

1. fio 설치

;구글링 결과 많은 분들은 소스파일을 컴파일하여 사용하였지만 간단히 패키지 관리자로 진행했습니다.

USER1@SVR1 ~]$ sudo apt install fio

2. fio 실행 결과

;각 옵션들은 아래 fio man 페이지를 참고

USER1@SVR1 ~]$ mkdir /home/USER1/fio
USER1@SVR1 ~/fio]$ fio --directory=/home/USER1/fio --name fio_test_file --direct=1 --rw=randwrite --bs=4K --size=1G --numjobs=16 --time_based --runtime=180 --group_reporting --norandommap --rwmixread 30                     
fio_test_file: (g=0): rw=randwrite, bs=(R) 4096B-4096B, (W) 4096B-4096B, (T) 4096B-4096B,    ioengine=psync, iodepth=1
...
fio-3.16
Starting 16 processes
fio_test_file: Laying out IO file (1 file / 1024MiB)
(...생략...)
fio_test_file: Laying out IO file (1 file / 1024MiB)
Jobs: 11 (f=11): [E(1),w(2),E(1),w(1),E(3),w(8)][100.0%][w=564MiB/s][w=144k IOPS][eta 00m:00s]
fio_test_file: (groupid=0, jobs=16): err= 0: pid=1321467: Wed Apr 14 17:37:11 2021
  write: IOPS=124k, BW=485MiB/s (508MB/s)(85.2GiB/180002msec); 0 zone resets
    clat (usec): min=27, max=374097, avg=127.44, stdev=655.51
     lat (usec): min=27, max=374097, avg=127.65, stdev=655.53
    clat percentiles (usec):
     |  1.00th=[   53],  5.00th=[   68], 10.00th=[   74], 20.00th=[   83],
     | 30.00th=[   89], 40.00th=[   95], 50.00th=[  102], 60.00th=[  111],
     | 70.00th=[  120], 80.00th=[  133], 90.00th=[  155], 95.00th=[  184],
     | 99.00th=[  338], 99.50th=[  529], 99.90th=[ 5604], 99.95th=[ 8455],
     | 99.99th=[14615]
   bw (  KiB/s): min= 7392, max=708956, per=99.85%, avg=495814.75, stdev=8677.22, samples=5754
   iops        : min= 1848, max=177239, avg=123953.01, stdev=2169.32, samples=5754
  lat (usec)   : 50=0.64%, 100=46.31%, 250=51.12%, 500=1.39%, 750=0.21%
  lat (usec)   : 1000=0.05%
  lat (msec)   : 2=0.06%, 4=0.08%, 10=0.11%, 20=0.02%, 50=0.01%
  lat (msec)   : 100=0.01%, 250=0.01%, 500=0.01%
  cpu          : usr=2.10%, sys=14.40%, ctx=22732938, majf=0, minf=185
  IO depths    : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
     submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     issued rwts: total=0,22346101,0,0 short=0,0,0,0 dropped=0,0,0,0
     latency   : target=0, window=0, percentile=100.00%, depth=1

Run status group 0 (all jobs):
  WRITE: bw=485MiB/s (508MB/s), 485MiB/s-485MiB/s (508MB/s-508MB/s), io=85.2GiB (91.5GB),    run=180002-180002msec

Disk stats (read/write):
  sda: ios=0/22343488, merge=0/320596, ticks=0/2183495, in_queue=233588, util=100.00

3. 진행하며 알게된 것

  • 설치와 테스트는 쉽지만 신뢰도 높은 비교 자료가 없어 다른 테스트를 더 해봐야 알 것 같다.
  • 구글링 경험으로는 기본적인 How to는 쉽게 찾을 수 있지만 보다 더 의미있는 매개변수 설정이나 결과 해석은 찾아보기 어려웠다.

4. 참고

5. 그 외 추가로 알게된 것들

; fio 테스트를 하며 알게된 것으로 다음에 확인하기 위해 남김