Amazon Elastic Compute Cloud
Linux インスタンス用ユーザーガイド

メモリ最適化インスタンス

メモリ最適化インスタンスは、メモリ内の大きいデータセットを処理するワークロードに対して高速なパフォーマンスを実現するように設計されています。

R4、R5、R5a、および R5d インスタンス

これらのインスタンスは、以下の用途に適しています。

  • ハイパフォーマンスリレーショナル (MySQL) および NoSQL (MongoDB、Cassandra) データベース。

  • キー値タイプのデータ (Memcached および Redis) のインメモリキャッシュを提供する分散型ウェブスケールキャッシュストア。

  • ビジネスインテリジェンス用に最適化されたデータストレージ形式と分析機能 (SAP HANA など) を使用するインメモリデータベース。

  • 巨大な非構造化データ (金融サービス、Hadoop/Spark クラスター) のリアルタイム処理を実行するアプリケーション。

  • ハイパフォーマンスコンピューティング (HPC) および電子設計オートメーション (EDA) アプリケーション。

r5.metal および r5d.metal インスタンスでは、プロセッサやメモリなどのホストサーバーの物理リソースにアプリケーションから直接アクセスすることができます。これらのインスタンスは、次の用途に適しています。

  • 仮想環境で利用できない、または完全にサポートされていない低レベルのハードウェア機能 (例: Intel VT) へのアクセスを必要とするワークロード

  • ライセンスやサポートを目的として非仮想化環境で実行する必要があるアプリケーション

詳細については、「Amazon EC2 R5 インスタンス」を参照してください。

ハイメモリインスタンス

ハイメモリインスタンス (u-6tb1.metal, u-9tb1.metal, and u-12tb1.metal) は、インスタンスあたり 6TiB、9TiB、および 12TiBのメモリを提供します。これらのインスタンスは、SAP HANA の実稼働環境を含む大きなメモリ内のデータベースを実行するように設計されています。ホストハードウェアに直接アクセスできるベアメタルパフォーマンスを提供します。

X1 インスタンス

これらのインスタンスは、以下の用途に適しています。

  • SAP HANA などのメモリ内データベース (Business Suite S/4HANA の SAP 認定サポート、Business Suite on HANA (SoH)、Business Warehouse on HANA (BW)、および Data Mart Solutions on HANA を含む)。詳細については、「AWS クラウドの SAP HANA」を参照してください。

  • Apache Spark や Presto などのビッグデータ処理エンジン。

  • ハイパフォーマンスコンピューティング (HPC) アプリケーション。

詳細については、「Amazon EC2 X1 インスタンス」を参照してください。

X1e インスタンス

これらのインスタンスは、以下の用途に適しています。

  • 高性能データベース。

  • SAP HANA などのメモリ内データベース。詳細については、「AWS クラウドの SAP HANA」を参照してください。

  • メモリを大量に消費するエンタープライズアプリケーション。

詳細については、「Amazon EC2 X1e インスタンス」を参照してください。

z1d インスタンス

これらのインスタンスは、ハイコンピューティングとハイメモリの両方を提供し、以下の用途に最適です。

  • 電子設計オートメーション (EDA)

  • リレーショナルデータベースワークロード

z1d.metal インスタンスは、プロセッサとメモリなどのホストサーバーの物理リソースにアプリケーションが直接アクセスできるようにします。これらのインスタンスは、次の用途に適しています。

  • 仮想環境で利用できない、または完全にサポートされていない低レベルのハードウェア機能 (例: Intel VT) へのアクセスを必要とするワークロード

  • ライセンスやサポートを目的として非仮想化環境で実行する必要があるアプリケーション

詳細については、「Amazon EC2 z1d インスタンス」を参照してください。

ハードウェア仕様

メモリ最適化インスタンスのハードウェア仕様の要約を以下に示します。

インスタンスタイプ デフォルト vCPU メモリ (GiB)
r4.large 2 15.25
r4.xlarge 4 30.5
r4.2xlarge 8 61
r4.4xlarge 16 122
r4.8xlarge 32 244
r4.16xlarge 64 488
r5.large 2 16
r5.xlarge 4 32
r5.2xlarge 8 64
r5.4xlarge 16 128
r5.12xlarge 48 384
r5.24xlarge 96 768
r5.metal 96 768
r5a.large 2 16
r5a.xlarge 4 32
r5a.2xlarge 8 64
r5a.4xlarge 16 128
r5a.12xlarge 48 384
r5a.24xlarge 96 768
r5d.large 2 16
r5d.xlarge 4 32
r5d.2xlarge 8 64
r5d.4xlarge 16 128
r5d.12xlarge 48 384
r5d.24xlarge 96 768
r5d.metal 96 768
u-6tb1.metal 448 * 6,144
u-9tb1.metal 448 * 9,216
u-12tb1.metal 448 * 12,288
x1.16xlarge 64 976
x1.32xlarge 128 1,952
x1e.xlarge 4 122
x1e.2xlarge 8 244
x1e.4xlarge 16 488
x1e.8xlarge 32 976
x1e.16xlarge 64 1,952
x1e.32xlarge 128 3,904
z1d.large 2 16
z1d.xlarge 4 32
z1d.2xlarge 8 64
z1d.3xlarge 12 96
z1d.6xlarge 24 192
z1d.12xlarge 48 384
z1d.metal 48 384

