ALH84001

私的コラム&雑記(&メモ)

今週の興味深かった記事(2019年 第34週)

2019-08-25 | 興味深かった話題

Intel Nervana NPP-I 1000

Intel NNP-I 1000 Spring Hill Details at Hot Chips 31 - ServeTheHome

 本製品はIntelが買収したNervanaによる製品で、Intelはターゲットの異なる製品群を持つNeural Networkプロセッサー会社をかれこれ三社も買収している。消費者向けビジョンプロセッサーのMovidius、車載自動運転補助のMobilEye、そしてデータセンター向けプロセッサーのNervanaである。ちなみに、MovidiusとMobilEyeはイスラエルの会社であるがNervanaはシリコンバレーの会社である。

 記事中の写真ではSpring Hillの巨大なダイにLPDDR4Xのダイがオンパッケージで接続されているように見える。写真では大型のチップに見えるが、基板の規格がM.2 22110だとすると横幅が22 mmしかないことになる。統合されているCPUコアがSunny CoveであることからIntel 10nmプロセスで製造されていると推測できる。
 ところで、Intelは第10世代CoreからCoreプロセッサーとしてのコードネーム(例:Coffee Lake・Ice Lake・Comet Lakeなど)とは別にCPUコアにもSunny Coveという名称を付けている。これは推測するに、Coreプロセッサーの名称とコアの名称がイコールでなくなるからであろう。これまではCoreプロセッサーだけに統合してきたためCoreプロセッサーの名称≒コアの名称と考えて問題無かったが、今後はNervanaプロセッサーに統合したり、あるいはFoverosマルチチップ技術などによって異種コアと混載されたCoreプロセッサーが登場するからであろう。

 どういう訳か、M.2というとイコールNVMe SSDかWi-Fiアダプターという風潮があるが、M.2は物理フォームファクターの規格で、プロトコルはUSB/SATA/PCIe等で選択可能(切り欠きによって対応プロトコルを区別している)なので、このようなNeural Network Processor等も接続可能である。もっとも、縦横だけでなく厚みなど物理形状に制約があるため、電気的には実現可能でもGPUやRAIDコントローラーなどは製品化しにくいであろうが。

 INT4/INT8/FP16のみの対応で推論のみに対応しているが、50w・92 TOPS (INT8)ということで、Google TPUv3(学習も対応でbFP16で90TFLOPS)・AWS Inferentia(推論のみ100TOPS)・Qualcomm AI100(推論のみ350TOPS)などと比較すると見劣りするが、一方で低い消費電力(50w)・狭いインターフェース(PCIe x4)・さらに記事中のFacebookのGlacier Point V2ボードにM.2スロットが6ポート設けられているように、パフォーマンスが必要な場合は複数モジュールを束ねて使用する思想なのかもしれない。
 Nervanaからは既にNNP T-1000(Spring Crest)が発表済みであるが、NNP I-1000は推論(Inference)用・NNP T-1000は学習(Training)用ということのようである。

Cray Rosetta

How Cray makes Ethernet suited for HPC and AI with Slingshot - The Next Platform

 8月14~16日の日程で開催されたHot Interconnect 26でCrayのCTOがキーノート スピーチを行い、Slingshot/Rosetta ASICについて説明したらしい。
※注:どうやら、Slingshotはインターコネクト技術全体を指し、RosettaはスイッチASICを指すらしい。

 このRosetta ASICは注目に値する。なにせCrayのようなHPCベンダーが単なるPCクラスターベンダーと異なるのは、インターコネクト・コンパイラー・OS・MPIなどシステムとしての統合技術が差別化要因によるわけだが、Crayはそのインターコネクト(Gemini、Ariesなど)を2012年にIntelに売却してしまい先行きが心配されていた。それにも関わらず、そのCrayが今年後半から出荷されるShastaシステムにおいて独自新インターコネクトを持ってきたためだ。

 さらに、米国エネルギー省が2020年前後に国立研究所(オークリッジ国立研究所・アラゴンヌ国立研究所・ローレンスリバモア国立研究所・NERSC)に設置するエクサスケールのフラッグシップHPCは3台が計画されていたが、CrayはShastaシステムでその3台すべてを落札した。

