Internet Wide Area RDMA Protocol
(IWarp から転送)
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2016/04/11 07:59 UTC 版)
Internet Wide Area RDMA Protocol (iWARP)とは、RDMA over TCP を実現する通信プロトコル群の総称である。iWARPはRDMAP (RDMA Protocol) とDDP (Direct Data Placement Protocol) により構成される。また、より下層のMPA (Marker PDU Aligned) フレーミングとTCP、 あるいはSCTPを含めることもある。これらのプロトコルはRDMAコンソーシアムによって策定された標準が Internet Engineering Task Force (IETF) によって改版された。
iWARPは、従来のTCP上でゼロコピー通信を可能とする仕様である Virtual Interface Architecture の上位セットである。
iWARPは InfiniBandの特徴をEthernetに移植したものとも見ることができる。
概要
TCPスタックのカーネル実装はボトルネックと考えられていたため、いくつかのベンダーはTCP処理をハードウェアで実装している。 ハードウェア実装されたTCPでは、密結合ネットワーク環境では単純なデータロストは稀なため、TCPのエラー訂正機構はソフトウェアで実行される一方、より頻繁に行われる通信はネットワークカード上の回路で直接処理される。 このようなハードウェアはTCP Offload Engine(TOE)として知られている。
TOE自身は受信側の計算機におけるコピーを削減しないため、ゼロコピー通信を実現するためにはRDMAハードウェアも必要となる。 このRDMA / TCP の使用は異なる複数のプロトコルの集合として、ハードウェア上に実装されている。これは、ソフトウェアとして実現することも可能だが、性能は落ちる。
複数のうち主要なプロトコルはDirect Data Placement (DDP)[1]である。DDPにより実際にゼロコピー通信が実現される。DDP自身は実際のデータ転送は行わず、データ転送はTCPにより行われる。
しかしながら、 TCPはメッセージ境界を意識しない。TCPはデータをバイトシーケンスとして、下層のプロトコルのデータサイズ(Protocol Data Unit, PDU)に配慮することなく送信する。よって、DDP自身はTCPよりSCTPを用いたほうがより効率が良くなるため、IETFは RDMA over SCTP の標準化にも関心を持っている。DDP over TCP にはMarker PDU Aligned (MPA) フレーミング[2]と呼ばれるメッセージ境界を固定する調整が必要となる。
また、DDPは直接アクセスされることは意図されていない。代わりに、RDMA Protocol (RDMAP) [3]がデータを読み書きするサービスを提供する。つまり、RDMA over TCP とは、実はRDMAP over DDP over MPA over TCPであると言える。これらのプロトコル全てがハードウェア実装されることが期待される。
プログラムインターフェース
iWARPはInfiniBand(IB)と同様、標準プログラムインターフェースを持たず、代わりにverbの集合が定義されている。[4]ただしIBとは異なり、iWARPはTCPとSCTPが提供する高信頼通信方式のみがサポートされている。 同様にiWARP仕様ではアトミックリモート操作などIBの持つ多くの特徴が省かれている。
iWARPのためのネットワークプロトコルは、Linux向けのものは OpenFabrics AllianceによるOpenFabrics Enterprise Distribution (OFED) に、Windows向けのものは Winsock Direct Protocol に含まれている。
iWARP上で用いられるプロトコル
- NFS over RDMA
- Sockets Direct Protocol (SDP)
- iSCSI Extensions for RDMA (iSER)
- SCSI RDMA Protocol (SRP)
脚注
- ^ RFC 5041 (DDP Protocol Specification)
- ^ RFC 5044 (MPA Framing for TCP)
- ^ RFC 5040 (RDMA Protocol Specification)
- ^ RDMA verbs Specification (Version 1.0)
外部リンク
- iWARP Consortium ニューハンプシャー大学 InterOperability 研究所 -- iWARP devicesのテスト
- EE Times iWARPに関する記事 (12/07/2001)
- Network World iWARPと競合技術に関する記事 (09/26/2005)
- Remote Direct Data Placement Charter IETFによるiWARP標準仕様
- NetEffect -- iWARP対応NICベンダー
- iVivity -- iWARP対応NICベンダー
- Chelsio Communications -- iWARP対応NICベンダー
- Lamprey Networks - Producers of iWARP 適合性試験ツールのベンダー.
- iWARP over SCTP -- ブリティッシュコロンビア大学の研究グループにより、国際会議CAC2008で発表された iWARP over SCTP に関する論文の発表資料
iWarp
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/03/18 17:20 UTC 版)
iWarpは、インテルとカーネギーメロン大学 (CMU) の共同プロジェクトとして開発された実験的な並列スーパーコンピュータである。 プロジェクトは、CMUのWARP研究プロジェクトの後継として、ひとつのマイクロプロセッサに並列計算に必要な機能(メモリと通信機能)を内蔵することを目標として1988年に始まった。そういう意味では、iWarpはトランスピュータやnCUBEに非常によく似ている[1]。
インテルは1989年にiWarpシステムを製品として発表した。最初の試作品はカーネギーメロン大学に1990年夏に納入され、秋には64セルの製品版が、1991年には追加の2台が納入されている。1992年夏にはインテル内にスーパーコンピューティングシステム部門が創設され、iWarpはiPSC製品とマージされひとつのシリーズとされた。インテルはiWarpを製品として残したが、積極的なマーケティングはやめた[2]。現在は製造されていない。
iWarpの各CPUは20MHzで動作し、32ビットALUと64ビットFPUを備えている。単純なパイプライン構造で1サイクルに1命令を実行するので、性能は 20MIPSである(浮動小数点は単精度で20MFLOPS、倍精度で10MFLOPS)[3][4]。通信はチップ上の別ユニットで制御され、40MB/sの4本のシリアルチャネルを装備している。このチャネルはハードウェアで20本の仮想チャネルとして扱うことが可能(INMOS T9000 に追加された機能と類似)。
CPUは基板上にメモリと共に実装されるが、インテルは高速で高価なSRAMを使った。ひとつの基板には4つのCPUと512K~4Mバイトのメモリが実装される。
iWarpでは ハイパーキューブではなくN×Mのトーラス型のネットワークでノードを接続した。典型的なシステムでは64個のCPUが 8×8のトーラスを構成している。この構成で最高 1.2GFLOPSを記録している。
iWArpプロジェクトを指揮したアーキテクトはジョージ・コックスである。スティーブン・マクギーディ(後のマイクロソフト副社長で、反トラスト法違反の裁判で証人として出廷したことがある)は、iWarpが完成する以前から使用可能な革新的な開発環境を作った。これはノードに対応するサン・マイクロシステムズのワークステーションをLAN上で相互接続し、iWarpのノード間通信プロトコルをソケット上でシミュレートしたものである。チップレベルのシミュレータではないが、並列ソフトウェア開発のスタート地点としては役立った。
iWarp向けにはCとFORTRANのコンパイラが開発されている。まずAT&TのUNIX向け pcc コンパイラがインテルとの契約に基づいて移植され、その後インテルが独自に修正・拡張を施した[5]。
脚注
- ^ Encyclopedia of Parallel Computing, Padua, David (Ed.), 2011, ISBN 978-0-387-09765-7
- ^ Thomas Gross and David R. O'Hallaron. iWarp: anatomy of a parallel computing system, MIT Press, Cambridge, MA, 1998.
- ^ Shekhar Borkar, Robert Cohn, George Cox, Sha Gleason, and Thomas Gross. iWarp: an integrated solution of high-speed parallel computing, Proceedings of the 1988 ACM/IEEE conference on Supercomputing, p.330-339, November 12-17, 1988.
- ^ Intel Corp. iWarp Microprocessor (Part Number 318153), Hillsboro, Oregon, 1991. Technical Information, Order Number 281006.
- ^ Ali-Reza Adl-Tabatabai, Thomas Gross, Guei-Yuan Lueh and James Reinders. Modeling Instruction-Level Parallelism for Software Pipelining. In Proceedings of the IFIP WG10.3 Working Conference on Architectures and Compilation Techniques for Fine and Medium Grain Parallelism, Orlando, FL, pages 321-330.
関連項目
外部リンク
固有名詞の分類
- IWarpのページへのリンク