1. トップ
  2. 新着ニュース
  3. IT
  4. IT総合

AI推論用アクセラレーターを搭載するIBMのTelum II Hot Chips 2024で注目を浴びたオモシロCPU

ASCII.jp / 2024年9月23日 12時0分

 Hot Chips第3弾は、IBMのTelum IIである。これはIBMのzシリーズの系列のプロセッサーとなる。IBMのzシリーズは以前連載502回で取り上げたが、高可用性/高信頼性を最大の特徴とするメインフレーム向けプロセッサーのシリーズである。連載502回ではz14までのラインナップを紹介したが、2019年にz15プロセッサーが発表された。

z196~z15までの変遷をまとめた物。z15ではコア数も増えたにもかかわらず、ダイサイズはz14と同じ696mm2と発表されている

10進演算がある珍しいzシリーズ 2019年にz15プロセッサーを発表

 z14→z15はどちらも同じ5.2GHz動作であるが、コア数以外に細かな性能向上の工夫が凝らされている。

同じSamsungの14nmプロセスを使っており、コアのエリアサイズ最適化によって同じダイサイズで2コア増え、しかもL3を倍量にしたことになるが、さすがにL3もなにか工夫が凝らされたものと思われる。ちなみにz14は61億トランジスタ、z15は91億トランジスタと説明されている

 処理パイプラインの構造そのものは、細かな改良は当然いろいろあるにせよz14とz15はほぼ同じで、6命令/サイクルのデコードを持つフロントエンドに、ALU×4+Load/Store×2、FPU/Vector×6のバックエンドという構成になっている。z15がおおむねz14の延長にあることはおわかりいただけるだろう。

z14(とz15)は、同じパイプが2本づつになっているので、FXU(Fixed eXecution Unit)が×4という計算になる。どうもレジスタ書き込みのみ(CCのあとFinになる)とメモリー書き込み(CC→WB→Finになる)では別のパイプになっているようだ
z15は基本z14と変わらず。Binary Float(2進数演算)以外にDecimal Float(10進演算)があるあたりがzシリーズである

 ちなみにシステム全体という意味では、z14では6つのCP(Central Processor)チップが1つのSC(System Controller)チップにつながっており、この7チップで1つのドロワー(要するにシャーシに収まるユニット)を構成する。

 SCは言ってみればドロワー間を接続するためのI/Oチップみたいな扱いだが、その672MBのL4も内蔵されている。これに対しz15では4つのPU(Processor Unit:z14で言うCP)と1つのSCでドロワーが構成されているが、SCには960MBものL4が搭載されているという違いがある。

 最大構成で言えば、z14の場合は24CP(つまり240コア)までサポートし、一方z15は20PUだがコア数で言えばやっぱり240コアになる。Xeonの8ソケット構成など問題にならないくらいの大規模なシステムが構築できる。

分岐予測を再設計したTelum 周波数はz15から据え置きでキャッシュを増量

 そのz15の後継として2021年に発表されたのがTelumプロセッサーである。Telumではややプロセッサーの方向性が変わった。まずチップそのものであるが、8つのコアから構成される。

8つのコアで構成されるTelumプロセッサー。BTBのエントリーが270K以上という信じられない数字になってるのはどう評したものか。猛烈に分岐予測を再設計したのがわかる

 おのおののコアの詳細は明らかにされなかったが、基本はz15までのパイプライン構造を踏襲しているものと考えられる。2スレッドのSMTというのもz13時代からずっと実装されている話で、このあたりは変わらない。

ブルーの部分はL2で8つのブロックからなるが、おのおののブロックは2つの16MBセグメントとして扱われる

 また動作周波数も5.2GHzで据え置きである。L3とL4は8コアで共通だが、コアあたりの容量は1.5倍になったほか、Virtual L3/L4が搭載された。このVirtual L3/L4は、以下の仕組みになっている。したがって、全コアが稼働中だとVirtual L3/L4は無効になる。

  • 同一チップ内の非アクティブなコアのL2をL3として扱う
  • 異なるチップ内の非アクティブなコアのL2をL4として扱う

 Telumのダイそのものは7nmプロセスを利用しているとあって530mm2とそれほど大きくないが、実際には2つのダイを1つのチップに搭載している。