SiteSystemYearContractorBaseCPUAccel.Note
DOE LBNLPerlmutter (NERSC-9) 2020 Cray/NVIDIA/AMD Cray Shasta AMD Epyc NVIDIA Volta Next Pre-Exascale
DOE ArgonneAurora (A21) 2021 Intel/Cray Cray Shasta Intel Xeon Intel Xe 1 Exa Flops
DOE ORNLFrontier 2022 Cray/AMD Cray Shasta AMD Epyc AMD Radeon Instinct 1.5 Exa Flops
DOE LLNLEl Capitan 2023 Cray Cray Shasta TBD TBD > 1.5 Exa Flops

 IntelがCrayのインターコネクトの買収に14,000万ドル・NVIDIAがMellanoxの買収に69億ドルを支払っていることを鑑みれば、Crayが簡単にインターコネクトを作れるはずがなく、NextPlatformの記事では、Rosetta ASICはBroadcom(Tomahawk III)かMellanox(Spectrum-2)あたりのスイッチAISCを買って来たと見ているようだが、どうも詳細が不明瞭で分からない(個人的には、もし本当にBroadcomやMellanoxの製品の流用ならBroadcomやMellanoxが登壇するべきじゃないかと思うのだが…)。

 そもそもの話として、Slingshotは詳細こそ不明だがEthernet互換技術が売りとされている。とはいえ通常のEthernetは汎用性が高く=ソフトウェア処理が多く・プロトコルスタックが重厚であるため、そのままでは遅延が大き過ぎる。逆を言えば、ある程度の汎用性を捨ててハードウェア処理を増やしプロトコルスタックを薄くすることで遅延を減らすことは可能で、実際にRoCEというEthernetハードウェアにInfiniBandプロトコルを組み合わせた高速Ethernet互換技術が存在する。ちなみにBroadcom Tomahawk IIIやMellanox Spectrum-2はEthernetスイッチであるがRoCEをスイッチできる。
 記事中にはRCoEとSlingshotの遅延の比較グラフが載っており、いかにSlingshotが遅延を減らしたかが分かるが、恐らくはRoCEと同様にEthernetハードウェアに軽量なプロトコルスタックを載せているのだろう。

 あと、個人的に疑問なのはネットワークアダプターである。過去のCrayのインターコネクト(例:Aries)ではPCI-Expressインターフェース・ネットワークコントローラー・48ポートルーターを統合したASICで、独自のDragonflyトポロジーを採用し外部にスイッチを必要としなかった。今回はネットワークコントローラーとスイッチASIC=Rosettaが分かれているようだが、全体像としてどうなるのか気になるところである。

Comment

先週の興味深かった記事(2019年 第33週)

2019-08-18 | 興味深かった話題

DRAM価格動向

Market Activity - DRAM eXchange

 先週/今週のニュースというわけでもないのだが、DRAM価格が再び値下がりを開始した。
 日本政府によるフッ化水素輸出の厳格化(※ホワイト国≒最恵国待遇から普通の待遇にするという話なので、輸出規制ではない)のニュースを受けて一部メディアが騒いだ関係で価格が10~20%ほど跳ね上がっていたが、急激に値下がりしはじめている。

 韓国政府が、日本政府によるホワイト国からの除外への報復(上述の通り輸出規制でもないので、明確なWTO違反であるが)としてDRAM等の輸出を禁止したようだが、DRAMについては米Micronほか台Nanyaなども生産しているほか、NANDについても米Micronのほか米Western Digital・東芝が生産しているので特に影響はない。

 唯一、Samsung・SK Hynixのみ製造していて影響が懸念されるのはHBM2(あと細かい話ではGDDR5X・GDDR6なども一部GPU用メモリー)である。消費者レベルではHBM2はNVIDIAやAMDのGPUでの採用が知られているが、これらはそもそも日本ではなく中国・台湾で製造され、完成品の基板の形で日本に輸入されているので直接は影響がない。これはソニーのPlayStationでも同様と思われる(台湾Foxconnが輸入すればいい)。
 影響がありそうなのは富士通/理研が構築中の次期フラッグシップHPC=富岳に搭載されるA64FXと、NECがHPC向けに販売しているSX-Aurora Tsubasaベクトルプロセッサーであるが(←これを実際に取扱っているSIerのオッサンたちがこんな中二病ネームを連呼しいる姿とか想像できない…)、いずれもプロセッサー本体は台湾TSMCでの製造なので恐らくはTSMCがHBM2を輸入・パッケージングすれば済む話だろう。

