今後の方向性

半導体のトランジスタの微小化はまだ続き、高性能プロセサの世界ではコア数やスレッド数の増加や倍精度浮動小数点演算性能の向上が続く。また、電力効率やメモリバンド幅も改善が続くと楽観的な見通しが述べられた。そしてマルチコアのXeonではシリアル実行とパラレル実行の両方に対して最適化が行われる。メニーコアのXeon Phiは高度のパラレル実行や高度にベクトル化されたアプリの実行に最適化が行われる。ということで、用途に応じて使い分けがなされるので、両方のプロセサの開発が必要という。

半導体の微細化はまだ続き、コア数やスレッド数、DP性能はまだ上がる。一般的なシリアルとパラレル実行に最適化したマルチコアプロセサと高度に並列化やベクトル化されたアプリの実行に最適化したメニーコアプロセサの両方が必要になる

高並列なプロセサは、多数のIAコアを搭載し、大量のスレッドの実行、ワイドなベクトル実行機能を提供する。この場合のIAコアは、スタンドアローンで動作する汎用のCPUである。そしてキャッシュは、現在のXeon CPUと同様に、コヒーレンシを維持する。

メモリはオンパッケージの高バンド幅メモリと大容量のDDR DRAMの両方をサポートする。そして、複数プロセサを接続するファブリックもパッケージに内蔵するようになる。

Xeon Phiは、IAのメニーコアで、多数のスレッド、多数の幅の広いベクタの実行を目指す。そして、コヒーレントなキャッシュ、同一パッケージに高バンド幅DRAMやファブリックの搭載を目指していく

コアを汎用CPUとすることで、従来から使い慣れているソフトウェアツールが使える。また、MPIやOpenMPなどの使い慣れたプログラミングモデルが使えるというメリットがある。

そして、マルチコアのシステムとメニーコアのシステムに対して、同じプログラムが走らせられる。そのため、マルチコアの環境でのプログラムの最適化はメニーコアの性能の向上にも役立つ。

まとめとして、KNLはXeon Phiとしては初のSelf-Bootができるプロセサである。それに加えて、スカラとベクトル両方の性能の大幅改善、メモリバンド幅の大幅な改善を実現しうる。

そして、Xeon CPUと命令互換であり、同じバイナリが実行できる。このため、Xeon CPUとXeon Phiとで共通のプログラミングモデルに基づいてプログラムを開発することができるというメリットがある。

KNLは、Self-Bootができるプロセサであり、Xeon CPUとも命令互換を実現している。また、KNCと比べると、スカラ性能、ベクトル性能、メモリバンド幅が大幅に改善されている

複数のコアでプログラムを実行する場合、一般に同期が必要となる。メニーコアの場合は、多数のプロセサの同期が必要であるので、無視できないオーバヘッドとなることが多い。Sodani氏に、同期に関して何らかの機能があるのかと質問したところ、コアの改善やメッシュの採用で同期に掛かる時間は短くなっている。また、同期の機能を入れるとXeon CPUと非互換になる。そのため。KNLでは特別な機構は設けていないという回答であった。