このページの本文へ

ロードマップでわかる!当世プロセッサー事情 第334回

スーパーコンピューターの系譜 夢を追い続けたBob Rau博士のCydra 5

2015年12月14日 11時00分更新

文● 大原雄介(http://www.yusuke-ohara.com/) 編集●北村/ASCII.jp

  • この記事をはてなブックマークに追加
  • 本文印刷

演算性能を上げるために
細かい並列性を高める

 さて、問題はNumeric Processorの方だ。当時もうすでに演算性能を高めるためには並列度を上げるしかないことはわかっており、方法論としては荒い並列性(Coarse-grained parallelism)と、細かい並列性(Fine-grained parallelism)の2つがあることも知られていた。

 荒い並列性は、要するに超並列処理につながるマルチプロセッサーの方向で、一方細かい並列性はベクトルやSIMD、あるいはVILWである。実装でどちらが楽かという観点で言えば、数を並べれば済むぶん荒い並列性の方が良い。

 ところがこの当時はまだ並列実行のFortranはあまり一般的ではなかった。したがって、既存のFortranで書かれたアプリケーションをそのまま移植しても性能は期待できない。

 実際にはこの当時、マルチプロセッサーや超並列システムを利用するためには、その機種専用のライブラリーを呼び出す形で処理を並列化できるようにプログラマーが明示的に記述する必要があり、またFortranコンパイラ自身も大きく手をいれないといけない。

 当然これには人手が必要で、それは当時の同社には手に余ると判断したようだ。結局同社は細かい並列性を高める方に走った。

 念のために書いておくと、「細かい並列性を高めるほうはコンパイラに手を入れる必要はない」ということはまったくない。

 新規のプロセッサーを作るわけだから、命令セットの最適化を含む大量の作業が必要になる。ただそれでも「荒い並列性を実装することを考えたら、ずっと楽」というだけの話である。

 細かい並列性を高めるというのは、同時実行できる命令を増やすということである。Cydra 5の実行ユニット(Function Unit)は、下図の構造になっている。

実行ユニットの構造。ちなみに同社はこの方式をSIMOMD(Single Instruction, Multiple Operation, Multiple Data)と称し、略称をMultiOpとしている

 これはなにをやっているかといえば、例えばY=A×B+Cを計算する場合、FU1でA×Bの乗算を行ない、次のサイクルではその結果をFU2のレジスターファイルに格納する。

 FU2は結果が格納されたらそれとCを取り込んで(A×B)+Cの加算を行ない、その結果をFU3のレジスターファイルに格納する。

 次のサイクルで、FU3は結果を取り込んでその結果をメモリーに書き出す。つまりパイプライン動作を簡単に実行できることになる。

 MAC演算のパイプライン化そのものは珍しくないが、Cydra 5では自由に実行ユニットの結果をつなげてパイプライン化できるというもので、このあたりの仕組みは汎用プロセッサーというよりはDSPのような感じだ。

 このFUの構成をもう少し描いたのが下の画像である。FPUのうちAdder/Integer ALUは4サイクル、Multiply/Integer Div/Integer Sqrtは5サイクル、Memory Data Port 1/2は17サイクルのレイテンシーで動作するが、内部は完全パイプライン化されている。

Function Unitの構成。ちなみに左半分がData Cluster、右半分がAddress Clusterと称される

 先ほどの例で言えば、まずA×Bの乗算をFloating Point Multiplierで実行すると、5サイクル後に結果が出てくる。これはフィードバックループを通して2番の列のGPR(General Purpose Register:汎用レジスター)に格納されるので、これとCの値をFloating Point Adderは取り込み、3サイクル後に(A×B)+Cの演算結果が出力される。

 この値は再び1番の列のGPRに書き込まれるので、これをMain Memory Portの1か2のどちらかが取り込み、17サイクル後にメモリーに書き出し終わる。

 ちなみに、Numeric ProcessorとMain Memoryの間はそれぞれ100MB/秒の帯域を持つポート3つで接続されており、例えば読み込み200MB/秒、書き出し100MB/秒といった使い方ができる。

 これは単純な演算であれば単精度(32bit)で25MFLOPS、倍精度(64bit)で12.5MFLOPSに相当する性能である。

 実際には先のMAC演算のようなケースでは演算数が倍になるため、単精度なら50MFLOPS、倍精度なら25MFLOPSが可能になる計算で、これはCydra 5の構成図に出てきたNumeric Processorの性能ときっちりマッチしている。

 当然ながら、こんな複雑な実行ユニットを自動的に最適化するのは当時の技術では不可能であり、ソフトウェア任せとなる。この結果、Cydra 5のNumeric Processorは下の図のように32バイトもの長さのVILW構成となっている。

上のMultiOp((a)と(b))は、並列性を最大限に利用したい場合に利用する。ただ、並列性がない場合には無駄が多くなるので、別にUniOp(c)というフォーマットも用意した。こちらは複数のFUのどれか1つだけを動かすのに利用される

 この長大な命令の中で、それぞれのFUに対してどんな演算を行ない、その結果をどこに書き出すかをすべて指定することで、効率的に実行しようとした。

 このあたりをCPU任せにせず全部ソフトウェア側でやるというのは、FPSのAP-120Bと発想的には同じである。

 当時の技術ではそのあたりのスケジューリングや調停を、CPU任せにするのは不可能だったのは仕方ないところだろう。

→次のページヘ続く (目標のスペックを達成するも会社が倒産

カテゴリートップへ

この連載の記事

ASCII倶楽部

注目ニュース

  • 角川アスキー総合研究所

プレミアム実機レビュー

ピックアップ
1
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
¥1,390
2
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
¥660
3
Amazon Kindle Paperwhite (16GB) 7インチディスプレイ、色調調節ライト、12週間持続バッテリー、広告なし、ブラック
Amazon Kindle Paperwhite (16GB) 7インチディスプレイ、色調調節ライト、12週間持続バッテリー、広告なし、ブラック
¥18,980
4
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
¥980
5
【Amazon.co.jp限定】 ロジクール 静音 ワイヤレス トラックボール マウス M575SPd Bluetooth Logibolt 無線 windows mac iPad OS Chrome トラックボールマウス ブラック M575 M575SP 国内正規品 ※Amazon.co.jp限定 壁紙ダウンロード付き
【Amazon.co.jp限定】 ロジクール 静音 ワイヤレス トラックボール マウス M575SPd Bluetooth Logibolt 無線 windows mac iPad OS Chrome トラックボールマウス ブラック M575 M575SP 国内正規品 ※Amazon.co.jp限定 壁紙ダウンロード付き
¥5,280
6
CIO フラットスパイラルケーブル CtoC 1m (Type-C/USB-C) PD 急速充電 平型 磁石 マグネット吸着 まとまる 充電ケーブル PD 240W データ転送 480Mbps (ライトブラック, 1m)
CIO フラットスパイラルケーブル CtoC 1m (Type-C/USB-C) PD 急速充電 平型 磁石 マグネット吸着 まとまる 充電ケーブル PD 240W データ転送 480Mbps (ライトブラック, 1m)
¥1,780
7
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
¥990
8
【Amazon.co.jp限定】バッファロー microSD 32GB 100MB/s UHS-1 U1 microSDHC【 Nintendo Switch 対応 】V10 A1 IPX7 Full HD RMSD-032U11HA/N
【Amazon.co.jp限定】バッファロー microSD 32GB 100MB/s UHS-1 U1 microSDHC【 Nintendo Switch 対応 】V10 A1 IPX7 Full HD RMSD-032U11HA/N
¥1,880
9
エレコム 電源タップ 6個口 3m 雷ガード 個別スイッチ ほこりシャッター付 耐熱 PSE技術基準適合 ブラック T-K6A-2630BK
エレコム 電源タップ 6個口 3m 雷ガード 個別スイッチ ほこりシャッター付 耐熱 PSE技術基準適合 ブラック T-K6A-2630BK
¥1,590
10
Kindle Paperwhite シグニチャーエディション (32GB) 7インチディスプレイ、明るさ自動調整、色調調節ライト、12週間持続バッテリー、広告なし、メタリックブラック
Kindle Paperwhite シグニチャーエディション (32GB) 7インチディスプレイ、明るさ自動調整、色調調節ライト、12週間持続バッテリー、広告なし、メタリックブラック
¥23,980

Amazonのアソシエイトとして、ASCII.jpは適格販売により収入を得ています。

デジタル用語辞典

ASCII.jpメール デジタルMac/iPodマガジン