Cray-1
典型的な科学技術計算は大きなデータセットを読み込み、何らかの変換を加え、書き戻すというものである。通常、変換はデータセット内のデータそれぞれに等しく適用される。例えば、百万個の数値それぞれに 5 を加算するというようなプログラムが考えられる。一般的なコンピュータでは、百万回ループして個々の数値に5を加算していく。つまり、
のような命令を百万個生成するようなものである。コンピュータ内部では、この命令を実行するためにいくつかの過程を踏む。まず、命令を読み込んで解読(デコード)する。次に必要な追加情報を集める。この命令の場合、数値 b と c を集めることになる。そして加算を実行して結果を格納する。
システムは12個の機能ユニットがあるが、並列性には制限がある。1サイクルに1命令がユニットにフェッチされるが、実行は並列に行われ、1サイクル毎に最大で2個の命令が完了する。理論上の性能は160MIPS(80MHz×2命令)だが、制限により実際の浮動小数点演算性能は136MFLOPSである。しかし、ベクター命令を注意深く使用してchainを作るようにすれば最高で250MFLOPSの性能を出すことができる。
Cray-1は大きなデータセットを処理するよう設計されているため、I/O回路の設計にも時間がかけられた。クレイがCDCで設計したものにはI/O専用のコンピュータが含まれていたが、それは必要とされなかった。代わりにCray-1は4台の6チャネル・コントローラを持ち、各コントローラが4サイクルに1回メモリにアクセスできるようにした。チャネルは16ビット幅で、制御ビットとして3ビット、エラー訂正用に4ビットを使用する。最大転送速度は100nsに1ワードであり、マシン全体では500Kワード/sとなる。
最初のモデルCray-1Aは、フロン冷却システムを含めて重量5.5トンであった。RAMを100万ワード搭載した場合、消費電力は115kWであった。冷却システムと外部記憶装置を入れるとその倍の電力消費となる。保守用のフロントエンドとしてデータゼネラル社のSuperNova S/200が使われた。これを使って起動時にオペレーティングシステムを本体に送り込み、動作中のCPUを監視し、オプションとして操作用としても使用した。これは後にEclipseに置き換えられた。