Huawei Harmoniy OS

組み込みOS業界の黒船となるか、ファーウェイの「HarmonyOS」 - @IT

 発表から一週間ほど経ったが、いまいち内容が明確でない。
 マイクロ カーネルのくだりは、30年ほど前にあったモノリシック vs マイクロ カーネル論争でマイクロ カーネル支持派が主張していた内容と大きな違いはなく目新しさはない(そして、特定用途用を除けばメジャーなOSはいずれもモノリシック カーネルあるいはモジュラー化されたハイブリッドカーネルである)。

 記事中にある分散アーキテクチャと分散仮想バスというのも記事の中身だけではよく分からない。
 マイクロ カーネルでは必然的に従来カーネルが提供してきた機能が分散されたサービスとして提供されるが、サービス間の通信の遅さは問題点でもあるので、単に「分散アーキテクチャ」といわれても優劣を判断できないし、多数の通信プロトコルを抽象化してパスをひとつにするというのは管理が容易そうな反面、多数の通信のうち重要な通信を優先制御するQoSが無ければ、うまく動作しないのではないかと思う(タスクの優先制御については述べられているが、通信の優先制御はまた別の話である)。
 また、タスク実行の優先制御と遅延についても述べられているが、優先制御されることが良いとも一概にはいえない。ハードウェアでもソフトウェアでもそうだが、優先度の高いタスクを低遅延に処理させるために、遅く処理して構わないタスクの処理をキューに溜めて遅延させる必要がある。逆説的に言えば、優先されるタスクにリソースを空けておく必要があるため処理の効率は落ちる。PCなどで、あらゆるタスクを総合的に高速に実行したい場合は極端な優先制御はしない方が良いが、車載など人命に関わる場合はそういうわけにはいかない。用途に合わせた匙加減の問題である。記事中には「Linuxと比べてアプリケーションの応答遅延を25.7%削減できる」というが普通のLinuxカーネルは上述の理由でリアルタイム処理に最適化されていないし、逆に組込向けやAutomotive Grade Linuxなどであればリアルタイムに最適化されたカーネルもあるはずで、一概にどれが正しいとは言えない。

 本稿で私=素人が指摘しているような内容は、当然Huawei内部では研究・検討・対策もされているのであろうが、その内容を見られるような発表には見えなかった。

 あと、消費者目線ではAndroidとのアプリケーションレベルの互換性が気になるところであろうが、Ubuntu Touch・Jolla Sailfish・Palm webOS含め、いずれも成功していない。Goole Playストアの有無は大きいのではと思われる(中国以外では)。そもそも中国国内ではGoogle Playが使えないためBaiduやTencentを引き続き使えばいいのかもしれないが、中国以外では普及しないだろう。
 Ubuntu TouchやChrome OSはAndroidをコンテナーで動かす仕組みで実現しているが、Harmony OSはLinuxカーネルベースではないため、この方式は実現が難しそうだ。

Comment

先週の興味深かった記事(2019年 第32週)

2019-08-11 | 興味深かった話題

Exynos 9825

