AWSがGraviton3を発表
AWS Goes Wide And Deep With Graviton3 Server Chip - The Next Platform
Amazon Graviton 3 Uses Chiplets & Advanced Packaging - SemiAnalysis
AWSが同社の内製サーバーSoC=Graviton3を発表した。
AWS Graviton | AWS Graviton2 | AWS Graviton3 | |
---|---|---|---|
CPU Core / Platform | Neoverse Cortex-A72 16-Core 2300 MHz | Neoverse N1 (Cortex-A76 derivative) 64-Core 2500 MHz | Neoverse V1 (Cortex-X1 derivative) 64-Core 2600 MHz |
Memory | DDR4-1600 32 GB 4 channel 51.2 GB/s | DDR4-3200 ? GB 8 channel 204.8 GB/s | DDR5-4800 ? GB 8 channel 307.2 GB/s |
Peripheral | PCIe Gen 3 32-lanes | PCIe Gen 4 64-lanes | PCIe Gen 5 32-lanes |
Transistors | 5 billion | 30 billion | 55 billion |
Process | TSMC 16 nm | TSMC 7 nm | TSMC 5 nm |
SemiAnalysisによるとAWS Graviton3は7個のチップレットで構成されたSoC(System-on-a-ChipというよりSIP=System-in-a-Package)ということだそうだが、AMD EpycのCCD + sIODような構成ではなく、CPU die x 1 + Memory Interface die x 4 + PCIe die x 2という構成のようだ(※AWSプレゼンテーション中に名称が記載されていないため、いずれも仮称)。
高電圧が必要でかつシュリンクし難いI/O周りをアナログ回路の成熟した古い世代のプロセスで製造し、先端プロセスで製造したCPUダイとチップレット間接続で接続しているのだろう。このアイデアはAMD EpycやIntel "Lakefield"と似ているが、CPUコア群は1チップレットに収まっているためコア間通信のレイテンシーは低く抑えることができる。
興味深いのはMemory Interface・PCIeをAMD EpycのようにI/O die x1とするのではなくMemory Interface die x4 + PCIe die x2と細かく分割している点だろう。普通に考えればIntelのPCHやAMD EpycのsIODのような1チップレットで作る方がパッケージングのコストが安価だろうと思うのだがそうはなっていない。
Memory Interface dieについては、恐らくアクセスレイテンシーの均一化を図ったのではないかと思う。I/O die x 1という形にしてしまうとI/O dieとの距離がばらけてしまう。例えばArmのプレゼンテーションではArm CMN-600で32-coreを構成する場合、6x6のメッシュで2-core/tile x 32 = 64-coreとして構成し四隅の4 tileがI/O用とする例が示される(参考)が、このような構成だとメモリーアクセスがある程度均一になる。チップレット化する場合も同様にMemory Interface die x 4を6x6のメッシュの四隅に隣接する形に配置することでアクセスレイテンシーを均一化したのだろう。
PCIeを16-laneずつ2 dieにしたのは、恐らく2つの理由によるのではと思う。まず、Graviton2からPCIe lane数が半減(64-lane→32-lane)しているのであるが、そもそもGravitonはIntel Xeon/AMD Epyc等と違い外販されないためAWSが必要とする以上のレーン数を搭載する必要が無い。AWSの場合ストレージやネットワークはAWS ENA(恐らくPCIe x16接続)で接続するため、FPGAインスタンスやGPUインスタンスぐらいしかPCIe接続する先が無く32-laneあれば十分という判断なのだろう。
次に、そもそもPCIeが32~64-laneも必要なのか?という疑問もある。例えばFPGA/GPU等のアクセラレーターとの接続はCCIXやCXLで接続する場合を考えると、AWS ENAを接続するPCIe die x1個で十分で、残りのPCIe die x1をCCIX die x1と置き換えるといった構成を採る可能性も考えられる。
余談だが、筆者はこういう構成をぜひ富岳の富士通A64FXでも採用してほしかった。A64FXはI/OがTofu-DとPCIe x16のみで、富岳・富士通PRIMEHPC FX1000以外ではTofu-Dは使わないためPCIe x16のみとなってしまっており、FX700構成でMellanox InfiniBand(PCIe x16)を接続するとNVMe SSDの接続のためにPCIe Switchを搭載する必要がある。
※コメント投稿者のブログIDはブログ作成者のみに通知されます