理研はアプリケーションの実行効率アップを検討

理研の南氏は、超並列で実効性能を上げるためには逐次実効部分を非常に小さくすることが必要、さらにメモリバンド幅が制約になるのでメモリバンド幅を抑えるようなチューニングが必要となると言う。

理研では、全地球の大気循環モデルであるNICAM、地震波伝搬シミュレータのSeism3D、平面波展開を行う第一原理分子動力学解析のPHASE、非定常流体解析を行うFrontFlow/Blue、実空間第一原理分子動力学計算を行うRSDFT、格子QCD計算を行うLattice QCDプログラムを代表的なプログラムとして取り上げ、超並列化を行うための分析を行っている。具体的にはこれらのプログラムの計算の大部分を占めるカーネル部を分析し、より高い並列度を達成する手段の検討とそれぞれのプロセサコアでの実行効率を高める手段の検討を行っているという。

理研がチューニングを行っているプログラムの一覧

しかし、NICAM、Seism3DやFrontFlow/Blueはメモリアクセスが多くメモリバンド幅が制約になりそうであり、PHASEは解析対象の原子数が少ない場合は並列度が少なく、RSDFTも問題規模が小さい場合は全ノードを使いきれないということが分かったという。また、Lattice QCDは通信トポロジを意識した高度なプログラミングが必要と、いずれも一筋縄ではいかないようである。また、南氏の発表では、これらの問題をどのように解決するのかについては触れられず、超並列システムでのチューングは前途多難という感じであった。

そして、南氏は次世代スパコンのコンパイラは、まだ、開発途上であり、自動並列や最適化機能は不十分であり、性能を出すためにはコンパイラの癖を意識したプログラミングが必要であると述べていた。

SPARC64 VIIIfxは、2009年9月にパワーオンしており、現在、富士通社内でハード、ソフトのデバグ中と発表された。また、Top500への登録目標が2012年6月であるので、LINPACK 10PFlopsの測定が可能になるフルシステムの稼働はその数カ月前と考えられるが、2010年度末(2011年3月)には部分的なシステムが稼働予定であり、間もなく、製造が開始されると考えられる。