このページの本文へ

前へ 1 2 3 次へ

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

スーパーコンピューターの系譜 CRAYのやや下の市場を狙ったConvex

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

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

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

開発環境のソフトウェアが充実

 Convexはハードウェアだけでなくソフトウェアの充実振りも特徴的である。まず開発環境に関して言えば、C/Fortran/Adaのコンパイラが同社から提供されたが、特にFortranはDECのVAX/VMS用コンパイラと互換性があるものだった。

 やや脇道にそれるが、Fortranは1950年代から特に科学技術計算向けに広く使われていた言語であるが、なにせ制定時期が古いものだけに、色々と新しい機能が取り込まれていなかった(過去形)。

 このあたりを改定したのが、1992年にやっと標準化されたFortran 90であるが、1980年代は1977年に制定されたFortran 77が標準で、いろいろ古臭かった。したがって、ベンダーの中には独自にFortran 77を拡張して提供したところが少なくない。

 DECも同じで、同社がVAX/VMSというOS向けに提供していたFortranは構造体が使えたり、ポインタハンドリングができたり、一部構造化制御が可能など、いろいろFortranっぽくない機能(ちなみにいずれの機能も最終的にFortran 90で可能になっている)を持ったものだったのだが、ConvexはこのDECのFortranと互換をうたった。

 理由は簡単で、VAX/VMSを使っていたユーザーの取り込みである。実際同社のカタログには下のグラフも示されていた。

これはANSYSという構造解析のプログラムを実施したもので、縦軸が自由度、横軸が処理時間である。DECのVAX 8800シリーズでは、どれだけぶん回しても10000自由度あたりで頭打ちになるのに対し、Convexなら25000以上の自由度をもっと短い時間で解析可能とアピールしている

 DECのFortranは(性能はともかく)使いやすいのが評判であり、そうしたユーザーをConvexに引き込もうという意図だったようだ。

 実はこうした配慮は他にもある。Convex ComputerのWikipediaのエントリーには、同社のOS(Convex OS)がDECのVAX/CMSと互換性を持つという記載があるが、正確に書くと同社はCOVUE(CONVEX-to-VAX User Environment)と呼ばれる環境を提供しており、これを利用することで、VAX/VMS上で動作するアプリケーションをConvex OS上で動くように簡単に書き換えができるというものだった。したがって、互換性があるわけではない。

 さらに、COVUEshellと呼ばれる環境を提供している。これはVAX/VMSのDCL(DEC Command Language)の部分的なエミュレーション機能を提供し、VAX/VMSのDCL環境に慣れたユーザーが簡単にConvexOSを利用できるように配慮したものだ。

 逆にCRAYとの互換性はほとんどなかった。というのは、CRAYを利用するユーザーがConvexに乗り換えるというケースはレアだったかららしい。

 もちろん基本的なアーキテクチャーは似ているし、CRAYの提供するFortranの拡張機能に相当するものはConvexも提供したようだが、手直しなしというわけにはいかなかったようだ。

 さて話を戻すと、Convexは自社でFortran/C/Adaを提供したが、これらはいずれもフロントエンドで、C2xxシリーズの環境に最適化してコード生成する仕組みが用意されていた。

Convexでの開発環境。今風に言えば、各プロセッサーはスレッド単位で処理するようになっており、無駄に空き時間を持たせることなくプログラムを処理できるという話である

 特に複数の計算を行なう場合は、Convexでは常にすべてのプロセッサーがフル稼働になるようにスケジューリングされ、トータルでの待ち時間を減らす工夫がされていた。

 全般的に言えば、ConvexのC2xxシリーズは絶対性能こそそう高くないが、ユーザーが利用しやすいアーキテクチャーになっており、それもあってかなり売れたらしい。

