世界のスーパーコンピュータとそれを動かす人々


提 供

7月 28, 2014

HPCの歩み50年(第3回)-1965年-

小柳 義夫 (高度情報科学技術研究機構)

ベクトル処理(演算パイプライン)を最初に論文発表したのはIBM社のSenzig and Smithであった。同社は1969年に商用の外付けベクトル演算器を売り出した。Gordon Mooreはこの年、半導体の集積度は1年で倍になると予言したが、10年後には2年で倍と修正した。いわゆるMooreの法則は両者の「平均」である。日本学術会議は、全国8カ所に大型計算機を設置し、ネットワークで接続せよと勧告している。

この年2/7、米軍はベトナムの北爆を開始した。また、アメリカでは2/21マルコムXが暗殺され、8/9シンガポールが独立し、11/9マルコスが大統領に当選するなどの出来事があった。余談だが、筆者は25年後の1990年8月、独立25周年記念に沸き立つシンガポールにたまたま滞在していた。日本関係では、2/22夕張鉱山でガス爆発、6/22日韓条約調印、7/4吉展ちゃん事件犯人逮捕、そして朝永振一郎博士のノーベル物理学賞受賞の慶事があった。

筆者は卒業研究で西川哲治研究室(高エネルギー実験)に配属された。大学院で理論を専攻する人は、卒研ではできるだけ実験の研究室に行けという指導があった。そこで、先輩の下で、streamer chamber開発のお手伝いをした。放射線が通ると、ピーク1 MVで幅10 ns程度の高圧パルスを掛け、軌跡を光らせるものである。高圧パルスの回路も面白かったが、研究室のお茶の時間には欠かさず参加した。このときの人脈は、後に高エネルギー物理学研究所に赴任した時、非常に役に立った。「今からでも遅くないから、(大学院で)実験の研究室に来ないか」と誘われたが、不器用な筆者としては、誘われたという勲章だけで十分であった。

タイトル画像 DEC PDP-8 (画像出展:Computer History Museum)

ベクトル処理の提唱

筆者が重要と思うのは、1965年IBM社のD.N. SenzigとR.V. SmithがAFIP‘65において”Computer Organization for Array Processing” という論文を発表し、ベクトル処理を提案していることである。この論文では、ベクトル処理と並列処理を比較し、その利害得失を論じている。並列処理はすでにSolomon(1962年中止)などのプロジェクトがあったが、SIMDではなく、パイプラインによるベクトル処理を公に論じたのはこの論文が最初ではないかと思う。IBMは4年後、世界初のベクトル演算器を売り出すことになる。

最初のミニコン

PDP8-2

DEC PDP-8

(画像出展:Computer History Museum)

DEC (Digital Equipment社)は、1957年創立であるが、1965年3月22日に12ビットのPDP-8を発売した。世界ではじめて商業的に成功したミニコンと言われる。主任設計者のEdson de Castroは後にData General社を創立した。

ムーアの法則

フェアチャイルド・セミコンダクターを設立し(1957)、その後インテルの共同創立者となった(1968/7) Gordon Mooreは、4月19日発行のElectronics Magazineにおいて、チップの複雑さ(トランジスタ数)は、毎年2倍の割合で増大してきたと指摘し、この増大は今後少なくとも10年は続くと予言した。IC(集積回路)が始まったばかりの時点でこのような予言をしたことは先見の明があったというか、無謀だったというか、微妙なところである。
彼は10年後1975年に、2年に2倍になると修正した。現在、「ムーアの法則」と言われている、「チップのトランジスタ数は、18ヶ月毎に倍になる」という命題は、両者の平均のようなものであるが、Moore自身が述べたものではない。

日本の動き

1) 大型計算機設置計画
なお、1965年10月、日本学術会議は第44回総会において科学計画第1次5カ年計画を政府に勧告したが、その中に大型計算機設置の計画が含まれている。これによると、北海道、東北、中京、京都、大阪、中国、九州に大型機を設置するとともに、関東には既設の大型機(HITAC 5020のことであろうか)の他に超大型機を設置することを述べている。中国地区を別にすれば、その後の7大学大型計算機センター設置に対応している。それのみならず、地区内、地区間のデータ伝送網の整備も勧告しており、先見の明があったと言えよう。米国のARPANETが始まったのは4年後の1969年である。日本の大学間で計算機ネットワークが運用されたのは1975年7月に東大と京都大がN-1で接続されたのが最初である。

2) 電気試験所
電気試験所(後の電総研)は、ETL Mark VI計算機(トランジスタ方式)を完成させた。

