「i3」新しいストレージ最適化インスタンスが利用可能になりました

2017.02.25

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

AWSチームのすずきです。

2016年のre:Inventで発表された、新しいストレージ最適化インスタンスの「i3」が、 本日(2017/2/24)、東京を含む各国リージョンで利用可能になりました。

早速「i3」のインスタンスを起動する機会がありましたので、紹介させて頂きます。

【速報】EC2に新しいインスタンスタイプ T2/R4/I3/C5/F1が追加されました #reinvent

比較

  • 新しいストレージ最適化インスタンスの「i3」と、「i2」の比較を実施しました。

ec2-i3-disk-03

スペック

  • 「i2」では提供の無かった「i3.large」、「i3.16xlarge」が追加された事で、インスタンスタイプの選択が広がりました。
  • インスタンスストレージの容量、「i3」はおよそ2割増量されています。
  • 「i3」のインスタンスストアのSSDはNVMe(Non Volatile Memory express)になりました。仮想ホストのPCI Expressを利用した高性能が期待できます。
  • ネットワーク性能は先行でリリースされている「r4」と同表記。「r4」と同様、バーストによる高いネットワークパフォーマンスが期待できます。

EC2 新インスタンスタイプ R4 のネットワークパフォーマンスを調べてみた

料金

  • 料金は東京リージョンの利用費(Linux/Unix、オンデマンド1時間料金)
  • インスタンスストレージ容量の単位は「GB」

「i3」と「i2」

インスタンスタイプ vCPU i3インスタンスストレージ i2インスタンスストレージ i3料金 i2料金
large 2 1 x 475 NVMe SSD - $0.18 -
xlarge 4 1 x 950 NVMe SSD 1 x 800 SSD $0.37 $1.00
2xlarge 8 1 x 1900 NVMe SSD 2 x 800 SSD $0.73 $2.00
4xlarge 16 2 x 1900 NVMe SSD 4 x 800 SSD $1.46 $4.00
8xlarge 32 4 x 1900 NVMe SSD 8 x 800 SSD $2.93 $8.00
16xlarge 64 8 x 1900 NVMe SSD - $5.86 -
  • 同じインスタンスタイプで比較した場合、「i3」は「i2」のおよそ1/3の費用で利用出来るようになりました。

「xlarge」で比較

インスタンスタイプ インスタンスストレージ(GB) Linux/UNIX 料金(1時間)
r4.xlarge EBS のみ $0.32
i3.xlarge 1 x 950 NVMe SSD $0.366
r3.xlarge 1 x 80 SSD $0.399
  • 同等のインスタンスタイプ「xlarge」で比較した場合、「i3」は、前世代のメモリ最適化インスタンス「r3」よりも廉価に利用する事が可能です。

CPU

CPU情報(/proc/cpuinfo)

---
> model name    : Intel(R) Xeon(R) CPU E5-2686 v4 @ 2.30GHz
20c20
---
> flags     : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx pdpe1gb rdtscp lm constant_tsc rep_good nopl xtopology aperfmperf eagerfpu pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch fsgsbase bmi1 hle avx2 smep bmi2 erms invpcid rtm rdseed adx xsaveopt
  • 「i2」インスタンスのCPUモデルは、先行リリースされていたメモリ最適化インスタンスの「r4」と同一でした。

ベンチマーク

  • CrystalDiskMark(5.2.1) を利用し、インスタンスストア領域を対象としたベンチマークを実施しました
項目 i2.xlarge i3.xlarge i3.4xlarge(SSD x1) i3.4xlarge(SSD x2)
Sequential Read (Q= 32,T= 1) 416.136 MB/s 1016.586 MB/s 2005.087 MB/s 4029.246 MB/s
Sequential Write (Q= 32,T= 1) 433.957 MB/s 412.264 MB/s 810.558 MB/s 1623.997 MB/s
Random Read 4KiB (Q= 32,T= 1) 218.282 MB/s [ 53291.5 IOPS] 418.716 MB/s [102225.6 IOPS] 388.577 MB/s [ 94867.4 IOPS] 307.188 MB/s [ 74997.1 IOPS]
Random Write 4KiB (Q= 32,T= 1) 190.406 MB/s [ 46485.8 IOPS] 89.532 MB/s [ 21858.4 IOPS] 159.075 MB/s [ 38836.7 IOPS] 257.901 MB/s [ 62964.1 IOPS]
Sequential Read (T= 1) 400.716 MB/s 1012.759 MB/s 1564.917 MB/s 2326.379 MB/s
Sequential Write (T= 1) 423.126 MB/s 418.101 MB/s 815.553 MB/s 1631.183 MB/s
Random Read 4KiB (Q= 1,T= 1) 22.584 MB/s [ 5513.7 IOPS] 41.227 MB/s [ 10065.2 IOPS] 40.331 MB/s [ 9846.4 IOPS] 38.996 MB/s [ 9520.5 IOPS]
Random Write 4KiB (Q= 1,T= 1) 41.316 MB/s [ 10086.9 IOPS] 78.563 MB/s [ 19180.4 IOPS] 104.519 MB/s [ 25517.3 IOPS] 92.844 MB/s [ 22667.0 IOPS]
  • 並列度の高い書込性能は「i2」が優れる可能性がありますが、「i3」帯域の広さなどが予測される結果となりました。
  • 「i3」の上位インスタンスでは、ストライピングによりIO性能の向上が期待できる事が確認できました。