この2つのダイは有機基板上に実装される。製造がSamsung Foundryであり、同社の当時の技術ではまだ合計1000mm2を超えるダイをシリコン・インターポーザーに載せきらなかったのだろう

 1つのドロワーには4チップが搭載されるので、1ドロワーあたり64コアという構成だ。システム全体では4ドロワー構成(32チップ:256コア)までのSMP構成が可能とされる。ちなみにシステム的には256コアでも、ユーザーが利用できるのは最大200コアに制限されているそうだ。

※お詫びと訂正:記事初出時、Telumの発表年に誤りがありました。記事を訂正してお詫びします。

TelumはAI推論用のアクセラレーターを搭載

 Telumでもう1つ大きな特徴は、AI推論用のアクセラレーターを搭載していることだ。このアクセラレーターはコアとは別の個所に配されており、マトリックス演算や畳み込みなどの演算を直接メモリーから読み込み、その結果もまたメモリーに書き戻す形で実施している。

AI推論用のアクセラレーターを搭載する。推論アクセラレータ制御用命令も追加されたそうだ

 この推論アクセラレーター、内部は8wayのFP16 SIMDエンジンを持つプロセッサー×128をマトリックス構成にしたものに、アクティベーション専用にFP16/FP32 8way SIMDを持ったプロセッサー×32を用意するという、なかなか強力な代物であり、チップ1個あたりで6TOPSの性能を持つとする。

下の方には推論アクセラレーター用のスクラッチパッドも見える。同時にいくつのネットワークを実行できるかは不明。6TOPSは、2021年当時はともかく現在としてはかなり見劣りする気も。ちなみに200TFlopsというのはドロワー4つでの合計性能である

 他にもNXU(Nest Accelerator Unit)と呼ばれる、GZIPの圧縮/伸長用のアクセラレーターやMerge/Sort用のアクセラレーターなど、細かいアクセラレーターがいろいろ搭載されているのも特徴である。IBMの説明によれば、「ソケットあたりの性能を(z15世代比で)40%向上させた」としている。

CPUコアを減らしてDPUを配置したTelum II

 ということでやっとTelum IIである。Telum IIの写真として示されたのはこちらなのだが、これダイではなくパッケージ基板+αのようで、現時点でもダイの写真は示されていない。

Telum II。パッケージそのものだとしてもこんなふうにLANDがあるのは解せないので、おそらくパッケージの上にダイの要素ブロックの一部のみをマッピングしたCGと思われる

 さて、Telum IIはSamsungの5nm(SF5:旧5LPPあたりと目される)を利用して製造されているが、CPUコアは8つに減ってしまった。

CPUのパイプラインの詳細などは示されず。ただ分岐予測の向上を含む改良と、動作周波数の向上(5.2GHz→5.5GHz)のみが示された

 Area ReductionとPower Reductionはおそらく7nm→5nmにプロセスを微細化した効果だろう。ただしL2は36MBが10ブロック分が用意され、合計360MBとなっている。ややL2というサイズではなくなっている気がするが。

後述するDPUでL2を占有するわけではなさそうなので、DPUの横にある2つのL2ブロックがVirtual L3/L4の対象になるものと思われる

 CPUコアを2つ減らしたところに収まるのがDPU(Data Processing Unit)である。これはインテルのMount Evansのように、I/Oの処理をオフロードするもので、これによりI/Oの制御に要する消費電力が70%削減できたとする。

このDPUは、単にI/OだけでなくSMP構成でのチップ間の通信のハンドリングも行なうようだ

 そのDPUの中身が下の画像だ。Cluster A~Dの4つのMCUコアクラスターがあり、おのおの8つのMCUが動作して、これがI/Oの処理を担っているようだ。ちなみにMCUとは言うが、中身は不明である。

