スーパーコンピュータ技術史
さらに、周辺回路 の冷却についても液冷が選択されるようになり、かつてのCray-2のようなフロリナート液浸のリバイバルの他、TSUBAME KFCの油漬(PAO)など、材料についても新しい検討が進められている。効率の点で、蒸発冷却の採用も検討されており、新材料としてはNovecがある。フロリナートもNovecも品番により沸点はさまざまなものが用意されているが、Novec 7000 は沸点が摂氏34度である。一方で蒸発冷却は密閉を必要とするなど扱いが面倒という難点があるため、ZettaScalerではフロリナートでも特に沸点が高い(摂氏174度)FC-43 を採用して扱い易さを向上させている。
さらに意欲的な試みとしては、大幅に安価な水の利用や、さらには河川や海洋中への設置を可能であれば目標として、洗濯機等の家電や屋外電気機器の防水仕様で行われるような、基板を完全にモールドしてしまうような手法も研究されている。
200X年代中盤以降のトピックを挙げる。
PEそのものの設計は、クレイらによって設計されたものとあまり変わりはない。プロセッサ間通信の問題は、外部バス化していたものを、内部バス化することによって得られている。ビット数を増やすことによって、帯域を増やし、クロック数を増やす(短波長化する)ことによってプロセッサ内部の通信量を増やす手法によって、最大の性能を達成している。
PEのトポロジー設計に関しては、様々な考え方があるが、各プロセッサを専用化するのか、汎用的に用いるのかによって、性能差が歴然となる。現在までの研究開発によれば、ソフトウェア・アルゴリズムによって可変的にPEのトポロジーを変更できる仕組みが最大の性能を発揮することは事実である。なぜならば、解くべき問題及び課題をアルゴリズムに分解し、それをPE間のプロセッサ連鎖に置き換えることによって、最大の性能を発揮させることが可能なためである。
PEのトポロジー設計に関しては、最適化設計と呼ばれる方法がある。ヒエラルキー型のトップダウン設計方法(あくまでもPEのトポロジーがトップダウン型となっているだけ)と演算アルゴリズムによって可変可能なトポロジーを選択する方法が考えられる。前者はBlue Geneで、後者は最新のGRAPE-DRで使用されている設計方法である。演算アルゴリズムに適した設計方法は、ソフトウエアのアルゴリズムの研究からフィードバックされている。ただし、無限再帰法などのアルゴリズムはPEの設計では難しいため、スタックを使わない計算方法を選択する必要がある。つまり、ハードウエアではLIFO 型ではなくFIFO型の設計となる。この設計方法がパイプライン演算の根幹をなしている。
この相互の蓄積がソフトウエア技術を生むことになる。なお、ソフトウエア技術の場合には、シンプルなアルゴリズムが最速であるという保証はない。あくまでも、データ構造との間で検討されるべきものである。ゆえに、スーパーコンピュータでは、過去からの継承性によって、FORTRANやCさらにはC++が開発に用いられる。近年、C++の利用が増えているのは、より良いCとしての活用方法であり、新たに加わったオブジェクト指向等に関しては、あくまでもライブラリ構築の際におけるカプセル化や機能モジュールの抽象化を目的にしているためである。
ロジックICを構築できるメーカがファブレス化を図った結果として、ファウンドリ側のプロセス細密化競争が進み、2020年現在ベース回路設計において7nmスケールのプロセスが実現している。この事が、CPUの多数コア内蔵を可能にし、同じ床面積で以前の2倍スケールの並列化を可能にしている。確かに、並列化は重要であり、大きな数のCPUを同時並列にすることによって、より大規模なデータ処理が可能になる。しかしながら、ここで大きな問題に遭遇する。それは「並列化のジレンマ」と呼ばれる問題である。並列化に適したアルゴリズムならば、其れ相応の性能が出るが、並列化に適さないアルゴリズムであると、並列計算上の無駄となり、せっかくの大規模並列が無駄になるという問題である。そのため、より性能の高い計算機を作るためには、並列化可能部分は大規模並列化を進め、並列化の効果が薄い計算部分はスカラー計算機の先読み分岐等を駆使したプログラムが行われるようになった。
なお、先読み分岐(予測分岐)なども、既存CPUの精密化によって可能になった技術でもある。
その後1980年代後半以後の、ベクトル型スーパーコンピュータで見られた並列化以外の技術的発展等について述べる。