Skip to main content
QUICK REVIEW

[論文レビュー] RDMAvisor: Toward Deploying Scalable and Simple RDMA as a Service in Datacenters

Zhi Wang, Xiaoliang Wang|arXiv (Cornell University)|Feb 6, 2018
Cloud Computing and Resource Management参考文献 5被引用数 5
ひとこと要約

RDMAvisorは、仮想QPN(vQPN)を用いた共有QPair(QP)上の接続共有を可能にすることで、高レベルのアプリケーションと低レベルのRDMAの複雑さを分離する、スケーラブルでシンプルなRDMA as a Service(RaaS)抽象化を提示する。ロックフリーで適応的なトランスポート選択および効率的なバッファ管理を採用し、数千の接続にわたって低CPUおよびメモリオーバーヘッドで高いスループットを達成しており、単純なRDMAおよびロックベースのQP共有方式を凌駆する。

ABSTRACT

RDMA is increasingly adopted by cloud computing platforms to provide low CPU overhead, low latency, high throughput network services. On the other hand, however, it is still challenging for developers to realize fast deployment of RDMA-aware applications in the datacenter, since the performance is highly related to many lowlevel details of RDMA operations. To address this problem, we present a simple and scalable RDMA as Service (RaaS) to mitigate the impact of RDMA operational details. RaaS provides careful message buffer management to improve CPU/memory utilization and improve the scalability of RDMA operations. These optimized designs lead to simple and flexible programming model for common and knowledgeable users. We have implemented a prototype of RaaS, named RDMAvisor, and evaluated its performance on a cluster with a large number of connections. Our experiment results demonstrate that RDMAvisor achieves high throughput for thousand of connections and maintains low CPU and memory overhead through adaptive RDMA transport selection.

研究の動機と目的

  • データセンタでRDMA対応アプリケーションの迅速な展開を妨げる複雑で低レベルのRDMA設定の課題に対処すること。
  • 数千の接続がノードごとに一般的な大規模データセンタ環境におけるRDMAのスケーラビリティを向上させること。
  • 複数の接続にわたるRDMA Queue Pair(QP)の効率的再利用により、CPUおよびメモリオーバーヘッドを低減すること。
  • RDMAの運用詳細を抽象化しながらも高いパフォーマンスを維持できる、シンプルで柔軟なプログラミングモデルを提供すること。
  • 共有QP設計におけるロック競合が引き起こすパフォーマンス劣化を緩和すること。

提案手法

  • アプリケーション開発者が低レベルの詳細を意識しなくてよいように、RDMA verbsをソケットに似たインターフェースに抽象化するシャイムレイヤーを導入する。
  • 共有された物理的QP内での論理的接続を一意に識別するために、仮想QPN(vQPN)を用いる。
  • 片方向のRDMA操作(Read/Write)では、Work Requests(WRs)のwr_idフィールドにvQPNを格納して接続識別を実現する。
  • 両方向の操作(Send/Recv)では、WRsの即時データフィールド(imm_data)にvQPNを埋め込み、受信側での接続解決を可能にする。
  • OSの関与を最小限に抑えてレイテンシを低減するため、CQ(Completion Queues)のロックフリーでユーザースペースでのポーリングを実装する。
  • メッセージサイズおよびパフォーマンス特性に基づいて、RC/UC/UDを適応的に選択するトランスポート選択を採用してスループットとリソース使用を最適化する。

実験結果

リサーチクエスチョン

  • RQ1どのようにして、アプリケーション開発者が低レベルの運用複雑性を意識せずに、シンプルで再利用可能なサービス層としてRDMAを抽象化できるか?
  • RQ2限られたQPリソースを数千もの同時接続にわたって効率的かつスケーラブルに共有するためのメカニズムは何か?
  • RQ3共有QP上での接続多重化は、接続ごとのQP割り当てと比較して、スループット、CPU、メモリオーバーヘッドにどのように影響するか?
  • RQ4ロックフリーでユーザースペースでのポーリングおよび適応的トランスポート選択は、高並列RDMAワークロードにおけるCPUおよびメモリオーバーヘッドを顕著に低減できるか?
  • RQ5提案されたRaaS設計は、単純なRDMAおよび既存のロック競合を伴う共有QPアプローチをどの程度上回るか?

主な発見

  • RDMAvisorはノードあたり最大1,000の接続でも安定した高スループットを維持するが、単純なRDMAではQPの枯渇により400を超えると急激に性能が低下する。
  • 400未満の接続数でも、QP共有による高いバッチ効率のおかげで、単純なRDMAを上回る性能を発揮する。
  • RDMAvisorは単純なRDMAと比較してCPUおよびメモリオーバーヘッドを顕著に低減しており、リソース消費量は接続数に対して劣線形に増加する。
  • ロック競合に対して耐性があり、特にQPあたりのスレッド数が増加する際、ロックベースのQP共有方式を上回る性能を示す。
  • 適応的トランスポート選択により、メッセージサイズおよびネットワーク状態に応じてRC、UC、UDを最適に選択し、最適なパフォーマンスを実現する。
  • vQPNメカニズムにより、共有QP上での効率的でロックフリーな接続識別が可能になり、キャッシュミスが減少し、スケーラビリティが向上する。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。