![]() 標準をサポートするグループ | |
| 略語 | SCIZZL |
|---|---|
| 形成 | 1996 |
| タイプ | 非営利 |
| Webサイト | ホームページ |
スケーラブルコヒーレント インターフェイスまたはスケーラブル コヒーレント インターコネクト( SCI ) は、共有メモリ マルチプロセッシングおよびメッセージ パッシング用の高速相互接続標準です。目標は、優れた拡張性、システム全体のメモリ一貫性、およびシンプルなインターフェイスを提供することです。つまり、マルチプロセッサ システムの既存のバスを、固有のスケーラビリティとパフォーマンスの制限のないバスに置き換える標準です。
IEEE Std 1596-1992、スケーラブルコヒーレントインターフェース(SCI)のIEEE標準は、1992年3月19日にIEEE標準委員会によって承認されました。[1] 1990年代には多少使用されていましたが、広く使用されることはなく、2000年代初頭から他のシステムに置き換えられました。
歴史
1987 年にFastbus (IEEE 960) の後継であるFuturebus (IEEE 896) プロジェクトが開始された直後、一部のエンジニアは、1990 年代初頭にリリースされる頃には、高性能コンピューティング市場にとってはすでに遅すぎるだろうと予測しました。これに対応して、1987 年 11 月に「Superbus」研究グループが結成されました。電気電子技術者協会 (IEEE) の標準化団体の別のワーキング グループが分離し、1988 年 7 月にこの市場を対象とした標準を作成しました。[2]これは基本的に、Futurebus 機能のサブセットであり、高速で簡単に実装でき、 VMEbus などの他のシステムに接続しやすくするための小さな追加機能も備えていました。開発者のほとんどは、高速コンピュータ バスの経験がありました。コンピュータ業界および研究コミュニティの企業からの代表者としては、Amdahl、Apple Computer、BB&N、Hewlett-Packard、CERN、Dolphin Server Technology、Cray Research、Sequent、AT&T、Digital Equipment Corporation、McDonnell Douglas、National Semiconductor、Stanford Linear Accelerator Center、Tektronix、Texas Instruments、Unisys、オスロ大学、ウィスコンシン大学などがありました。
当初の意図は、コンピュータ内のすべてのバスに単一の標準を適用することでした。[3] ワーキング グループはすぐに、挿入リングの形でポイントツーポイント通信を使用するというアイデアを思いつきました。これにより、集中容量、物理的な長さ/光速の制限の問題、スタブ反射が回避され、並列トランザクションが可能になります。挿入リングの使用は、ワーキング グループの初期の会議の 1 つで提案した Manolis Katevenis の功績です。標準を開発するワーキング グループは、David B. Gustavson (議長) と David V. James (副議長) によって主導されました。[4]
David V. James は、実行可能な C コードを含む仕様の作成に大きく貢献しました。[引用が必要]オスロ大学の Stein Gjessing のグループは形式手法を使用してコヒーレンス プロトコルを検証し、Dolphin Server Technology はキャッシュ コヒーレンス ロジックを含むノード コントローラ チップを実装しました。

