パイロットACE

パイロットACE（Pilot ACE）は、イギリスで初めて作られたコンピュータの一つである。1950年代初頭にイギリス国立物理学研究所(NPL)で作られたもので、同時代にイギリスで作られたManchester Mark IやEDSACなどと同様に、最初期のプログラム内蔵方式のコンピュータの一つである。アラン・チューリングが設計した完全版ACE(Automatic Computing Engine)のプロトタイプ版として作られたものだったが、完成前にチューリングはNPLを去った。

歴史
パイロットACEは、チューリングが設計した完全版ACEの一部の機能を省略して構築されたものである。チューリングがNPLを去った（その理由には、ACEの構築が進まないことに幻滅したということもある）後、ジェームズ・H・ウィルキンソンがプロジェクトを引き継いだ。設計には、ドナルド・ワッツ・デービス、ハリー・ハスキー、も関わった。パイロットACEは1950年5月10日に最初のプログラムを実行し、同年11月に報道陣に公開された。

パイロットACEは当初はプロトタイプとして構築されたが、当時は他に計算機がなかったことから、これが主力の計算機として使われるようになるのは明らかだった。そのため、実用的なものにするための改良が加えられ、1951年後半から運用が開始され、その後数年間にわたり使用された。

パイロットACEがよく使われるようになった理由の一つとして、科学計算には必須の浮動小数点演算ができたということがある。パイロットACEは、当時の他のコンピュータとは異なり、乗算や除算のためのハードウェアを持っておらず（乗算については後にハードウェアが追加された）、固定小数点の乗除をソフトウェアで行っていた。しかし、固定小数点ではすぐに計算可能範囲を超えてしまうため、浮動小数点演算ができるようにソフトウェアを修正した。後に、ウィルキンソンは浮動小数点演算のに関する本を書いた。

パイロットACEには約800本の真空管が使われていた。主記憶装置は水銀遅延線で構成され、当初は1ワードあたり32ビットで128ワードの容量を持っていたが、後に352ワードに拡張された。1954年に4096ワードのドラムメモリが追加された。基本クロックレートは1メガヘルツで、初期のイギリスのコンピュータの中では最速だった。水銀遅延線を使用しているため、命令の実行時間はメモリのどこに格納されているかにより大きく変化し、例えば加算にかかる時間は64から1024マイクロ秒だった。

イングリッシュ・エレクトリックが、パイロットACEの設計を元にしたを製造・販売した。

パイロットACEは1955年に稼働を停止し、ロンドンのサイエンス・ミュージアムに寄贈された。

ソフトウェア
1954年にドラムメモリが追加されたことにより、行列を扱うプログラムを実行するための制御プログラムを開発することができるようになった。ブリティッシュ・エアクラフト・コーポレーションのM. Campbell-Kelly, op. cit., p. 156.J・M・ハーンの要請によりJ. M. Hahn, Letter to M. Woodger, 20 September 1954J. M. Hahn, "Some Suggestions for Matrix Routines for Electronic Digital Computers", September 1954、ブライアン・W・マンデーは、簡単な符号語だけで「ブリック」(brick)と呼ばれるプログラムの集合を実行できるようにしたGeneral Interpretive Programme(GIP)を開発した。各ブリックは、連立方程式を解く、行列を反転させる、行列の乗算を計算するなどの単一の機能を実行することができた。このコンセプト自体は目新しいものではなかったが、行列の境界を指定しない符号語のシンプルさがGIPの特徴だった。ドラムメモリ上の行列において、2つ目と3つ目の要素を境界にしていた。パンチカードに行列を打ち込むと、境界は最初の2つの要素により与えられる。そのため、一度書いたプログラムを変更することなく、異なる大きさの行列を実行することができた。GIPは1954年から使用を開始しM. Woodger, "The History and Present Use of Digital Computers at the National Physical Laboratory." Process Control and Automation, November 1958、後にDEUCEのために改良された。

GIPで使用されるブリックはマイク・ウッジャーによって書かれた。ウッジャーは、浮動小数点を配列に格納できるようにするために、
「ブロック浮動小数点」という方式を考案した。通常、浮動小数点を表現するには、仮数部と指数部のためにそれぞれ1ワードを必要とする。ブロック浮動小数点では、配列内の全ての要素に対して同一の指数を適用することで、1ワードの仮数部のみを配列に格納すれば良いようにした。

脚注

参考文献
 James H. Wilkinson, Turing's Work at the National Physical Laboratory and the Construction of Pilot ACE, DEUCE and ACE (in Nicholas Metropolis, J. Howlett, Gian-Carlo Rota, (editors), A History of Computing in the Twentieth Century, Academic Press, New York, 1980)
 Martin Campbell-Kelly, Programming the Pilot ACE (in IEEE Annals of the History of Computing, Vol. 3 (No. 2), 1981, pp. 133–162)
 B. Jack Copeland (editor), Alan Turing's Automatic Computing Engine. Oxford University Press, 2005, 
 B. Jack Copeland, Alan Turing's Electronic Brain: The Struggle to Build the ACE, the World's Fastest Computer, Oxford University Press, 2012, 
 Michael R. Williams, A History of Computing Technology. IEEE Computer Society Press, 1997. . Chap. 8.3.4.
 How Alan Turing's Pilot ACE changed computing, BBC News, 15 May 2010
 Simon H. Lavington, Early British Computers: The Story of Vintage Computers and The People Who Built Them (Manchester University Press, 1980)
 David M. Yates, Turing's Legacy: A History of Computing at the National Physical Laboratory, 1945–1995 (Science Museum, London, 1997, )

関連項目
 真空管式コンピュータ一覧

外部リンク
 Oral history interview with Donald W. Davies - ミネソタ大学チャールズ・バベッジ研究所によるドナルド・ワッツ・デービスへのインタビュー
 The Pilot ACE in the Science Museum Group Collection
 How Alan Turing's Pilot ACE changed computing
 The world's first multi-tasking computer

Category:イングランドの発明
Category:真空管式コンピュータ
Category:1950年代のコンピュータ
Category:著名なコンピュータ
Category:コンピュータ (歴代)
Category:初期のコンピュータ
Category:イギリスの科学技術
Category:シリアル・コンピュータ