goo blog サービス終了のお知らせ 

ALH84001

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

今週の興味深かった話題(2020年第10週)

2020-03-07 | 興味深かった話題

MarvellのOcteon TX2とOcteon Fusion

New Marvell OCTEON TX2 and Fusion CNF95xx 5G SoCs - ServeTheHome

 CaviumのOcteonからMarvellのOnteonへ。それを印象付けられた発表だった。

 OcteonとはMarvellが2018年に買収した旧Caviumを代表するネットワークプロセッサーのブランド名である。
 Cavium Octeonといえば、元はCavium独自設計のMIPS64プロセッサー=cnMIPSコアを多数集積したネットワークプロセッサーで、ルーターやファイヤーウォールなどのプロセッサーに採用された。Octeon FusionはそのOcteonにベースバンド処理用にDSPを統合したものである。
 サーバー向け製品ブランドThunderXを期にCaviumはMIPSからArmに乗り換えており、Marvellによる買収前の2016年に発表されたOcteon TXではThunderXのArm CPUコアが流用されている。

 今回、Marvell傘下になって初めてOcteonブランド製品を発表したわけであるが、なかなか興味深い。

 まず、象徴的なのがOcteon TXのCN9130のCPUコアが自社開発ではなくArm製のCortex-A72という点だろう。注目すべきは、Octeon CN9130はArmada 7040とほぼ同スペックである点で、恐らくはリブランディングだろう。MarvellはCavium買収前からArmadaブランドの組込プロセッサーを持っておりローエンドのネットワークプロセッサーとしても利用されていたが、OcteonファミリーとArmadaファミリーとを統合しつつあるようだ。

  CN9130 Armada 88F7040
CPU Arm Cortex-A72 x4 Arm Cortex-A72 x4
Memory DDR4 DDR4
PCIe Gen3 6 lanes
PCIe x4 x1 lane
PCIe x1 x2 lanes
Gen3 6 lanes
PCIe x4 x1 lane
PCIe x1 x2 lanes
I/O SerDes x6 lanes
SATA 3.0 x2
USB 3.0 x2
SerDes x6 lanes
SATA 3.0 x2
USB 3.0 x2
Ethernet 10GbE x1
5/2.5GbE x1
2.5/1GbE x1
with Packet Processor
(Parser/Classifier/Buffer/PTP)
10GbE x1
2.5/1GbE x2

with Packet Processor
(Parser/Classifier/Buffer/PTP)

 次に気になるのはOcteon TX2上位モデルのCPUコアである。なにせ「ARMv8.2」という記述で具体的な名称が伏せられている。CN9130と違いArmのコア名でもなく、先代Octeon TXのようにThunder X系コア名が記載されているわけでもない。
 公開されている情報が僅かにも拘らず、このコアには謎が多い。まず、もしThunderXとOcteon TXの関係のようにThunderX2コアが用いられているのであればARMv8.1であるはずだが、このコアはARMv8.2を名乗っている。さらに奇妙なのが66KB I-cache 41KB d-cacheという2^Nにならない中途半端なスペックである。数字の珍妙さはそれぞれ64KB・40KBの誤植として目を瞑るとしても、現行CaviumのThunderX2の場合L1命令キャッシュ/L1データキャッシュがそれぞれ32KB/32KB、Arm純正のCortex-A72が48KB/32KB、Cortex-A77が64KB/64KBのいずれとも合致せず、別物と考えるのが自然だ。

 ではこの「ARMv8.2」コアは何者だろうか?
 ところで、現行のThunderX2は旧Caviumが当時Broadcomが開発中だったVulcanコアを買収し、自社製SoCに組み込んだもので、Caviumが開発していた旧ThunderX2とは同名ながら別物である。
 もともと前世代ThunderXはcnMIPSの流れを汲む低性能なコアで、別のThunderX2開発が進行中だったが、2017年11月頃にCaviumがBroadcomからVulcanコアを買収してこれを置き換えた。恐らくCaviumが開発中だったcnMIPS系コアではThunderX製品ファミリーがターゲットとするサーバーCPUとしては性能不足だったため高性能なVulcanに置き換えたと考えられる。
 AnandTechの記事が解り易いが、ThunderXとVulcanでは設計思想とターゲットとするパフォーマンスが全く異なる。ThunderXコアのダイアグラムは公開されていないが、ほぼcnMIPS(HotChipsのプレゼンテーションPDF)の命令セットをMIPS64からAArch64へ置き換えた物と推測されており、2イシュー/2実行ユニット/インオーダーのシンプルな設計である。これに対し、Broadcomの主張によればVulcanのシングルスレッド性能はIntel Haswellの9割程度に達する。

 ThunderXファミリーはサーバー向けプロセッサーだったから、この判断は正しかったのだろう。ただ、cnMIPSはネットワークプロセッサーに最適化されたコアだったのでOcteon TX2にVulcanが合うかというのは別の話であろう。

 ここからは筆者の推測になるが、今回のOcteon TX2の「ARMv8.2」コアはVulcan買収前に設計していた旧ThunderX2である可能性がある。実際、Vulcan買収前の旧ThunderX 2の製品ページ(InternetArchiveの2016年6月のアーカイブ)を見ると命令キャッシュ/データキャッシュ64KB/40KBのコアの情報が見られる。