* 各論理プロセッサは 224 コアのハイパースレッドです

各 Amazon EC2 インスタンスタイプのハードウェア仕様については、「Amazon EC2 インスタンスタイプ」を参照してください。

CPU オプションの指定についての詳細は、「CPU オプションの最適化」を参照してください。

メモリ性能

X1 インスタンスには、300 GiB/秒の持続可能なメモリ読み取り帯域幅と、140 GiB/秒の持続可能なメモリ書き込み帯域幅を提供する、Intel Scalable Memory Buffer が含まれます。

メモリ最適化インスタンスに対して有効にできる RAM の量の詳細については、「ハードウェア仕様」を参照してください。

メモリ最適化インスタンスにはハイメモリがあり、その処理能力を活用するためには 64 ビットの HVM AMI が必要です。HVM AMI は、メモリ最適化インスタンスの準仮想化 (PV) AMI よりも優れたパフォーマンスを提供します。詳細については、「」を参照してください。Linux AMI 仮想化タイプ

インスタンスのパフォーマンス

R4 インスタンスは、最大 64 個の vCPU に対応し、E5-2686v4 ベースの 2 個の AWS-customized Intel XEON プロセッサを使用します。このプロセッサはハイメモリ帯域幅と、より大きい L3 キャッシュにより、インメモリアプリケーションのパフォーマンスを向上させます。

X1e および X1 インスタンスは、最大 128 個の vCPU に対応し、4 個の Intel Xeon E7-8880 v3 プロセッサを使用します。このプロセッサは高メモリ帯域幅と、より大きい L3 キャッシュにより、メモリ内アプリケーションのパフォーマンスを向上させます。

ハイメモリインスタンス (u-6tb1.metal, u-9tb1.metal, and u-12tb1.metal) は、ミッションクリティカルなエンタープライズワークロードに最適化された最新世代の Intel Xeon Platinum 8176M(Skylake) プロセッサーを搭載した 8ソケットプラットフォームで動作する初のインスタンスです。

メモリ最適化インスタンスは、最新の Intel AES-NI 機能を通じてより高い暗号化のパフォーマンスを実現し、Intel Transactional Synchronization Extensions (TSX) のサポートによりインメモリトランザクションデータ処理のパフォーマンスを高めます。また、Advanced Vector Extensions 2 (Intel AVX2) プロセッサ命令のサポートにより、ほとんどの整数コマンドを 256 ビットに拡大します。

一部のメモリ最適化インスタンスでは、Linux のプロセッサの C ステートと P ステートを制御できます。C ステートは非アクティブ時のコアのスリープレベルを制御し、P ステートは希望するコアからのパフォーマンス (CPU 周波数で測定) を制御します。詳細については、「EC2 インスタンスタイプのプロセッサのステート制御」を参照してください。

ネットワークパフォーマンス

サポート対象のインスタンスタイプで、拡張されたネットワーキング機能を有効にすることができます。拡張ネットワーキングでは、パケット毎秒 (PPS) が非常に大きく、ネットワークのストレスが少なく、レイテンシーが低くなります。詳細については、「Linux の拡張ネットワーキング」を参照してください。

拡張されたネットワーキングのための Elastic Network Adapter (ENA) を使用するインスタンスタイプは、高いパケット/秒パフォーマンスと一貫して低いレイテンシーを同時に実現します。ほとんどのアプリケーションでは、高いレベルのネットワークパフォーマンスが一貫して必要なわけではありませんが、データの送受信時にアクセスする帯域幅を増やすことでメリットを得られます。ENA を使用し、「最大 10 Gbps」または「最大 25 Gbps」のネットワークパフォーマンスをサポートするインスタンスサイズでは、ネットワーク I/O クレジットメカニズムを使用して、平均帯域幅使用率に基づいてインスタンスにネットワーク帯域幅を割り当てます。これらのインスタンスでは、ネットワーク帯域幅がベースライン制限を下回るとクレジットを獲得し、これらのクレジットをネットワークデータ転送を実行するときに使用できます。

