前へ | 次へ | 目次 | 索引 |
この節では,MEMORY CHANNEL の働きについて,その技術的な内容を詳しく取り上げます。
B.2.1 従来のネットワークや SMP との比較
MEMORY CHANNEL は,遠距離に分散するシステムを,最高 8 組まで相互接続できる "SMP バスの延長"型と言えます。ただし,複数の CPU が同じ物理メモリに直接アクセスできる SMP 環境と MEMORY CHANNEL は同じものではありません。つまり,ノード同士が MEMORY CHANNEL グローバル・アドレス領域を共用している場合でも, MEMORY CHANNEL では,ノードごとに専用の物理メモリが必要です。
SMP システムと従来のパケット方式のネットワークでは,両者の間にコスト・パフォーマンスの面でかなりの開きがありますが,MEMORY CHANNEL はちょうどその中間的な存在です。 表 B-2 は,SMP,MEMORY CHANNEL,通常のネットワークのそれぞれの特性を比較した表です。
特性 | SMP | MEMORY CHANNEL | 通常のネットワーキング |
---|---|---|---|
帯域幅 (MB/s) | 1000+ | 100+ | 10+ |
待ち時間 (ms/最も単純なメッセージ) | 0.5 | 5 未満 | 約 300 |
オーバヘッド (ms/最も単純なメッセージ) | 0.5 | 5 未満 | 約 250 |
ハードウェア通信モデル | 共用メモリ | メモリ・マップ | メッセージ伝達 |
ハードウェア通信プリミティブ | メモリに保存 | メモリに保存 | ネットワーク・パケット |
ブロードキャストのハードウェア・サポート | n/a | 可 | ときどき |
同期のハードウェア・サポート | 可 | 可 | 不可 |
ノード・ホット・スワップのハードウェア・サポート | 不可 | 可 | 可 |
ソフトウェア通信モデル | 共用メモリ | ファースト・メッセージ,共用メモリ | メッセージ |
エラー通信モデル | 回復不能 | 回復可能 | 回復可能 |
直接ユーザ・モード通信をサポート | 可 | 可 | 不可 |
典型的な物理インターコネクト・テクノロジ | バックブレーン・エッチ | パラレル銅ケーブル | シリアル光ファイバ |
物理インターコネクトのエラー率 | 非常に少ない
頻度: 1 未満/年 |
非常に少ない
頻度: 1 未満/年 |
少ない:
1 日に数回 |
ハードウェア・インターコネクト方式 | 特殊目的のコネクタとロジック | 標準 I/O バス・アダプタ (PCI) | 標準 I/O バス・アダプタ (PCI その他) |
ノード間距離 (m) | 0.3 | ハブ構成で 20 (銅) または 60 (光ファイバ), 2 ノード構成で 10 (銅) または 30 (光ファイバ) | 50〜1000 |
ノード数 | 1 | 8 | 数百 |
プロセッサ数 | 6〜12 | SMP システムでは CPU の最大数の 8 倍 | 数千 |
障害モデル | 全体障害 | 部分障害 | 部分障害 |
B.2.2 OpenVMS Cluster アーキテクチャの MEMORY CHANNEL
図 B-7 にあるように,MEMORY CHANNEL の機能は,System Communication Services レイヤの直下に OpenVMS Cluster アーキテクチャで実装されています。このデザインでは,OpenVMS Cluster ソフトウェアの上位レイヤが変更されないので,既存のアプリケーションを変更する必要はありません。
図 B-7 OpenVMS Cluster アーキテクチャと MEMORY CHANNEL
MEMORY CHANNEL ソフトウェアは,2 つの新しいドライバからなります。
ドライバ | 説明 |
---|---|
PMDRIVER | クラスタ・ポート・ドライバをエミュレート。 |
MCDRIVER | MEMORY CHANNEL ハードウェアに MEMORY CHANNEL サービスとインタフェースを提供。 |
MEMORY CHANNEL 構成では,全ノードがシステムの物理アドレス領域の 1 セクションを共用します。あるシステムがこのアドレス領域にデータを書き込むと,MEMORY CHANNEL ハードウェアもグローバル書き込みを実行し,これによって他のシステムのメモリにもデータが保存されます。つまり,MEMORY CHANNEL アダプタが占有する PCI アドレス領域にノード CPU がデータを書き込むと,データは MEMORY CHANNEL インターコネクトを通じて他のノードにも送信されます。他のノードの PCI アダプタは,このデータをそれぞれのメモリにマップします。このインフラストラクチャでは,あるシステム上の I/O アドレスに書き込むと,他のシステムの物理アドレスにも書き込むことができます。以下の 2 つの図は,これをさらに詳しく説明したものです。
図 B-8 は,物理メモリにおける MEMORY CHANNEL グローバル・アドレス領域のアドレス指定です。
図 B-8 物理メモリと I/O アドレス領域
図 B-8 は,システムの典型的なアドレス領域の例であり,物理メモリと I/O アドレス領域に分かれています。PCI I/O アドレス領域で,MEMORY CHANNEL は, 128 MB から 512 MB のアドレス領域を消費します。そのため,MEMORY CHANNEL PCI アダプタをこの領域内でアドレス指定でき,この範囲に CPU はデータを書き込むことができます。
MEMORY CHANNEL クラスタの全システムは,このアドレス領域を MEMORY CHANNEL データと通信に割り当ています。このアドレス領域を利用して,CPU は他のノードのメモリにグローバル書き込みを実行します。
グローバル書き込みの例として, 図 B-9 では,ノード A とノード B による 2 ノード内部バス・アーキテクチャを示します。
図 B-9 MEMORY CHANNEL バス・アーキテクチャ
図 B-9 に示す図では,以下の順序でノード A がノード B のメモリにグローバル書き込みを実行します。
同様にクラスタ内の全ノードを MEMORY CHANNEL グローバル・アドレス領域にアドレス指定すると,同じアドレス領域と同じデータを仮想的に"共用"できます。このため,MEMORY CHANNEL アドレス領域は 図 B-9 で中央アドレス領域として表現されます。
MEMORY CHANNEL グローバル・アドレス領域は,8 KB (8,192 バイト) のページに分割されています。これらを MC ページといいます。この 8 KB ページは,システム間で同じようにマップできます。
MEMORY CHANNEL グローバル・アドレス領域の"共用"機能は,PCI アダプタに,ページ制御テーブルか PCT でセットアップします。PCT には,MC ページごとに設定できる属性があります。これらの属性については, 表 B-3 を参照してください。
属性 | 説明 |
---|---|
ブロードキャスト | すべてのシステムにデータが送信されます。ノード ID を指定すると,そのシステムにだけデータが送信されます。 |
ループバック | クラスタ内の他のノードに送信されたデータは,送信ノードの PCI アダプタによってメモリにも書き込まれます。これにより,メッセージの順序が維持されるとともに,すぐれたエラー検出機能を確保できます。 |
割り込み | 現在の MC ページに場所を書き込むと,CPU に割り込みを生成します。これは,他のノードに対する通知に使用できます。 |
エラー後の送受信機能の停止 | 現在のページにエラーが発生すると,エラー条件が解消されるまで送受信処理ができなくなることを指定します。 |
ACK | ページに書き込むと,各受信システムのアダプタが ACK (肯定応答) で応答し,それぞれのホストを割り込むことなくリモート・ノードに書き込み (または他の処理) が発生します。これはエラー・チェックとエラー回復に使用します。 |
MEMORY CHANNEL ソフトウェアは,OpenVMS Cluster ソフトウェアにバンドルされています。ハードウェアをセットアップした場合は,CLUSTER_CONFIG.COM プロシージャのプロンプトに従って, MEMORY CHANNEL ソフトウェアを構成します。ローカル・コンピュータのノード間通信で MEMORY CHANNEL を有効にするかどうかを確認するプロンプトが表示されたら, "Yes" と応答します。MEMORY CHANNEL が有効かどうかを示すシステム・パラメータの MC_SERVICES_P2 が 1 に設定されます。この設定でドライバ PMDRIVER がロードされ,他の MEMORY CHANNEL システム・パラメータのデフォルト値が有効になります。
MEMORY CHANNEL システム・パラメータの意味については,『OpenVMS Cluster システム』マニュアルを参照してください。
MEMORY CHANNEL ハブ,リンク・ケーブル,PCI アダプタのセットアップの詳細については,『MEMORY CHANNEL User's Guide』(EK-PCIMC-UG.A01) を参照してください。
ここでは,CI-to-PCI アダプタ (CIPCA) について解説します。これは, OpenVMS Alpha バージョン 6.2-1H2 で導入されたものであり,OpenVMS バージョン 7.0 を除き,以後のバージョンではすべてサポートされています。CIPCA アダプタは,Alpha サーバと OpenVMS Cluster の一定の構成をサポートしています。
この付録は,以下のように分かれています。
CMD Technologies との協力で開発した CIPCA アダプタは,PCI バス付きの Alpha サーバや PCI バスおよび EISA バス付きの Alpha サーバを CI と接続するためのアダプタです。CIPCA アダプタには以下の特長と利点があります。
特長 | 利点 |
---|---|
初期費用が少なくてすみ,構成の選択肢が多い | 中程度のコンピューティング・パワーが必要なビジネス・ニーズであれば,CIPCA を利用してミッドレンジ Alpha サーバを既存の CI クラスタに組み込むことができます。 |
ハイエンド Alpha の速度とパワー | 最高のコンピューティング・パワーが必要な場合は,PCI サブシステムと EISA I/O サブシステムを備えた AlphaServer 8200 システムと AlphaServer 8400 システムのどちらにも CIPCA を利用できます。 |
経済的な Alpha 移行パス | 既存の CI VAXcluster に Alpha サーバを追加する場合,CIPCA を利用すれば,経費とパフォーマンスの関係を自由に設定して,複合アーキテクチャ・クラスタに移行できます。 |
CI の利点 | CIPCA は,CI に接続します。CI には以下の利点があります。
|
図 C-1 は,Alpha と VAX の 2 つのサーバを備えた複合アーキテクチャ CI OpenVMS Cluster の例です。
図 C-1 複合アーキテクチャ OpenVMS Cluster における CIPCA
図 C-1 は,CIXCD (または CIBCA-B) アダプタ付きの VAX サーバを備えた CI OpenVMS Cluster に,CIPCA アダプタで Alpha サーバを接続できることを示しています。これにより,ハイエンド VAX システムだけで構成されていたクラスタに Alpha サーバを無理なく統合できます。
図 C-2 は,CIPCA でシステムを CI と接続したもう 1 つの構成例です。この例では,各 Alpha に 2 つの CIPCA アダプタがあり,これらのアダプタにより複数の CI スター・カプラと HSJ ストレージ・コントローラに接続や, I/O 負荷のバランス調整や OpenVMS シャドウ・セット・メンバの分離が可能になりました。また,Alpha システムは,PC クライアントと OpenVMS サテライトとの追加接続に必要な高速 FDDI インターコネクトにも接続できます。
図 C-2 Alpha OpenVMS Cluster における CIPCA
図 C-1 と 図 C-2 は,CIPCA によって,CI のパフォーマンス,可用性,大規模ストレージ領域アクセスをさまざまなユーザが利用できるようになる様子を示しています。CI は高い最大スループットを備えています。 PCI 方式の CIPCA と XMI 方式の CIXCD のどちらも高度にインテリジェントなマイクロプロセッサ制御のアダプタであり,最小限の CPU オーバヘッドで済みます。
CI バスの高い有効スループットのおかげで,CI インターコネクトがボトルネックになることはまずありません。 図 C-2 に示すような大規模構成では,複数のアダプタと CI 接続により,すぐれた可用性とスループットを実現します。
図 C-1 と 図 C-2 には示していませんが, SCSI インターコネクトで HSJ コントローラのペアの間にディスクを配置し,各 HSJ を CI に接続すれば可用性を強化できます。
C.2 技術仕様
CIPCA は,2 スロットのオプション・アダプタです。CIPCA モデルには,CIPCA-AA と CIPCA-BA の 2 機種があります。
CIPCA-AA が最初の機種です。PCI バックプレーン・スロットが 1 つ,そして EISA バックプレーン・スロットが 1 つ必要です。EISA スロットは,電源だけ (バス・シグナルを除く) を CIPCA に供給します。CIPCA-AA は PCI スロットの数が少ない旧システムに最適です。
CIPCA-BA には,PCI スロットが 2 つ必要であり,EISA スロットの数が少ない新システムが対象です。
CIPCA ドライバの名前は SYS$PCAdriver です。OpenVMS オペレーティング・システム・ソフトウェアに組み込まれています。
表 C-1 は,CIPCA のパフォーマンスを CIXCD アダプタと対比させて示したものです。
パフォーマンスの測定基準 | CIPCA | CIXCD |
---|---|---|
読み取り要求率 (I/Os) | 4900 | 5500 |
読み取りデータ率 (MB/s) | 10.6 | 10.5 |
書き込み要求率 (I/Os) | 4900 | 4500 |
データ書き込み率 (MB/s) | 9.8 | 5.8 |
複合要求率 (I/Os) | 4800 | 5400 |
複合データ率 (MB/s) | 10.8 | 9.2 |
CIPCA のインストールと操作については,CIPCA アダプタに添付されているハードウェア・マニュアル『CIPCA PCI-CI Adaoter User's Guide』を参照してください。
前へ | 次へ | 目次 | 索引 |