このトピックでは、Elastic Remote Direct Memory Access (eRDMA) の基本的な概念、利点、シナリオ、および仕様について説明します。
概要
eRDMAとは何ですか?
eRDMAは、Alibaba Cloudがクラウド向けに開発した柔軟なRDMA (Remote Direct Memory Access) ネットワークです。 eRDMAは、基盤となるリンクとして仮想プライベートクラウド (VPC) を再使用し、Alibaba Cloudによって開発された輻輳制御 (CC) アルゴリズムを使用します。 eRDMAは、RDMAサポートに基づく高スループットと低レイテンシを備えています。 RDMAと比較して、eRDMAは数秒以内に大規模なRDMAネットワーキングを実装します。 eRDMAは、従来の高性能コンピューティング (HPC) アプリケーションおよび伝送制御プロトコル /インターネットプロトコル (TCP/IP) アプリケーションをサポートする。
eRDMAを使用してHPCアプリケーションをクラウドにデプロイし、柔軟性の高い高性能アプリケーションクラスターを低コストで構築できます。 VPCをeRDMAネットワークに置き換えて、アプリケーションを高速化することもできます。
eRDMA機能の実装
eRDMAの機能は、eRDMAをサポートするインスタンスタイプに基づいて実装する必要があります。 eRDMA対応のelastic network Interface (ENI) を作成し、インスタンスタイプのElastic Compute Service (ECS) インスタンスにバインドして、大規模なRDMAネットワークサービス機能を提供できます。
Elastic RDMAインターフェイス (ERI) は、ECSインスタンスにバインドできる仮想ネットワークインターフェイスです。 ERIは、RDMAデバイスを有効にするためにENIに依存する必要があります。 ERIは、ENIが属するネットワークを再利用する。 これにより、元のネットワークでRDMA機能を使用し、ビジネスネットワーキングを変更することなく、RDMAによって提供される低レイテンシを享受することができます。
メリット
eRDMAは次の利点を提供します。
高性能
RDMAはカーネルスタックをバイパスして、ネットワーク伝送のためにユーザモードプログラムからホストチャネルアダプタ (HCA) にデータを転送します。 これにより、CPUの負荷とレイテンシが大幅に削減されます。 eRDMAは、従来のRDMAインターフェイスの利点を提供し、RDMAをVPCに適用します。 eRDMAは、RDMAがクラウドネットワークに提供する超低レイテンシを備えています。
説明HCAは、サーバをネットワークに接続し、RDMAのサポートを提供するハードウェアネットワークインタフェースカード (NIC) である。
包括性
eRDMAは無料で有効にできます。 eRDMAを有効にするには、ECSインスタンスの購入時にElastic RDMA Interfaceオプションのみを選択する必要があります。
大規模なデプロイ
従来のRDMAは、無損失ネットワークに基づいている。 これは、大規模な展開を高価かつ困難にする。 eRDMAは、Alibaba Cloudが開発したCCアルゴリズムを使用して、VPCの伝送品質 (レイテンシやパケット損失など) を制御します。 eRDMAは、損失の多いネットワークで優れたパフォーマンスを提供します。
スケーラビリティ
別個のハードウェアNICを必要とするRDMAと比較して、eRDMAは、Shenlongアーキテクチャに基づくクラウド属性を有するRDMA HCAカードを使用する。 eRDMAは、ECSの使用時にデバイスを動的に追加でき、ホット移行をサポートするため、柔軟なデプロイが可能です。
共有VPC
eRDMAはENIに依存し、ENIが属するネットワークを再利用する。 これにより、サービスネットワークを変更することなく、レガシーネットワークでRDMA機能をアクティブ化できます。
シナリオ
TCP/IPプロトコルスタックは、多くのアプリケーションが構築される主流のネットワーク通信プロトコルを提供する。 データセンターに関連するビジネスの発展に伴い、低レイテンシや高スループットなど、ネットワークパフォーマンスに対するより高い要件が課されています。 TCP/IPは、高いコピーオーバーヘッド、クロスプロトコルスタック処理、複雑なCCアルゴリズム、および頻繁なコンテキストスイッチングなどの制限により、通信ネットワークの性能を制限するボトルネックになっている。
RDMAは、前述の問題点を解決するのに役立ちます。 RDMAは、ゼロコピーやカーネルバイパスなどの機能を提供し、データがコピーされてコンテキストが頻繁に切り替えられるときのオーバーヘッドを防ぎます。 TCP/IP通信と比較して、RDMAは、低レイテンシ、高スループット、および低CPU使用率を特徴とする。 ただし、RDMAには、高価格とO&Mコストのため、いくつかの使用シナリオがあります。
Alibaba Cloud eRDMAは、多様なクラウド環境との包括的な互換性を持つように設計されています。 eRDMAは、低レイテンシを提供し、クラウド環境に適応してパフォーマンスを向上させる幅広いアプリケーションの要件を低減します。 従来のRDMAと比較して、eRDMAは、Redisベースのキャッシュデータベース、Sparkベースのビッグデータ分析、HPCのWeather Research and Forecasting Model (WRF) 、AIトレーニングなど、さまざまなシナリオで使用できます。 eRDMAは、前述のシナリオでかなりのパフォーマンス向上を提供します。
制限事項
eRDMAを使用する前に、次の条件が満たされていることを確認してください。 詳細については、「」をご参照ください。エンタープライズレベルのインスタンスでのeRDMAの設定.
基本仕様
このセクションでは、eRDMAの仕様について説明します。 eRDMAを使用する場合は、サービス仕様の要件が満たされていることを確認してください。 そうしないと、アプリケーションが期待どおりに機能しない場合があります。
RDMA QP
仕様 | コンテンツ | 説明 |
最大QP (max_qp_num) | 最大131,071のキューペア (QP) がサポートされています。 | QPの最大数は、インスタンスタイプによって異なります。 |
送信キューへの最大未処理WR (max_send_wr) | 8,192 | 送信キューにポストできる未処理の作業要求 (WR) の最大数。 |
受信キューへの最大未処理WR (max_recv_wr) | 32,768 | 受信キューにポストできる未処理のWRの最大数。 |
送信WRの最大SGE (max_send_sge) | 6 | 送信WR内のスキャッタギャザー要素 (SGE) の最大数。 |
受信WRの最大SGE (max_recv_sge) | 1 | 受信WR内のSGEの最大数。 |
SRQ | サポートされていません。 | なし。 |
QPタイプ | 信頼性の高い接続 (RC) | なし。 |
接続確立方法 | RDMA_CM | なし。 |
RDMA CQ
仕様 | コンテンツ | 説明 |
CQs | 完了キュー (CQ) の数は、インスタンスタイプによって異なります。 CQIの最大数は、QPの数の2倍である。 | なし。 |
CQのベクトル (vector_num) | CQ内のベクトルの数は、インスタンスタイプによって異なります。 CQにおけるベクトルの最大数は31である。 CPUの数は、QPの数に関連する。 |
|
最大CEQ深度 | 256 |
|
最大CQ深度 | 1,048,576 | なし。 |
RDMA MR
仕様 | コンテンツ |
MRs | メモリ領域 (MR) の数は、インスタンスタイプによって異なります。 MRの最大数は、QPの数の2倍である。 |
MWs | 非対応 |
最大MRサイズ | MRのサイズは、基盤となるハードウェアによって異なります。 サポートされるMRの最小サイズは2 GB、サポートされるMRの最大サイズは64 GBです。 |
サポートされているRDMA動詞opcode
オペコード | 変更の可否 |
RDMA書き込み | はい。 |
即時でのRDMA書き込み | はい。 |
RDMA読み取り | はい。 |
送信 | はい。 |
無効にして送信 | はい。 |
即時送信 | はい。 |
Solicitedイベントで送信 | はい。 |
ローカル無効化 | カーネルモードVerbsオペコードのみがサポートされています。 |
アトミック操作 | いいえ。 |