米国時間の2014年11月16日より21日までの予定で、New OrleansでSC14が開催される。こちらの詳細そのものは安藤先生が随時レポートされると思うのだが、このSC14の開催に先駆けて、IntelがSC14で発表する内容に関しての事前説明があったので、こちらをご紹介したいと思う。

ちょっとスライドが前後するが、Photo01がIntelの発表のサマリーである(Photo01)。以下、これに沿ってご紹介したい。

Photo01:大きく8項目の発表がある。もっとも全部が全部SC14で講演をするわけではなく、SC14にあわせてプレスリリースの形で発表、というものもあるだろう

Knights Landingの詳細

「これに沿って」とか書きながら、いきなり脱線していて恐縮だが、最初にKnights Landingについて。もともとKnights Landingは昨年のSC13でその存在が明らかにされたもので、その後ISC14Rajeeb Hazra博士がもう少しだけ詳細を明らかにしている(Photo02)。

Photo02:この概念図をみると、まるでHMCを8つ搭載するように見えなくもない

そんなわけでこのスライドはISC14のものそのままなのであるが、一応整理しておけば

コアは現行のXeon PhiのPentiumベースから、Silvermontベースのものに変更。"Enhanced for HPC"がVector Unitの追加以外にも何かあるかどうかは不明だ。注釈には"Modifications include AVX512 and 4 threads/core support"とあり、これを素直に読むとSilvermontベースながら4ThreadのHyperThreadingが可能になるようにも思えるが、もうひとひねりしている可能性もある。

Single Thread Performanceが3倍とされるが、これが具体的に何を意味しているのかも不明。ただし現在のハイエンドであるXeon Phi 7120Aは定格1.238GHzで61コア、16Flops/cycleという構成なので、ピーク性能は1.238×61×16=1.208TFlopsとなる。

上にあるようにAVX512がサポートされると、ひょっとすると32Flops/cycleが実現できるわけで、仮に同じ1.238GHz駆動だとしてもコアあたり39.6GFlopsであり、3TFlopsを実現するには26コアあれば住む計算になる。実際にはプロセスを微細化しているからもう少し動作周波数はあがる可能性が高く、すると20コア程度の可能性もある。もっともこのあたりは、性能/消費電力比を引き上げるために1GHz未満で動作させる可能性もあるわけで、正直はっきりしない。

MemoryにはMicronと共同開発したHMC(Hybrid Memory Cube)を用いており、最大搭載量は16GBとされ、帯域でDDR4の5倍である。現行のHMCでは2GB品と4GB品がラインナップされており、バリエーションを考えれば 2GB×2 / 4GB×2 / 4GB×4 といったところか。

Photo02ではあたかも6組以上のHMCが搭載されているように見えるが、右下に"Conceptual - Not Actual Package Layout"とあることを考えると、x8の組み合わせはこの世代では考えにくいように思う。

BandwidthはHMCの帯域が120GB/secもしくは160GB/secだから、x4構成なら480GB/sec~640GB/secとなる。DDR4との比較は、下の注釈に"Projected result based on internal Intel analysis of STREAM benchmark using a Knights Landing processor with 16GB of ultra high-bandwidth versus DDR4 memory only with all channels populated."とある。

ということは、おそらく4ch/DDR4-2133のHaswell-EPベースのXeonあたりと比較しての事であろう。DDR4-2133×4だと理論帯域は68.3GB/secで、これの5倍だと341GB/secほどになるが、比較はSTREAMベンチマークを想定してのものなので、Knights Landingの方がやや効率が落ちると考えれば120GB/sec×4の構成で、大体Haswell-EPの5倍というあたりかと想定される。Power EfficiencyとかSpaceに関しては現状、判断がしようがない。

今年後半に最初のCommercial Systemが動き出すとしているが、これはNERSC(National Energy Research Scientific Computing Center)のCoriのことと思われる(Photo03)。

Photo03:これのみSCI14のプレゼンテーションからの抜粋。NERSCは米国エネルギー省(DoE)に属する計算センター

Knights Hillの詳細

さて、次のKnights Hillの詳細が公表されたのは今回初である(Photo04)。といっても、現時点ではそこまで詳しい話はない。明確に分かることは10nmプロセスを利用する予定ということで、ということは2016年中に出てくるかどうか、かなり怪しい感じがする。あとは、

  • 第3世代のXeon Phiのアーキテクチャ
  • 第2世代のOmni Pathアーキテクチャ

という2点のみだ。Omni Pathは次以降のスライドに出てくるのでそちらに回すとして、第3世代のXeon Phiとは何か? という話から説明しよう。

Photo04:まるでKnights Landingのパッケージが既存のXeonと互換性があるかのようなイメージだが、もちろんそんな事はないだろう。実際はかなり馬鹿でかいパッケージになると思われる

Larrabeeから数えればKnights Landingは第4世代(Larrabee→Knights Ferry→Knights Corner→Knights Landing)のアーキテクチャという話もあるが、実質的にLarrabbeからKnights Cornerまでは基本構成は変わっておらず、Knights LandingでCPUコアをSilvermontに、Vector UnitをAVX512互換にといった辺りで初めてメジャーなアーキテクチャ変更になったといえる。逆に考えれば、"第3世代"というからには、Knights Corner→Knights Landingと同程度の大きな変更がある可能性は高い。ただ現状ではそれがどんなものか、に関しての手がかりすらない。