Ampereが80コアAltraを発表

Ampere Aims For The Clouds With Altra Arm Server Chip - TheNextPlatform

 前世代eMAG(Skylark)の最大32コアからAltraで最大80コアとなったが、独自設計コアからArm純正のNeoverse N1(Cortex-A76相当)のセミカスタムコアへと変更になった。

 類似品としてはAWS Graviton 2があるが、同じNeoverse N1を採用しつつもGravion 2の64コアに対しAltraは80コアと16コア多い。
 Graviton 2はArm社のリファレンス通り6x6のメッシュの64コア構成で、Armのリファレンスを使うというのはCPU開発能力を持たないAWS/Annapuruna Labsが安価で高性能を得るという意味では納得できるし、性能面ではMarvell/CaviumのThunderX 2と比べて見劣りするものの、AWSがGraviton 2を例えばS3などで使用するとすれば妥当そうに見える。
 一方のAmpere Altraは立ち位置が微妙に思える。Marvell/Cavium ThunderX 2ほどの高性能でもなく、クラウドベンダー内製のGravitonほどのコスト削減の効果も無いとすれば、ThunderX 2の方が魅力的に見える。

 ちなみに、Altraは「80 Cores + Coherent Mesh Network」と記載があるものの、Armのリファレンスデザインを使っているのかはよく分からない。
 ArmのHyperscaleデザインは「64 - 128コア」を謳うがCoreLink CMN-600 Coherent Mesh Networkは1 - 32タイルに対応しているため、2コア/タイルで最大64コア・4コア/タイルで最大128コアとなる。AltraがCoreLink CMN-600を使っているとすれば4コア/タイルで5x4か6x4(4個のI/O用タイル)のメッシュということになるだろうが、2コア/タイルでも4コア/タイルでもネットワーク帯域は変わらないため、2コア/タイル構成の方がジッターの影響を受け難くなる(ちなみに動作周波数によるだろうが、ドキュメントによると2 - 10 GB/sec/タイルのようだ)。
 もちろん、AmpereがCMN-600ではなく自社設計のインターコネクトを採用している可能性もあるが、もしCMN-600を使っているのであればGraviton 2 64コアとAltra 80コアを比較した場合にコア数分(+25%)も性能差がでない可能性がある。

 上述の通り、AmpereはAltraでArm純正コアを採用し、Macom/AppliedMicroから買収したX-Gene系のコアを放棄したようだが、その判断は妥当そうに思える。
 先代までのX-Gene系コアは4イシュー/4実行ユニットのアウトオブオーダー設計で(HotChipsでのプレゼンテーション)、概ねIntel Atom程度のパフォーマンスであった。それに対しArm純正コアはCortex-A76/A77・Neoverse N1で高パフォーマンス設計に方針転換しており、旧AppliedMicro系コアとArm純正コアとの間に性能差は失われつつある。言い換えれば巨額の投資と高リスクを背負ってまで自社設計するメリットが無くなったのだろう。
 もっとも、パフォーマンスや投資の観点から独自設計を止めArm純正コアを採用するという判断は理解できるのだが、既存顧客から見てAmpere製品を選ぶ差別化ポイントも同時に失われたように思える。唯一の救いはAmpereと同様にNeoverse N1を採用してサーバー用SoCを開発しているAWSやHuawei/HiSiliconがプロセッサーの外販をしておらず、顧客には他の選択肢があまり無いことぐらいだろう。

Comment    この記事についてブログを書く
« 今週の興味深かった話題(202... | TOP | 今週の興味深かった話題(202... »

post a comment

サービス終了に伴い、10月1日にコメント投稿機能を終了させていただく予定です。

Recent Entries | 興味深かった話題