共有メモリとの比較
~ RapidExpress製品による通信の特長 ~

RapidExpressは業界標準規格であるRapidIOにより、ノード間の高速データ転送を実現します。
直接接続された二つのノードによる構成のほか、スイッチを用いて複数のノードを接続することができます。
通信プロトコルはハードウェアが処理するため高速で低遅延な通信が可能です。

 

ここでは、データ転送手法としてよく比較されるメモリ共有型のデータ転送方式との違いについて解説します。

RapidIO とは?

RapidIO はオープンスタンダード技術です!

Ericsson社, Freescale社, TI社, IDT社, ALTERA社, Xilinx社等、多くのデバイスメーカやIPベンダー、およびボードベンダーが加盟するRapidIO Trade Associationにて規格の策定及び管理が行われており、RapidIO規格はRapidIO Trade Associationのホームページで無償公開されています。

 

RapidIOは直接接続された二つのノードによる構成のほか、スイッチを用いて複数のノードを接続することができます。
通信プロトコルはハードウェアが処理するため高速で低遅延な通信が可能です。

詳しくはRapioIO概要解説ページへ

データ転送手法

RapidIOでは、転送元の主メモリにあるデータを、転送先の主メモリに直接転送をします。

転送先ではデータがすでに主メモリに入っているため、データを読み出すためのAPIコール等は不要で、CPUは即座にデータを参照することができます。


共有メモリ型通信では、転送元の主メモリにあるデータを共有メモリに転送した後に、転送元の共有メモリから転送先の共有メモリにデータが転送されます。 転送先では、データが主メモリに存在しないため、参照するためには共有メモリから主メモリに転送してからでないとCPUが直接データを参照することができません。


 

トポロジーの柔軟性

RapidIOは、単一のスイッチで十数個のノードを接続することができます。複数のスイッチを用いることで、冗長性を持たせたり、トラフィックパターンに最適化したトポロジーで、多数のノードを接続することができます。

一方、一般的な共有メモリ型通信ではリング型トポロジーを利用します。トラフィックパターンにあわせたノード配置の自由度が低く、ノード数が多くなると対向するノードへの伝播遅延が比例して大きくなります。また、リング型トポロジーでは多数のノードでリンクを共有するため、隣接するノード以外へのデータ転送が複数のノードで発生するとシステムとしての実効帯域が著しく低下します。


接続互換性

RapidIOは業界標準の規格で、多数のメーカーがサポートしており、ボード製品をはじめ、デバイスやIPコアなどの選択肢も多く存在します。

共有メモリ型通信の製品は、各社独自のプロトコルを実装しているため、他社製品との接続互換性がなく、製品選択の自由度が制限されます。

 

転送性能

実際にRapidExpress製品を用いて転送性のを測定してみました。

RapidIOプロトコル仕様上の論理値ではなく、ソフトウェアのオーバーヘッドを含めた、アプリケーションとしての実効値です。

(注)環境により実効値は異なります。

 

Comming Soon...