環境

  • OS: Windows_Server-2016-Japanese-Full-Base-2017.01.11 (ami-574f3330)
  • ツール: CrystalDiskMark 5.2.1 x64
  • 測定条件: 32GiB × 3回測定

結果

i2.xlarge
 -----------------------------------------------------------------------
 CrystalDiskMark 5.2.1 x64 (C) 2007-2017 hiyohiyo
                            Crystal Dew World : http://crystalmark.info/
 -----------------------------------------------------------------------
 * MB/s = 1,000,000 bytes/s [SATA/600 = 600,000,000 bytes/s]
 * KB = 1000 bytes, KiB = 1024 bytes

    Sequential Read (Q= 32,T= 1) :   416.136 MB/s
   Sequential Write (Q= 32,T= 1) :   433.957 MB/s
   Random Read 4KiB (Q= 32,T= 1) :   218.282 MB/s [ 53291.5 IOPS]
  Random Write 4KiB (Q= 32,T= 1) :   190.406 MB/s [ 46485.8 IOPS]
          Sequential Read (T= 1) :   400.716 MB/s
         Sequential Write (T= 1) :   423.126 MB/s
    Random Read 4KiB (Q= 1,T= 1) :    22.584 MB/s [  5513.7 IOPS]
   Random Write 4KiB (Q= 1,T= 1) :    41.316 MB/s [ 10086.9 IOPS]

   Test : 32768 MiB [D: 0.0% (0.2/745.1 GiB)] (x3)  [Interval=5 sec]
   Date : 2017/02/24 14:11:19
     OS : Windows Server 2016 Datacenter (Full installation) [10.0 Build 14393] (x64)
i3.xlarge
-----------------------------------------------------------------------
CrystalDiskMark 5.2.1 x64 (C) 2007-2017 hiyohiyo
                           Crystal Dew World : http://crystalmark.info/
-----------------------------------------------------------------------
* MB/s = 1,000,000 bytes/s [SATA/600 = 600,000,000 bytes/s]
* KB = 1000 bytes, KiB = 1024 bytes

   Sequential Read (Q= 32,T= 1) :  1016.586 MB/s
  Sequential Write (Q= 32,T= 1) :   412.264 MB/s
  Random Read 4KiB (Q= 32,T= 1) :   418.716 MB/s [102225.6 IOPS]
 Random Write 4KiB (Q= 32,T= 1) :    89.532 MB/s [ 21858.4 IOPS]
         Sequential Read (T= 1) :  1012.759 MB/s
        Sequential Write (T= 1) :   418.101 MB/s
   Random Read 4KiB (Q= 1,T= 1) :    41.227 MB/s [ 10065.2 IOPS]
  Random Write 4KiB (Q= 1,T= 1) :    78.563 MB/s [ 19180.4 IOPS]

  Test : 32768 MiB [D: 0.0% (0.2/884.6 GiB)] (x3)  [Interval=5 sec]
  Date : 2017/02/24 14:16:11
    OS : Windows Server 2016 Datacenter (Full installation) [10.0 Build 14393] (x64)
i3.4xlarge
  • 1 x 1900 NVMe SSD
 -----------------------------------------------------------------------
 CrystalDiskMark 5.2.1 x64 (C) 2007-2017 hiyohiyo
                            Crystal Dew World : http://crystalmark.info/
 -----------------------------------------------------------------------
 * MB/s = 1,000,000 bytes/s [SATA/600 = 600,000,000 bytes/s]
 * KB = 1000 bytes, KiB = 1024 bytes

    Sequential Read (Q= 32,T= 1) :  2005.087 MB/s
   Sequential Write (Q= 32,T= 1) :   810.558 MB/s
   Random Read 4KiB (Q= 32,T= 1) :   388.577 MB/s [ 94867.4 IOPS]
  Random Write 4KiB (Q= 32,T= 1) :   159.075 MB/s [ 38836.7 IOPS]
          Sequential Read (T= 1) :  1564.917 MB/s
         Sequential Write (T= 1) :   815.553 MB/s
    Random Read 4KiB (Q= 1,T= 1) :    40.331 MB/s [  9846.4 IOPS]
   Random Write 4KiB (Q= 1,T= 1) :   104.519 MB/s [ 25517.3 IOPS]

   Test : 32768 MiB [E: 0.0% (0.2/1769.4 GiB)] (x3)  [Interval=5 sec]
   Date : 2017/02/24 10:29:35
     OS : Windows Server 2016 Datacenter (Full installation) [10.0 Build 14393] (x64)