拡張ネットワーキングをサポートするメモリ最適化インスタンスのネットワークパフォーマンスの要約を以下に示します。

インスタンスタイプ ネットワークパフォーマンス 拡張ネットワーキング

r4.4xlarge 以下 | r5.4xlarge 以下 | r5a.4xlarge 以下 | r5d.4xlarge 以下 | x1e.8large 以下 | z1d.3xlarge 以下

最大 10 Gbps

ENA

r4.8xlarge | r5.12xlarge | r5a.12xlarge | r5d.12xlarge | x1.16xlarge | x1e.16xlarge | z1d.6xlarge

10 Gbps

ENA

r5a.24xlarge

20 Gbps

ENA

r4.16xlarge | r5.24xlarge | r5.metal | r5d.24xlarge | r5d.metal | u-6tb1.metal | u-9tb1.metal | u-12tb1.metal | x1.32xlarge | x1e.32xlarge | z1d.12xlarge | z1d.metal

25 Gbps

ENA

SSD I/O パフォーマンス

カーネルバージョン 4.4 以降の Linux AMI を使用し、インスタンスで利用可能なすべての SSD ベースのインスタンスストアボリュームを使用する場合は、以下の表に示されている IOPS (4,096 バイトブロックサイズ) のパフォーマンスを得ることができます (キューの深さの飽和度において)。それ以外の場合、IOPS パフォーマンスは低下します。

インスタンスサイズ 100% のランダム読み取り時 IOPS 書き込み IOPS

r5d.large *

30,000

15,000

r5d.xlarge *

59,000

29,000

r5d.2xlarge *

117,000

57,000

r5d.4xlarge *

234,000

114,000

r5d.12xlarge

700,000

340,000

r5d.24xlarge

1,400,000

680,000

r5d.metal

1,400,000

680,000

z1d.large *

30,000

15,000

z1d.xlarge *

59,000

29,000

z1d.2xlarge *

117,000

57,000

z1d.3xlarge *

175,000

75,000

z1d.6xlarge

350,000

170,000

z1d.12xlarge

700,000

340,000

z1d.metal

700,000

340,000

* これらのインスタンスの場合、最大で指定されたパフォーマンスを得ることができます。

インスタンスに SSD ベースのインスタンスストアボリュームを使用するほど、アーカイブできる書き込み IOPS の数は減少します。これは、SSD コントローラーが実行する必要がある追加の作業が原因です。SSD コントローラーは、利用可能な領域を見つけ、既存のデータを再書き込みし、未使用の領域を消去して、再書き込みができるようにします。このガベージコレクションというプロセスにより、SSD への内部的な書き込み増幅が発生し、ユーザーの書き込み操作に対する SSD 書き込み操作の割合として表示されます。書き込み操作が 4,096 バイトの倍数でないか、4,096 バイトの境界に整合していない場合、パフォーマンスの低下はさらに大きくなります。少量のバイト数または整合していないバイト数で書き込む場合、SSD コントローラーは周辺のデータを読み取り、その結果を新しい場所に保存する必要があります。このパターンにより、書き込み増幅が大幅に増え、レイテンシーが増加し、I/O パフォーマンスが大きく低下します。

SSD コントローラーは、複数の方法を利用すると、書き込み増幅の影響を減らすことができます。このような方法の 1 つには、SSD インスタンスストレージに領域を予約し、コントローラーが書き込み操作に利用できる領域をより効率的に管理できるようにすることです。これをオーバープロビジョニングと呼びます。インスタンスに提供された SSD ベースのインスタンスストアボリュームには、オーバープロビジョニングに対して予約された領域がありません。書き込み増幅を減らすには、ボリュームの 10% を未使用の状態のままにし、SSD コントローラーがこれをオーバープロビジョニングに使用できるようにすることをお勧めしますこれにより、使用できるストレージは減りますが、ディスクが総容量に近づいた場合でもパフォーマンスを向上させることができます。

TRIM をサポートするインスタンスストアボリュームの場合、TRIM コマンドを使用して、書き込んだデータが不要になったときはいつでも SSD コントローラーに通知することができます。これにより、より多くの空き領域がコントローラーに与えられ、その結果書き込み増幅が減り、パフォーマンスが向上します。詳細については、「インスタンスストアボリュームの TRIM のサポート」を参照してください。

インスタンスの機能

メモリ最適化インスタンスの機能の概要を以下に示します。

EBS のみ NVMe EBS インスタンスストア 配置グループ

R4

あり

なし

なし

あり

R5

あり

あり

なし

あり

R5a

あり

あり

なし

あり

R5d

なし

あり

NVME *

あり

u-6tb1.metal

あり

あり

なし

[No (なし)]

u-9tb1.metal

あり

あり

なし

[No (なし)]

u-12tb1.metal