SCI のさまざまなバージョンと派生版が、Dolphin Interconnect Solutions、 Convex、Data General AViiON (Dolphin のキャッシュ コントローラとリンク コントローラ チップを使用)、 Sequent、 Cray Research などの企業によって実装されました。 Dolphin Interconnect Solutions は、非コヒーレント共有メモリ アクセスを提供する PCI および PCI-Express 接続の SCI 派生版を実装しました。 この実装は、Sun Microsystemsのハイエンド クラスタ、Thales Group、および HPC クラスタリングと医療用画像処理内でのメッセージ パッシング用のボリューム アプリケーションを含むいくつかの企業で使用されました。 SCI は、非均一メモリ アクセスアーキテクチャを実装するためによく使用されました。 また、 Sequent Computer Systemsでは、NUMA-Q システムのプロセッサ メモリ バスとして使用されました。 Numascale は、コヒーレント HyperTransportと接続するための派生版を開発しました。
標準
この標準では、2 つのインターフェース レベルが定義されています。
- 電気信号、コネクタ、機械的および熱的条件を扱う物理的なレベル
- アドレス空間、データ転送プロトコル、キャッシュ一貫性メカニズム、同期プリミティブ、制御およびステータス レジスタ、初期化およびエラー回復機能を記述する論理レベル。
この構造により、論理レベルでの再設計なしに、物理インターフェース技術の新しい開発を簡単に適応できるようになりました。
大規模システムのスケーラビリティは、分散ディレクトリベースのキャッシュ一貫性モデルによって実現されます。(キャッシュ一貫性の他の一般的なモデルは、システム全体のメモリ トランザクションの盗聴 (スヌーピング) に基づいていますが、これはあまりスケーラブルではありません。) SCI では、各ノードに、特定のキャッシュ ラインを共有するリンク リスト内の次のノードへのポインターを含むディレクトリが含まれています。
SCI は 64 ビットのフラット アドレス空間 (16 エクサバイト) を定義します。このうち 16 ビットはノードの識別に使用され (65,536 ノード)、48 ビットはノード内のアドレスに使用されます (256 テラバイト)。ノードには多数のプロセッサやメモリを含めることができます。SCI 標準はパケット交換ネットワークを定義します。
トポロジー
SCI は、集中型スイッチングから完全分散型スイッチングまで、さまざまなタイプのスイッチング トポロジを持つシステムを構築するために使用できます。
- 中央スイッチの場合、各ノードはリングレット (この場合は 2 ノード リング) を使用してスイッチに接続されます。
- 分散スイッチング システムでは、各ノードを任意の長さのリングに接続でき、すべてのノードまたは一部のノードを 2 つ以上のリングに接続できます。
これらの多次元トポロジーを記述する最も一般的な方法は、k 元 n キューブ (またはトーラス) です。SCI 標準仕様では、このようなトポロジーが例としていくつか挙げられています。
2Dトーラスは、2 次元のリングの組み合わせです。2 次元間の切り替えには、ノードに小さな切り替え機能が必要です。これは、3 次元以上に拡張できます。リングを折りたたむという概念をトーラス トポロジに適用して、長い接続セグメントを回避することもできます。
取引
SCI は情報をパケットで送信します。各パケットは、16 ビットのシンボルの連続したシーケンスで構成されます。シンボルにはフラグ ビットが付きます。フラグ ビットが 0 から 1 に遷移すると、パケットの開始を示します。1 から 0 に遷移するのは、パケット終了の 1 シンボル前 (エコーの場合) または 4 シンボル前です。パケットには、アドレス コマンドとステータス情報、ペイロード (0 から任意のデータ長まで)、および CRC チェック シンボルを含むヘッダーが含まれます。パケット ヘッダーの最初のシンボルには、宛先ノードのアドレスが含まれます。アドレスが受信ノードによって処理されるドメイン内にない場合、パケットはバイパス FIFO を介して出力に渡されます。それ以外の場合、パケットは受信キューに送られ、別の次元のリングに転送される場合があります。すべてのパケットは、スクラバーを通過するときにマークされます (リングが初期化されると、ノードはスクラバーとして確立されます)。有効な宛先アドレスのないパケットは、リングがパケットでいっぱいにならないように、スクラバーを 2 回目に通過するときに削除されます。
キャッシュの一貫性
キャッシュ コヒーレンスは、マルチプロセッサ システムでデータの一貫性を保証します。初期のシステムで適用された最も単純な形式は、コンテキスト スイッチ間のキャッシュの内容をクリアし、2 つ以上のプロセッサ間で共有されるデータのキャッシュを無効にするというものでした。これらの方法は、キャッシュとメモリのパフォーマンスの差が 1 桁未満の場合に実行可能でした。メイン メモリより 2 桁以上高速なキャッシュを備えた最新のプロセッサは、データの一貫性を保つためのより洗練された方法がなければ、最適なパフォーマンスを発揮することはできません。バス ベースのシステムでは、バスは本質的にブロードキャストであるため、盗聴 (スヌーピング) 方法が使用されます。ポイントツーポイント リンクを備えた最新のシステムでは、スヌープ フィルタ オプションを備えたブロードキャスト方法を使用してパフォーマンスを向上させます。ブロードキャストと盗聴は本質的にスケーラブルではないため、SCI では使用されません。
代わりに、SCI は、特定のキャッシュ ラインを共有するプロセッサを含むノードのリンク リストを使用して、分散ディレクトリ ベースのキャッシュ コヒーレンス プロトコルを使用します。各ノードは、ノードのメイン メモリのディレクトリを保持し、メモリの各ライン (キャッシュ ラインと同じライン長) にタグが付きます。メモリ タグには、リンク リストの先頭へのポインタと、ラインの状態コード (ホーム、フレッシュ、ゴーンの 3 つの状態) が保持されます。各ノードには、リモート データを保持するためのキャッシュも関連付けられています。このキャッシュには、キャッシュ ラインを共有するリンク リスト内のノードへの前方ポインタと後方ポインタを含むディレクトリがあります。キャッシュのタグには、7 つの状態 (無効、フレッシュのみ、ヘッド フレッシュ、ダーティのみ、ヘッド ダーティ、中間有効、テール有効) があります。
分散ディレクトリはスケーラブルです。ディレクトリ ベースのキャッシュ一貫性のオーバーヘッドは、ノードのメモリとキャッシュの一定の割合です。この割合は、メモリの場合は 4%、キャッシュの場合は 7% 程度です。
遺産
SCI は、マルチプロセッサ コンピュータ システム内のさまざまなリソースを接続するための標準ですが、たとえばさまざまなシステムを接続するためのEthernetファミリほど一般には知られていません。さまざまなシステム ベンダーが、社内のシステム インフラストラクチャ用にさまざまな SCI バリアントを実装しています。これらのさまざまな実装は、プロセッサとメモリ システムの非常に複雑なメカニズムとインターフェイスし、各ベンダーはハードウェアとソフトウェアの両方である程度互換性を維持する必要があります。
グスタフソンは、スケーラブル コヒーレント インターフェイスおよびシリアル エクスプレス ユーザー、開発者、製造業者協会と呼ばれるグループを率い、1996 年からこのテクノロジの Web サイトを保守しました。[3] 1999 年を通じて一連のワークショップが開催されました。1992 年の最初のエディションの後、[1]後続のプロジェクトでは、1993 年に共有データ形式が定義され、[5] 1996 年には低電圧差動信号を使用するバージョンが、 [6] 1996 年後半には Ramlink として知られるメモリ インターフェイスが定義されました。[7] 1998 年 1 月、SLDRAM社が設立され、別のワーキング グループである SerialExpress または Local Area Memory Port に関連する新しいメモリ インターフェイスを定義する試みに関する特許を取得しました。[8] [9] しかし、1999 年初頭までに、新しいメモリ標準は放棄されました。[10]
1999年にSCIに関する一連の論文が書籍として出版されました。[11] 更新された仕様は、国際標準化機構(ISO)の国際電気標準会議(IEC)によって2000年7月にISO/IEC 13961として出版されました。 [12]
参照
参考文献
- ^ ab IEEE スケーラブルコヒーレントインターフェース (SCI) 標準。IEEE 標準委員会。1992 年。ISBN 9780738129501。
- ^ David B. Gustavson (1991 年 9 月)。「スケーラブル コヒーレント インターフェイスと関連標準プロジェクト」(PDF)。SLAC出版物 5656。スタンフォード線形加速器センター。2013年8 月 31 日閲覧。
- ^ ab 「Scalable Coherent Interface and Serial Express Users, Developers, and Manufacturers Association」。グループの Web サイト。2013 年8 月 31 日閲覧。
- ^ 「1596 WG - スケーラブルコヒーレントインターフェースのワーキンググループ」ワーキンググループのウェブサイト。2016年3月4日時点のオリジナルよりアーカイブ。 2013年8月31日閲覧。
- ^ スケーラブルコヒーレントインターフェース(SCI)プロセッサ向けに最適化された共有データ形式のIEEE標準。IEEE標準委員会。1994年4月25日。ISBN 9780738112091。
- ^ スケーラブルコヒーレントインターフェース(SCI)の低電圧差動信号(LVDS)に関するIEEE標準。IEEE標準委員会。1996年7月31日。ISBN 9780738131368。
- ^ スケーラブルコヒーレントインターフェース(SCI)シグナリングテクノロジー(RamLink)に基づく高帯域幅メモリインターフェースのEEE標準。IEEE標準委員会。1996年9月16日。ISBN 9780738131375。
- ^ David B. Gustavson (1999 年 2 月 10 日)。「代替案のための組織化」。
- ^ David V. James、David B. Gustavson、B. Fleischer (1998 年 5 月~6 月)。「SerialExpress - 高性能ワークステーション相互接続」IEEE Micro . 18 (3)。IEEE: 54~ 65. doi :10.1109/40.683105。
- ^ David Lammers (1999 年 2 月 19 日)。「ISSCC: SLDRAM グループが DDR II に変化」EE Times。
- ^ Hermann Hellwagner、Alexander Reinefeld編 (1999)。SCI : スケーラブル コヒーレント インターフェイス: 高性能コンピューティング クラスターのアーキテクチャとソフトウェア。コンピュータ サイエンスの講義ノート。Springer。ISBN 978-3540666967。
- ^ スケーラブルコヒーレントインタフェース (SCI) (PDF)。国際規格 ISO/IEC 13961 IEEE Std 1596。2000 年 7 月 10 日。