余談だが、Knights Landingsは単体で3TFlops以上だから、これをある程度集積すればPFlopsの性能は比較的容易に実現できる。実際NERSCのCoriですら、同じNERSCのHOPPERの10倍の性能を目標としている。HOPPERが1.28PFlopsのシステムだから、Coriは13PFlops以上になるわけだ。なので、Photo04の下のほうにある">100PFlops"は無理な数字ではないとはいえる。

OmniScaleとOmniPath

次はこちら(Photo05)である。Omni-Scaleというテクノロジー(というか、このレベルではまだ概念に近い)は、要するにCPUとアクセラレータを接続する高速リンクである。

Photo05:このスライドもISC14で示されたものである。Omni Scaleは、さまざまなネットワークトポロジ全体を包括する概念で、Omni Pathは具体的なPoint-to-Pointの接続テクノロジーという事だそうだ

Knights CornerとかKnights Landingの場合、PCIeのカードで、間違いなくここがボトルネックになるのは明白であるというか、もうすでになっている。もちろんIntelはQPIなどの高速リンクも持っているが、HPCを構成するためにはもっとスケールアウトに対応できる高速ネットワークリンクが必要である。そうしたこともあって、新たにOmniScaleというものが用意されたわけであるが、この実態がOmni-Pathである(Photo06)。

Photo06:スイッチの数は、Infinibandベースのスイッチ(Mellanox CS7500+Mellanox SB7700/SB7790)と比較して、IntelのOmni-Pathスイッチだと半分に減らせるということらしいが、詳細は不明

Photo05にもあるように、Silicon Photonicsを利用すると言っている以上、おそらくは光ファイバーでの接続になると思われるが、これを利用することで

  • スイッチは最大48ポートまで利用可能
  • スイッチ数も1/2にできる。
  • リンク速度は100Gbps
  • LatencyはInfinibandの約半分

といったメリットがあるとする。ちなみにPhoto05に話を戻すと、XeonやXeon PhiにこのOmni Scale Fabricが統合されているというのは、実態としてはOmni-PathのI/Fを統合しているということだと考えられるが、いきなりXeonやXeon Phiから光が出るわけではなく、外付けでSilicon Photonicsのトランシーバが用意され、ここに電気信号で接続するためのPHYが内蔵されるという意味だと思われる。

こうなったときに、個々のチップのI/FはIntelが提供するとしてSwitch側はどうするか? ということで発表されたのがPhoto07である。このIntel Fabric Builderを利用することで、3rd PartyがSwitchを提供することが可能になった。

Photo07:Open Fabrics Allianceはスイッチベンダーによる標準団体で、元々はInfinibandのスイッチ向けのOpenIB Allianceだったのが、iWARP(RDMA over Ethernet)のサポートを加えた形。トランスポート層と独立にFabricを構成できる(というか、トランスポート層に依存しないFabricのアーキテクチャを構成する)目的のもの。これにより、ミドルウェアをOFED(OpenFabrics Enterprise Distribution)準拠とすることが出来、その上で自由にアプリケーションを構築できる

ソフトウェア

単にハードウェアだけでなくソフトウェアの貢献も行っているとする(Photo08)。これは先ほど出てきたNERSCのHopper上で動くアプリケーションを分析した上で、その頻度を見たものだが、ある程度特定のプログラムが非常に多くの計算時間を消費しているとする。これに向けて、IntelはParallel Computing Centerを提供し、コードの最適化や再利用などを促進しようとしているとする。

Photo08:HopperはCray XE6ベースのシステムで、12コアのMagnyCoursベースOpteron×2のノードが6384個集積された構成。GPGPUアクセラレータなどは搭載されていない。ちなみにParallel Computing Centerを利用するにはまずIntel Software Academic Programへの参加が必要。日本には今のところCenterは無いそうだ

またOpen Source Communityへの貢献として、Lustreのコードの85%はIntelの提供によるものだという説明もあった(Photo09)。またクラスタ環境でのアプリケーションの早期開発に向けて、Intel Cluster Readyが用意されていることも述べられた(Photo10)。

Photo09:Lustreはクラスタベースのファイルシステムで、性能の高さとあいまってかなりユーザーが多いそうである

Photo10:Intel Cluster Readyは別に今回初めて発表された訳ではないが、ついでに説明しておこう、という事であろう

ということで

簡単にSC14における発表の概略をご説明した。もう少し細かい話がSC14でどこまで出てくるかは未知数だが、出てきたとしてもKnights Landing絡みでKnights Hillは当分詳細は不明なままであろう。

ところで米国時間の11月14日、米国のDoE(Department of Energy:エネルギー省)はIBM/NVIDIAのシステムに対して4億2500万ドルで発注する事を明らかにした

正確にいえばORNL(Oak Ridge National Laboratory:オークリッジ国立研究所)の"Summit"とLLNLの"Sierra"という2つのシステム向けに3億2500万ドル支払い、さらにFastForward2というその先のシステムの研究に向けての費用でさらに1億ドルの支払いとなっている。

昨今あちこちで話題になっているエクサスケールはもともと、DoEがExascale Initiative Roadmapということで2009年に示したのが始まりである。当初は2018年に1EFlops(1000PFlops)を20MWの消費電力で、という目標であったが、さすがに消費電力20MWは厳しいということで、2018年に1EFlopsの目標は変わらないままに、消費電力20MWの実現は2022年に後退している。

実のところIntelのXeon Phiシリーズは当然このDoEのExascale Initiativeに呼応したものだったわけで、ORNL/LLNLのシステムの受注も当然Intelとしては狙っていたはずであるが、これをIBM/NVIDIA連合に奪われたことが、Xeon Phiの今後にどの程度の影響があるのか、ちょっと気になる部分である。