i3.4xlarge
  • 2 x 1900 NVMe SSD (ストライピング)
 -----------------------------------------------------------------------
 CrystalDiskMark 5.2.1 x64 (C) 2007-2017 hiyohiyo
                            Crystal Dew World : http://crystalmark.info/
 -----------------------------------------------------------------------
 * MB/s = 1,000,000 bytes/s [SATA/600 = 600,000,000 bytes/s]
 * KB = 1000 bytes, KiB = 1024 bytes

    Sequential Read (Q= 32,T= 1) :  4029.246 MB/s
   Sequential Write (Q= 32,T= 1) :  1623.997 MB/s
   Random Read 4KiB (Q= 32,T= 1) :   307.188 MB/s [ 74997.1 IOPS]
  Random Write 4KiB (Q= 32,T= 1) :   257.901 MB/s [ 62964.1 IOPS]
          Sequential Read (T= 1) :  2326.379 MB/s
         Sequential Write (T= 1) :  1631.183 MB/s
    Random Read 4KiB (Q= 1,T= 1) :    38.996 MB/s [  9520.5 IOPS]
   Random Write 4KiB (Q= 1,T= 1) :    92.844 MB/s [ 22667.0 IOPS]

   Test : 32768 MiB [D: 0.0% (0.3/3535.9 GiB)] (x3)  [Interval=5 sec]
   Date : 2017/02/24 10:22:39
     OS : Windows Server 2016 Datacenter (Full installation) [10.0 Build 14393] (x64)

SSD情報

  • CrystalDiskInfo を利用し、「i3.xlarge」のNVMe接続されたSSD情報の確認を試みました
 ----------------------------------------------------------------------------
 CrystalDiskInfo 7.0.5 (C) 2008-2016 hiyohiyo
                                 Crystal Dew World : http://crystalmark.info/
 ----------------------------------------------------------------------------

     OS : Windows Server 2016 Datacenter (Full installation) [10.0 Build 14393] (x64)
   Date : 2017/02/24 14:10:12

 -- Controller Map ----------------------------------------------------------
  - ATA Channel 0 (0) [ATA]
  - ATA Channel 1 (1) [ATA]
  + Intel(R) 82371SB PCI Bus Master IDE Controller [ATA]
    - ATA Channel 0 (0)
    - ATA Channel 1 (1)
  - Microsoft 記憶域コントローラー [SCSI]
  + AWS PV Storage Host Adapter [SCSI]
    - AWS PVDISK SCSI Disk Device
  + 標準 NVM Express コントローラー [SCSI]
    - Amazon EC2 NVMe Instance Storage

 -- Disk List ---------------------------------------------------------------
  (1) Amazon EC2 NVMe Instance Storage : 949.9 GB [0/2/0, sq] - nv

 ----------------------------------------------------------------------------
  (1) Amazon EC2 NVMe Instance Storage
 ----------------------------------------------------------------------------
            Model : Amazon EC2 NVMe Instance Storage
         Firmware : 0
    Serial Number : AWS11E043B6DD4BC2BED
        Disk Size : 949.9 GB
      Buffer Size : 不明
     # of Sectors : 
    Rotation Rate : ---- (SSD)
        Interface : NVM Express
    Major Version : NVM Express 1.0/1.1
    Minor Version : 
    Transfer Mode : PCIe 0.0 x0 | PCIe 0.0 x0
   Power On Hours : 0 時間
   Power On Count : 不明
       Host Reads : 48 GB
      Host Writes : 20 GB
      Temperature : 0 C (32 F)
    Health Status : 正常 (100 %)
         Features : S.M.A.R.T.
        APM Level : ----
        AAM Level : ----
     Drive Letter : D:

まとめ

今回リリースされた「i3」インスタンス、これまで「i2」では高価だった大容量のインスタンスストアを廉価に利用する事が可能になりました。

「i3.16xlarge」などハイスペックのインスタンスは、オンメモリ処理が困難だが高速なIO処理が求められる集計用のDBや、 分散ストレージなどでも活用できる場面が増えると予想されます。

また、EBS専用でインタンスストアを持たないメモリ最適化インスタンス「r4」と同等のCPU性能の「i3」の費用差は+10%程度。 「i3」の高速、大容量なインスタンスストアを、スワップや一時作業領域として活用する事で、EBS費用の削減やシステム性能の向上が 実現出来る可能性があります。通常のサーバ用途でも、インスタンスストアが活用出来る場合には、「i3」インスタンスの利用をぜひご検討頂くことをお薦めします。

ただし、「nvme」に対応しないOSでは、カーネルへの更新やドライバの追加などが必要となるケースもある模様です。 今回、AWSが提供するAMIを利用して起動した、AmazonLinux(201609)、WindowsServer2016では、「i3」インスタンスの「nvme」で接続されたインスタンスストアを認識させる事が出来ましたが、 古めのOSをi3インスタンスで起動する場合にはご注意ください。

参考リンク