1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

EBSのgp2とgp3の細かな性能の違い

Posted at

EBS ボリュームタイプ gp3 の性能ってどうなの?

gp3がリリースされてから3ヶ月が経過したので(2020年12月→2021年3月)、そろそろ本番業務のサーバに使おうかな、と。

その前に生じた疑問、
「本当に gp3 は gp2 の上位互換なんだろうか」

念のために、ベンチマークツールでパフォーマンスをチェックすることに。

検証環境

###EC2 Instance

Region: ap-northeast-1
OS: Windows 2019 Server Base
Instance Type: c5.large
EBS#1: 200GiB gp2
EBS#2: 200GiB gp3 (3000 IOPS, 250 MB/s)

###検証ツール

  • fio
  • Crystal Disk Mark 8.0.1 x64

確認項目

ディスクの性能といえばこの3つの項目ですね。

  • 応答速度 (msec)
  • スループット(MB/s)
  • IOPS

gp3は、スループットIOPS の2つを自分の欲しい量だけ指定して構成します。
どちらも値を指定しているんだから、当然その性能は出るはずですよね。
応答速度 もIOPSの逆数になるんだったら(IOの多重度1で)、まあこれも問題ないよね。

検証結果 fio

いざ、fioで取得するとこのような結果に。

4多重度

fio.exe -filename=xxxx -direct=1 -rw=randread -bs=4k -size=1G -numjobs=4 -name=r4k -runtime=15
fio.exe -filename=xxxx -direct=1 -rw=write -bs=1m -size=1G -numjobs=4 -name=w1m -runtime=15
タイプ 応答速度(4K Block randread) スループット(1M block seqwrite) IOPS(4KB Block randread)
gp2 1.16msec 275MB/s 3432 IOPS
gp3 1.16msec 275MB/s 3441 IOPS

ほぼ同じだった。問題なし。
一応1多重度でもやってみよう。

1多重度

fio.exe -filename=xxxx -direct=1 -rw=randread -bs=4k -size=1G -numjobs=1 -name=r4kn1 -runtime=15
fio.exe -filename=xxxx -direct=1 -rw=write -bs=1m -size=1G -numjobs=1 -name=w1mn1 -runtime=15
タイプ 応答速度(4K Block randread) スループット(1M block seqwrite) IOPS(4KB Block randread)
gp2 0.32msec 275MB/s 3001 IOPS
gp3 0.92msec 275MB/s 1078 IOPS

おぉ、gp2の応答速度が短くなって、gp3の方は約 1000 IOPSになってしまった。。

検証結果 Crystal Disk Mark

Crystal Disk Markではどうなるか。

Random 4K QueueDepth=2, Thread=2
Random 4K QueueDepth=2, Thread=1
Random 4K QueueDepth=1, Thread=2
Random 4K QueueDepth=1, Thread=1
と設定して、4パターンを実施。

###gp2
ちゃんと 3000 IOPSでていますね。と思ったらおや、1613 がありますね。
多重度1の4K Writeだとgp2でも 3000 IOPS いかないのか。
つまり、gp2の時代から、こういうのは仕様の範疇だったということか。

gp2.png

###gp3
QueueDepth * Thread=1 の場合、約 1000 IOPS で、
QueueDepth * Thread=2 の場合、約 2000 IOPS との結果。
応答速度 1msec で IOの重ね合わせで 3000 IOPS出せるってことなのか。
fioでの結果と合いますね。

gp3.png

結論

gp2 から gp3 に変換すると、応答速度に敏感なごく一部のシステムでは、ひょっとすると性能低下がみられるかもしれません。
**が、**基本的には問題ないでしょう。
一般的な使い方では、多重度1でIO処理していることはないでしょうからね。

それよりも gp3 には大きなメリットがあります。

  • gp3は、1000 GiB 以下でもバーストクレジットの枯渇を気にしなくてよい!
  • gp2と同等スペックにするとほとんどのケースで安い!

特定条件でしか生じないデメリットなんてキニシナイで、gp3 にしてメリットを享受しましょう。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?