tom__bo’s Blog

MySQL!! MySQL!! @tom__bo

ストレージの簡易ベンチマーク取ってみた

今回組んだPCでI/Oの簡易ベンチマークを取ってみた。
一気に全部の実験をしてなくて、デバイス名・マウントポイントは不定

storage

HDD

SSD その1

SSD その2

M.2 SSD

環境

  • OS: Ubuntu 18.04
  • Kernel: 4.15.0-20-generic
  • Format: ext4

ベンチマーク

gnome-disks

HDD, SSD, SSD (USB3.0), M.2(NVMe)の順

サンプルサイズ100MB

f:id:tom__bo:20180513021810p:plainf:id:tom__bo:20180513021816p:plainf:id:tom__bo:20180513021820p:plainf:id:tom__bo:20180513021823p:plain

サンプルサイズ10MB

f:id:tom__bo:20180513021747p:plainf:id:tom__bo:20180513021759p:plainf:id:tom__bo:20180513021754p:plain f:id:tom__bo:20180513021802p:plain

サンプルサイズ1MB

f:id:tom__bo:20180513021830p:plainf:id:tom__bo:20180513021836p:plainf:id:tom__bo:20180513021840p:plainf:id:tom__bo:20180513022556p:plain

dd

各デバイスをmountしたディレクトリ上で以下を実行

# echo 3 > /proc/sys/vm/drop_caches
## write
# dd if=/dev/zero of=tempfile bs=1M count=1024 conv=fdatasync,notrunc status=progress
# echo 3 > /proc/sys/vm/drop_caches
## read 
# dd if=tempfile of=/dev/null bs=1M count=1024 status=progress

サンプル (hdd)

root@tombo-ThinkPad-X260:/mnt/disk-c# echo 3 > /proc/sys/vm/drop_caches
root@tombo-ThinkPad-X260:/mnt/disk-c# dd if=/dev/zero of=tempfile bs=1M count=1024 conv=fdatasync,notrunc status=progress
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 6.41346 s, 167 MB/s
root@tombo-ThinkPad-X260:/mnt/disk-c# echo 3 > /proc/sys/vm/drop_caches
root@tombo-ThinkPad-X260:/mnt/disk-c# dd if=tempfile of=/dev/null bs=1M count=1024 status=progress
1066401792 bytes (1.1 GB, 1017 MiB) copied, 6 s, 177 MB/s
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 6.05448 s, 177 MB/s

結果

Disk Read Write
HDD 177 MB/s 177 MB/s
SSD その1 558 MB/s 560 MB/s
SSD その2 360 MB/s 361 MB/s
M.2 1.6GB/s 933 MB/s

hdparm

以下を実行

root@tombo-ThinkPad-X260:/home/tom__bo# echo 3 > /proc/sys/vm/drop_caches
root@tombo-ThinkPad-X260:/home/tom__bo# hdparm -tT <デバイス>
  • HDD
    • Timing cached reads: 37812 MB in 1.99 seconds = 18983.40 MB/sec
    • Timing buffered disk reads: 524 MB in 3.00 seconds = 174.57 MB/sec
  • SSD その1
    • Timing cached reads: 38480 MB in 1.99 seconds = 19319.50 MB/sec
    • Timing buffered disk reads: 1324 MB in 3.00 seconds = 440.80 MB/sec
  • SSD その2 (USB)
    • Timing cached reads: 36188 MB in 1.99 seconds = 18165.63 MB/sec
    • Timing buffered disk reads: 982 MB in 3.01 seconds = 326.78 MB/sec
  • M.2
    • Timing cached reads: 36440 MB in 1.99 seconds = 18292.07 MB/sec
    • Timing buffered disk reads: 4644 MB in 3.00 seconds = 1547.83 MB/sec

感想

M.2の速度良いけど、公称値の半分くらいしか出てない。。。
詳細な考察はfio使った実験でする