Samsung Announces the Exynos 9825 SoC: First 7nm EUV Silicon Chip - AnandTech

 恐らく、新規プロセスのためリスク低減を狙った結果ではないかと推測するが、AnandTech記事中にもある通りExynos 9820からの強化は限定的で、機能的には「次世代」とは呼び難いが、新規のEUVプロセスを採用したことを考慮すれば無理からぬ話ではある。
 有名なIntelの昔のTick-Tockモデルを例にとると、既存のリスクの低い製造プロセスを使ってリスクの高い新アーキテクチャーのプロセッサーを実装し、新規のリスクの高い製造プロセスを使って既存のリスクの低いアーキテクチャーのプロセッサーを実装することでリスクを低減する。とはいえ、製造面のリスクは消費者の知った話ではないし、次世代Galaxy S11では別のプロセッサーが用意されるのだと期待したい。

 気になるのは、9820では実装されていたShared complex sL3 @ 4MBの記載が無い点だろう。単に記載が省略されているだけなのか、廃止されたのかは不明である。
 EUVでは、初期投資はともかくリソグラフィーのコストは12/8nmまで使われていたクアドパターニングよりは下がると見られており、半導体サイズは大きく(≒高コストに)しやすいはずで、大容量キャッシュを搭載している可能性は高い。

NVIDIAのディスクアクセス技術

Nvidia GPU Accelerators Get A Direct Pipe To Big Data - NextPlatform

 昔、NVIDIAはx86 CPU開発の可能性を模索していた時代もあったようだが、現在はCPUに依存しない/CPUを経由しない演算に注力しているように見える。

 これは不思議ではない。例えば東大/産総研のABCIなどの場合もXeon Scalable 2基にNVIDIA Tesla V100 4基で構成されていて、演算における比率はCPUよりもGPUの方が大きい。今やHPC/クラウドで実行されるワークロードはGPUへの依存度が高く、さらに増え続けている。システムの制御は相変わらずCPU依存とはいえ、例えばどのビッグデータを処理するか制御するのはCPU経由となるかもしれないが、全てのデータをCPU経由で読むのは効率が悪い。

 もっとも、NVIDIAは今回の発表をMellanox買収に合わせてきた感じが強く思える。現在のHPCなど大型のシステムではデータは外部ストレージに格納されているが、そのネットワークアダプターはCPU側の制御されている。この従来型の構成では必然的にデータはCPU/メインメモリー経由となる。
 Nextplatformの記事で興味深いのはCPU・GPU・ネットワークアダプターを接続しているのが一般的なチップセット(つまりPCIe-to-PCIeブリッジ)ではなくPCIe Switchである点で、つまりネットワークアダプターはCPUとGPUの両者にホストされている。だからGPUからネットワークアダプターを直接制御して、データをメインメモリーを通さずにGPUーメモリーに直接ロードできる。
 とはいえ、このような構成が現在一般的かというと怪しい。もっとも、Intel Xeonの弱点のひとつはPCIeのレーン/リンクの少なさ(参考:AMD Epyc 128レーンに対し、Skylake-SP 48レーン)で、GPU・InfiniBand EDR・チップセット・NVMe…と接続してしまうと枯渇してしまうため、PCIeスイッチは意外によく見かける。現在はXeonをホストにGPUやInfiniBandをデバイスとしてスイッチ経由で接続している状態であるが、ハードウェアは似た構成のままでGPUをInfiniBandのホストとすることは可能かもしれない。

 いずれにせよ、NVIDIAがTesla GPUとMellanoxのInfiniBandを統合的に利用可能とすることでBigDataやTensorプロセッシングの効率は上がりそうだ(この場合はGPUに搭載されるメモリーの容量も増やす必要がありそうだ)。

Comment

今週の興味深かった記事(2019年 第31週)

2019-08-03 | 興味深かった話題

理研/富士通 京コンピューターがGraph500 9連続1位