あり

あり

なし

なし

X1

なし

なし

SSD

あり

X1e

なし

なし

SSD

あり

z1d

なし

あり

NVME *

あり

* ルートデバイスボリュームは、Amazon EBS ボリュームにする必要があります。

詳細については、以下を参照してください。

個の vCPU のサポート

メモリ最適化インスタンスは多数の vCPU を提供するため、vCPU の制限が低いオペレーティングシステムで起動の問題が発生することがあります。メモリ最適化インスタンスを起動する場合は、最新の AMI を使用することをお勧めします。

以下の AMI では、メモリ最適化インスタンスの起動がサポートされています。

  • Amazon Linux 2 (HVM)

  • Amazon Linux AMI 2016.03 (HVM) 以降

  • Ubuntu Server 14.04 LTS (HVM)

  • Red Hat Enterprise Linux 7.1 (HVM)

  • SUSE Linux Enterprise Server 12 SP1 (HVM)

  • Windows Server 2019

  • Windows Server 2016

  • Windows Server 2012 R2

  • Windows Server 2012

  • Windows Server 2008 R2 64 ビット

  • Windows Server 2008 SP2 64 ビット

リリースノート

  • R5 および R5d インスタンスは、3.1 GHz Intel Xeon Platinum 8000 シリーズプロセッサを搭載しています。

  • R5a インスタンスは、2.5 GHz AMD EPYC 7000 シリーズプロセッサを搭載しています。

  • ハイメモリ、R5、R5a、R5d、および z1d インスタンスの要件は以下のとおりです。

    • NVMe ドライバーがインストールされている必要があります。EBS ボリュームは NVMe ブロックデバイスとして公開されます。

    • Elastic Network Adapter (ENA) ドライバーがインストールされている必要があります。

    以下の AMI はこれらの要件を満たしています。

    • Amazon Linux 2

    • Amazon Linux AMI 2018.03

    • Ubuntu 14.04 以降

    • Red Hat Enterprise Linux 7.4 以降

    • SUSE Linux Enterprise Server 12 SP2 以降

    • CentOS 7 以降

    • FreeBSD 11.1 以降

  • R5、R5a、および R5d インスタンスは、ネットワークインターフェイス、EBS ボリューム、および NVMe インスタンスストアボリュームを含め、最大 28 のアタッチをサポートしています。インスタンスごとに 1 つ以上のネットワークインターフェイスのアタッチメントがあります。たとえば、EBS のみのインスタンスに追加のネットワークインターフェイスのアタッチがない場合は、そのインスタンスに 27 個の EBS ボリュームをアタッチできます。

  • ベアメタルインスタンスを起動すると、基盤となるサーバーが起動します。これには、すべてのハードウェアやファームウェアコンポーネントの確認が含まれます。つまり、インスタンスが実行状態になってからネットワーク経由で使用できるようになるまでに 20 分かかることがあります。

  • ベアメタルインスタンスから EBS ボリュームまたはセカンダリネットワークインターフェイスをアタッチまたはデタッチするには、PCIe のネイティブホットプラグサポートが必要です。Amazon Linux 2 および最新バージョンの Amazon Linux AMI は PCIe ネイティブホットプラグをサポートしていますが、以前のバージョンではサポートされていません。次の Linux カーネル設定オプションを有効にする必要があります。

    CONFIG_HOTPLUG_PCI_PCIE=y CONFIG_PCIEASPM=y
  • ベアメタルインスタンスでは、I/O ポートベースのシリアルデバイスではなく、PCI ベースのシリアルデバイスを使用しています。アップストリームの Linux カーネルと最新の Amazon Linux AMI は、このデバイスをサポートしています。また、ベアメタルインスタンスでは、システムが PCI ベースのシリアルデバイスを自動的に使用できるようにする ACPI SPCR テーブルも使用できます。最新の Windows AMI では、自動的に PCI ベースのシリアルデバイスが使用されます。

  • Windows Server 2008 SP2 64 ビット AMI を使用して、X1 インスタンス (x1.16xlargeインスタンスは除く) を起動することはできません。

  • Windows Server 2008 SP2 64 ビット AMI を使用して、X1e インスタンスを起動することはできません。

  • Windows Server 2008 R2 64-bit AMI の旧バージョンでは、r4.large および r4.4xlarge インスタンスを起動できません。この問題が発生した場合は、この AMI の最新バージョンに更新してください。

  • リージョンで起動できるインスタンスの合計数には制限があります。また、一部のインスタンスタイプにはその他の制限もあります。詳細については、「Amazon EC2 で実行できるインスタンスの数はいくつですか?」を参照してください。制限の引き上げをリクエストするには、「Amazon EC2 インスタンス申請フォーム」を使用します。