性能改善は主にプロセス微細化にともない動作周波数向上で実現している模様

 さすがに今さらPowerPC 430などを使っているとは思えないので、Cortex-M7クラスのものだろうか? I/O周りの処理結果は、そのまま隣接するL2キャッシュに収められ、その内容はCPUコアからVirtual L3の先に格納されているものとして扱われる格好だろう。チップ1個あたり12個のPCIe Gen5 x16レーンが出るのも、このクラスのCPUとしてはかなりのものだ。

 ちなみにCPUコアとL2、それとDPUに関しては、Voltage Control Loopの制御下に置かれており、このControl Loopの制御を有効にすることで最大18%の消費電力削減が実現したという。

Voltage Control Loopの制御下に置かれているCPUコア、L2、DPU。FP16だけでなくINT 8のサポートも追加されているあたり、性能向上の半分はこのFP16→INT 8で、それとは別にSIMDエンジンの幅が倍になったか、もしくは同じ幅のまま数が2倍になったのかのどちらかだろう

PCIe x16カードの形で提供されるAI推論アクセラレーター Spyre Accelerator

 ところでAI推論アクセラレーターは当然Telum IIにも搭載されており、性能は24TOPSと4倍に向上しているが、もともとTelumの時代からプロセッサー性能と推論アクセラレーターの性能が釣り合っていなかった。

AI推論アクセラレーターの面積そのものはTelumのものとあまり変わらない気がするが、プロセス微細化の効果で倍の演算器を搭載できたのだろう

 AI処理が多い処理を多数のプロセッサーでこなす、というケースにおいては、明らかにCPUによって推論アクセラレーターの取り合いになる。だからといってCPUの数だけ推論アクセラレーターを搭載するか? というと、それはそれで問題でダイサイズも増えるし、Telumプロセッサーを使うすべてのシステムが大量のAI推論処理を行なうとは限らない。

 このあたりの条件に対する解が、Telum IIで登場したSpyre Acceleratorである。SpyreはPCIe x16カードの形で提供され、カード単体で300TOPS以上の性能とされる。このSpyreは最大8枚まで、I/Oドロワーに搭載可能、という説明になっている。

Spyre Accelerator。右はTelum II、左がSpyreである

 まだTelum IIを使ったシステム(おそらく順番から言えばIBM z17 systemになるのだろう)の詳細構成が不明なので推察するしかないのだが、どうもTelum IIでは1ドロワーあたり8チップ(80コア)が最大構成になりそうだ。

この写真のPCIeのカードエッジの幅から推定するとSpyreのダイは19.4×16.7mmの324mm2ほど。けっこう大きい!

 下の画像がz16 systemでのCPドロワーの構成であるが、Telum IIを搭載したz17でのCPCドロワーも似た構成であり、Storage、DIMM、CPU×8、PCIeカードという順序になり、その最後のPCIeスロットの部分にこのSpyreカード×8が収められ、1CPUあたり1枚のSpyreカードという感じになりそうである。

ラックマウントされるCPCドロワーを上から見た図。下側がフロントパネル側で、グレーの部分にストレージやファンが収められ、その後ろにDIMM、CPUときて一番背面にPCIeカードが12枚収められる形になる

 もっともこれは構成次第のところがあって、Spyreカードは別に用意される拡張カード専用ドロワーに収められ、CPCドロワーの方はイーサネットなどのネットワークカードだけになるかもしれない。

 製品出荷はIBMのリリースでは2025年になりそうなので、もうしばらくは詳細な構成は明らかにされないと思うが、Xeon/EPYCなどのPC用プロセッサーから進化したサーバー向けプロセッサーとは明らかに異なる原理原則で設計されていることが垣間見られ、非常に興味深い構成になっている。

この記事に関連するニュース

トピックスRSS

ランキング

記事ミッション中・・・

10秒滞在

記事にリアクションする

記事ミッション中・・・

10秒滞在

記事にリアクションする

デイリー: 参加する
ウィークリー: 参加する
マンスリー: 参加する
10秒滞在

記事にリアクションする

次の記事を探す

エラーが発生しました

ページを再読み込みして
ください