スパコン京が有終の美 ビッグデータ処理 V9 - 神戸新聞

 京コンピューターがTop500のGraph500で首位を記録し、4年半連続となる9連続で首位をマークしたらしい。
 京コンピューターは8月末に運用終了の予定であるが、今でも批判が絶えず、その一部は事実に反する。事実と反するコメントで最大のものは「ベンチマーク番長(ベンチマークでしか存在感が無い≒実用的でない、という意味)」というものだろう。

 現在のHPCの主流はTop500で首位のSummitに代表されるような汎用プロセッサー + アクセラレーターを組み合わせたハイブリッド構成であるのに対し、京/富岳は汎用プロセッサーのみを使ったHPCである。アクセラレーターはピーク性能を得やすいが複雑で並列化/ベクトル化されていないような処理では性能が大きく劣化する。これに対し汎用プロセッサーでは比較的性能の劣化が小さい。
 これは決してアクセラレーターが汎用性が低いとか、ハイブリッドな構成はベンチマークでしか強くない、といったような意味ではなく議論の絶えない話題であるが、汎用プロセッサーのみの構成はコストパフォーマンスは低いが汎用性が高い。Graph500でトップというのも納得の結果と言える。

 京コンピューターはHPLinpackを使うTop500トップからの陥落は早かったが、今年6月のランキングでもビッグデータ処理を想定したGraph500で首位のほかHPCG 3位にランクされており、汎用性は高いはずである。

AMD Zen 2とTSMC 7nmの特性

AMDアーキテクチャの変化の原因となった7nmプロセスの特性 - PC Watch

 後藤氏がTSMC N7について解説されているが、個人的に気になるのはZEN3以降である。
 もし、ZENが登場した2018年初頭に、ある程度CPUアーキテクチャーに詳しい人にZENの未来の姿(ZEN2またはZEN3)を予想させるとすれば、現在のZEN2に比較的近い姿を予測することができたはずである。それは、ZENの弱点が明らかだったからである。では、ZEN2の詳細が明らかになった今、ZEN3は予測できるか?というと、なかなか難しいのではないか。

 後藤氏は記事中では淡々とTSMC N7について解説されているが(それが趣旨なので)、気になるのは僅か74平方mmというZEN2のCPUダイ(CCD)である。なにせCPUのように外部と結線が多いダイでは100平方mm弱あたりが限界だから、仮に7nmプロセスから5nmプロセスに移行するとして場合に面積が半分(単純に計算して(5/7)^2=0.51...)になるというのは考えられない。恐らくZEN/ZEN+からZEN2でL3キャッシュ容量が倍増されたのも半導体面積を稼ぐことが目的であろうし、5nmに移行しても100平方mm弱の面積は維持されることだろう。とはいえ、AVX-512は発案者のIntelすらブレている状態(Xeon Phi・Skylake-SP・Cannonlake・Ice Lakeでそれぞれサポートしている命令セットに違いがある)で普及には程遠いのでサポートされるとは思えないし、なかなか予測がつきにくい。

IntelがOmni-Pathから撤退

Intel Confirms Retreat on Omni-Path - HPCWire

 本件をひとことで評価するなら、Intelは買収した組織を活かすのが下手ということなのかもしれない。
 Intelは30年も前からEthernetアダプター製品ラインナップを持っているものの、Omni-Pathはそれとは別のラインで、Crayから買収した、同社でAries/Geminiインターコネクトを開発した部門が元になっている。ところが、Aries/GeminiはHPC特化のネットワークだったのに、Omni-Pathはスター型/Fat-tree型でInfiniBandと真っ向から競合する製品だった。

 そもそも、HPC製品を手掛ける企業がInfiniBandのような安価で高性能なオープンスタンダードを敵に回してまで自らネットワークアダプターを作る理由というのは一般人には容易には想像できないが、CrayのAries/Geminiを調べてみて頂けると想像し易いだろう。Aries/Geminiは複数のネットワークアダプターとスイッチとを統合した専用ASICを用い、Ethernet/InfiniBandとは違い独自のDragonfryトポロジーで相互接続でき、40を超えるノードと僅か1ホップ・最大構成でも全ノードと最大3ホップ接続できる。日本だと理研/富士通が京/富岳にTofu独自コントローラーを用いているのも6次元3D Torusネットワークを使うためであるが、これらのHPC用の独自インターコネクトはホップ数≒遅延を減らすことで差別化を図っている。

 Intelの場合はHPCベンダーではないので汎用性を重視したのかもしれないが、結果としてInfiniBandに敗れてしまった。
 ちなみにインターコネクトを失い他社との差別化方法に疑問を持たれていたCrayは、新たにインターコネクトのチームを設立したらしくShastaシステムでSlingshotインターコネクトの開発に成功している。

 

Comment