ガリウム砒素を採用した
Convex C3

 そのConvexだが、一番売り上げが上がったのはこのC2の時代である。そうこうしている間にCRAYはY-MPをリリースする。さらに、超並列処理という新しいトレンドが生まれてきて、こちらもConvexとがっぷりぶつかることになった。

 ところがConvexのアーキテクチャーでは、プロセッサー数をそうそう簡単には増やせない。そこでプロセッサーの性能を引き上げようということで、CRAY-3と同様にGaAs(ガリウム砒素)に手を出す。

 1990年のComputer Business Reviewの記事によれば、1990年10月にはこのGaAsベースの製品をリリースしたいという希望を述べていたが、実際には1991年までずれ込むことになった。

 このC3世代は2種類のプロセッサーが提供された。どちらも50~120MHz駆動だが、シングル構成とデュアル構成がある。このデュアル構成、要するにインテルのCore 2 Quadのような構成を考えてもらえるとわかりやすい。

 基本構成はC3世代でも変わらないが、それぞれのCPUがシングルとデュアルの2種類提供される形だ。つまりメモリーのクロスバーには手を入れなかったわけだ。ただしCPUとクロスバーの間の転送速度は480MB/秒まで引き上げられている。

 ラインナップとしては以下の大きく3ラインナップがあった(実際の製品はもっと多くの種類が用意されたと思われるが確認できなかった)。

C2世代のラインナップ
モデル名 CPU数 動作周波数 CPU種類 性能
C3200 1 25MHz シングル 50MFLOPS
C3240 4 25MHz シングル 200MFLOPS
C3400 1 50MHz シングル 100MFLOPS
C3400 4 50MHz シングル 400MFLOPS
C3800 1 120MHz シングル 240MFLOPS
C3880 4 120MHz デュアル 1920MFLOPS

 ハイエンドがC3880で、このあたりになるとCray Y-MPと真っ向勝負という感じになるが、なにせ消費電力が極端に多いGaAs駆動だけに、冷却はさぞかし大変だったろうと思われる(ちなみにC2世代までは空冷)。

 当然値段的にもかなり跳ね上がったと思われる。推定形で書いているのはなにしろ売れたという情報が見当たらないためで、実際売れなかったらしい。

 C3はGaAsベースのFPGAで製造したらしいが、当時の(今もだが)GaAs FPGAは集積度が非常に低く、ボード枚数もC2の5枚では済まなかったと思われる。ましてやC3880のようなデュアル構成では、相当な枚数になったと思われる。

 そこでこれをFPGAからGaAsゲートアレイに変更することで小型化や省電力化、動作周波数向上などを目論んだのが次のC4シリーズである。

 さらに、やはりデュアル構成はハードウェア的に無理だと思ったのか、CPUコア内部の実行ユニットの数を増やす方向に変更しており、この結果として動作周波数は135MHzながら演算性能は大きく引き上げられた。

 このシリーズは当初C4xxxシリーズと呼ばれたが、最終的に発売された時にはすでにConvexはHPに買収された後で、C4/XA-4シリーズと称された。

Convex C4600(HP C4/XA-4)の外観。出典はhttp://www.paralogos.com/DeadSuper/Convex/

 1994年11月のTOP500には223位でランクインしているが、4P構成で理論性能3.24GFLOPS、実効性能2.53GFLOPS(後に2.9GFLOPSまで向上)で、効率は78~90%とそう悪い数字ではない。

 ただ、もうこの時点でConvexはほとんど市場を失っていた。これに先駆け同社は超並列に方針転換を行ない、HPのPA-7200プロセッサーをベースにExemplarという新しいシステムの開発を手がけ始める。

 これは最終的にSPP-1600として販売されるが、同社を立て直すのに十分ではなかった。最終的にConvexは1995年HPに買収されるが、これはまた別の話として紹介したい。

前へ 1 2 3 次へ

カテゴリートップへ

この連載の記事

注目ニュース

ASCII倶楽部

最新記事

プレミアムPC試用レポート

ピックアップ

ASCII.jp RSS2.0 配信中

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