HyperAI超神経

リモート ダイレクト メモリ アクセス リモート ダイレクト メモリ アクセス (RDMA) 

コンピュータコンピューティングの分野では、リモート ダイレクト メモリ アクセス (RDMA) は、ダイレクト メモリ アクセス テクノロジです。両方のオペレーティング システムの介入なしに、あるコンピュータのメモリから別のコンピュータのメモリにデータを直接転送します。 RDMA は多くのリソースを解放できるため、システムのスループットとパフォーマンスが向上します。読み取りや書き込みなどの操作は、コンピュータの CPU を中断することなく、リモート コンピュータ上で実行できます。このテクノロジーは、データ転送速度の向上とネットワークの低遅延化に役立ち、特に大規模並列コンピューター クラスターでの使用に適しています。 RDMA は、ネットワーク アダプタがデータをシステム バッファに直接転送できるようにすることで、ゼロコピー ネットワークを使用します。

RDMA ワークフロー

RDMA は、InfiniBand や RoCE (RDMA over Converged Ethernet) などの RDMA 対応ネットワーク インターフェイス コントローラー (NIC) を使用して動作します。これらの NIC には、CPU を介さずに接続されたシステムのメモリに直接アクセスできる特殊なハードウェアが備わっています。システムが RDMA を使用してデータを転送したい場合、NIC にリクエストを送信し、NIC は専用のハードウェアを使用してデータを別のシステムのメモリに直接転送します。

RDMA の利点:

  • 高性能:RDMA は、低遅延と高帯域幅により、システム間のデータ転送に高いパフォーマンスを提供します。
  • CPU効率:RDMA は、CPU を介さずにシステム間でデータを直接転送し、システム リソースを他のタスクに解放します。
  • ネットワークの混雑を軽減します。RDMA は、システム間の直接データ転送を可能にすることでネットワークの輻輳を軽減し、ネットワーク トラフィックを削減します。
  • 安全:RDMA は、システム間で転送されるデータを暗号化することでセキュリティを強化します。
  • スケーラビリティ:RDMA は拡張性が高く、システム間の大規模なデータ転送をサポートできます。

リモート ダイレクト メモリ アクセス (RDMA) の欠点:

  • 互換性:RDMA には特殊なハードウェアとソフトウェアが必要であり、すべてのシステムでサポートされているわけではありません。
  • 料金:RDMA は高価であり、特殊なハードウェアとソフトウェアが必要になるため、すべての組織にとってコスト効率が良いとは限りません。
  • 複雑:RDMA の設定と管理は複雑になる場合があり、専門的な知識とスキルが必要です。
  • 限られた範囲:RDMA は通常、非常に近接したシステム間のデータ伝送に使用されるため、その適用範囲が制限されます。
  • 契約制限:RDMA は特定のプロトコルとのみ互換性があるため、他のシステムとの互換性が制限される可能性があります。

 RDMA の特徴:

  • ゼロコピーネットワーク: ネットワーク層間でデータをコピーすることなく、アプリケーション バッファ間で直接データを送受信できます。
  • CPU の関与を軽減する: アプリケーションは、リモート サーバーの CPU 時間を消費せずに、リモート サーバーから直接データにアクセスできます。また、リモート サーバーの CPU キャッシュが、アクセスされたコンテンツでいっぱいになることはありません。
  • 有効な取引: データはストリームではなく個別のメッセージとして送受信されるため、個別のメッセージが必要ありません。

参考文献

【1】https://www.geeksforgeeks.org/remote-direct-memory-access-rdma/

【2】https://en.wikipedia.org/wiki/Remote_direct_memory_access