3) 高速フーリエ変換
1965年、CooleyとTukeyがFFT(高速フーリエ変換)を発表した。日本では高橋秀俊が1960年頃からPC-1のために考え始め、1966年頃独立に発見し、東大大型センターのライブラリに登録している。

日本の企業の動き

日本では各社がさまざまな開発を行っている。

1) 富士通
富士通(1967年6月以前は富士通信機製造株式会社)はFACOM 270シリーズを発表した(1月)。メモリは磁気コアであるが、一部はICを使用している。後に(1968年~73年)筆者が愛用したFACOM 270-20(高橋・後藤研究室)は、その小型版である。

2) 日立

HITAC5020

HITAC 5020

(画像出展:一般社団法人 情報処理学会 Web サイト

「コンピュータ博物館」)

東大に全国共同利用施設として大型計算機センターが発足し(4月)、HITAC 5020が設置された(7月と9月)。輪ゴムでしばったカードデックを運び、計算依頼窓口に出すと、何日か後に、ラインプリンタ出力とともに返却された。カードリーダをユーザが自分で操作するのは後のことである。料金はCPU使用1秒が10円だったと思う。ちなみに、「京コンピュータ」の産業個別利用の料金は、1ノード時間(秒でも分でもない)が十数円であり、隔世の感がある。1ノードの性能の違いは言わずもがなであるが。

その後のことになるが、HITAC 5020/5020Eは筆者が本格的に利用した最初のコンピュータであった。TACの中心的設計者であった村田健郎氏と中澤喜三郎氏(両氏とも故人)が日立に入社して開発されたマシンであり、両氏のスピリットを感じる。ずっと後になってつくばで両氏とお近づきになれたのは幸いであった。今のコンピュータとはだいぶ違うアーキテクチャを持っていた(日立評論、1964年4月号と1967年8月号参照)。

1語は32ビットであったが、浮動小数演算(基数は2)においては、倍精度はもちろん、単精度数の演算であっても、結果は2語のレジスタ(64ビット)に保存され、丸め誤差を減らす工夫が見られる。演算や代入では丸め誤差が減ってよかったが、サブプログラムの実引数に数式を書くとこれも倍精度でサブルーチンに引き渡された。実数の場合は、仮引数が単精度でも下位ビットが切り捨てられるだけ(IEEE754と異なり指数部は共通)であるが、単精度複素数だと、倍精度となった実数部の下位32ビットを虚数部として処理してしまい、わかりにくいバグとなった。

どう使うのかはわからないが、固定小数演算では4倍長関連の命令がいくつかある。加減算では、2命令で4倍長の加減算ができる。乗算では、倍精度数の積が4語のレジスタに保存され、除算では倍長の除算で、商2語と余り2語が保存される。5020にはないが、5020E/Fでは何と四倍長浮動小数演算のハードウェアが装備されていた。内部表現は、指数部8ビット、仮数部120ビット(含符号)である。FORTRAN言語でも、文法としては4倍長浮動小数の演算がサポートされていたが、入出力はなく、定数も特別な関数で与える仕様であった。演算の途中だけに使うつもりだったのかと思う。

サブルーチンに配列を渡す時には仮想的な添字0の番地が渡された。その方がアドレスの計算が楽だからである。2次元配列は、各列(FORTRANだからcolumn-majorである)の仮装先頭アドレスの1次元テーブルが同時に渡された。足し算だけでアドレスを計算するためである。Pointerベクトルのpointerを渡したわけで、今から考えると、列と行の違いはあるが、何かC言語を彷彿とさせる。

6個のインデックスレジスタ、14個のAレジスタ(累算器、一部インデックスレジスタと共用)、および各種インディケータは、メモリ(もちろん実メモリ)の0~31番地のアドレスに割り当てられていた。31番地は実時間クロックレジスタであったが、これに何かを書き込んでとんでもないことが起こった(起こした?)という伝説を聞いたことがある。HITAC 5020は実に忘れがたい名機であった。

後にベクトルコンピュータHITAC S810を使ったが、「5020と似ている」と直感した。倍精度が基本であること、倍精度数の積の仮数が内部的に4倍長分(14バイト)保持される点、実アドレスモードであること、事実上FORTRAN専用機である点など。ついでにS810の拡張記憶(SSD)も5020のDRUM DIMENSION(実行中の作業領域をドラムに取る)に見えた。

これとは別に、日立は、大・中型汎用機のHITAC 8000シリーズ(IC採用)を発表した。これらは、IBMのSystem/360 に刺激された動きであろう。ちなみに8700/8800は8000シリーズとは別である。

3) 日本電気
日本電気はワン・マシン・コンセプトのNEACシリーズ2200を発表した(磁気コアメモリを利用し、一部はICであった)。

left-arrow 50history-bottom right-arrow