執筆者 : 佐藤 友昭
※ 「ディスアグリゲーテッドコンピューティングとは何か?」連載記事一覧はこちら
「ディスアグリゲーテッドコンピューティング」=「一次記憶の共有」という側面に注目している。
かつて二次記憶の共有が可能になり、現在稼働しているソリューションの多くは共有ストレージの上に構築されている。
Network Attached Storage (NAS) や Storage Area Network (SAN) といったストレージ共有基盤を構成する様々なハードウェアやソフトウェアが登場した。
これを当てはめれば、一次記憶の共有が可能になることで、ソリューションは共有メモリ基盤の上に構築されるようになるし、共有メモリ基盤を構成するハードウェアやソフトウェアが登場することになる。
「一次記憶の共有」の背景には、計算対象データ量の指数関数的な増大がある。
プロセッサコア数を追加し、サーバ内蔵メモリを追加する従来アプローチではこれに対応することが困難となった。
主な課題はデータ入出力帯域の不足とシステム価格の上昇およびメモリ使用効率の低下と言われている。
近年すでに、プロセッサコアあたりのメモリ帯域は低減傾向にある。
また、サーバ内蔵メモリ量に比例したペースでサーバのストレージやネットワークのI/O性能を追加することは困難である。
サーバ内蔵メモリを追加することでメモリ部品のコストがシステム価格の大半を占めるようになるが、ワークロードに波がある場合、費用対効果は低減する。
そこで、ホスト(CPUやアクセラレータ)間で共有可能なメモリの層を追加するアプローチが提案されている。
プロセッサコアとメモリを個別にスケールさせることでプロセッサコアあたりのメモリ帯域をバランス可能とし、「メモリごと」ホスト間でデータを共有可能することでストレージやネットワークのI/Oの機会を減らすと同時にワークロードの波に応じてホスト間でメモリリソースを融通可能とし、費用対効果を維持すると言う。
実際のところはどうなのであろうか。
「一次記憶の共有」の話は過去にもあった。
例えば、リモートホストにあるIntelのOptane Persistent Memory Module (PMEM)をRemote Direct Memory Access (RDMA) ネットワークを介して共有する話である。
2018年の OpenFabrics Alliance (OFA) ワークショップでの "OFA Think Tank Session: Remote Persistent Memory" というセッションを YouTube *1 視聴されたい。
ここでは、「リモート PMEM を RDMA ネットワークで共有できるとしたら、どのような使い方をしたいか」というブレインストーミングから始まっている。
登場するテクノロジからユースケースの議論を呼びかけ、そこから要件を抽出し、仕様反映を含むイノベーションへと導く。
その後の数年間で、Microsoft の Tom Talpey 氏を中心に InfiniBand Trade Association (IBTA) や Peripheral Component Interconnect Special Interest Group (PCI-SIG) での仕様策定が行われ、現在では IBTA 1.5 仕様に対応した NVIDIA ConnectX-7 等の RDMA NIC (RNIC) で PMEM 対応がされているようである。
(実際のところはメーカに確認する必要がある。なお、2022年に Intel は Optane ビジネスをクローズしている。)
今回の「一次記憶の共有」の話のスコープは前回よりも格段に広い。
登場しつつあるテクノロジや議論されているそのユースケースを調査するために、昨年(2023年)の夏から年末にかけて、YouTube で公開されている講演 174 本を 1,970 ページにドキュメント化した。(1ページ=1,800文字)
講演内容は著作権者のものなのでここで共有することはできないが、本稿ではこれから講演動画を視聴される方のために略語リスト*2 を提供したい。
ここで言う略語とは、上記の NAS, SAN, PMEM, RDMA, OFA, IBTA, PCI, SIG 等のことである。1,144 個の略語が抽出された。
講演は話し言葉で行われるため、登場する略語が何の略かは説明されないことが多く、馴染みのない略語が理解の妨げになりがちと感じた。
1,144 個のうち 20 個は筆者には何の略か分からなかったので Definition 欄を記載していない。略語を正しく聞き取れていない可能性もある。
一方、略語の登場頻度は重要度の指標としての参考になりそうなので略語毎に登場する講演数を記載した。
講演数のトップ10は以下のとおり。
Term/Acronym | Definition | 講演数 |
---|---|---|
CXL | Compute Express Link | 145 |
CPU | Central Processing Unit | 120 |
PCIe | Peripheral Component Interconnect Express | 98 |
AI | Artificial Intelligence | 86 |
DRAM | Dynamic Random Access Memory | 82 |
PCI | Peripheral Component Interconnect | 72 |
GPU | Graphics Processing Unit | 67 |
OCP | Open Compute Project | 61 |
DDR | Double Data Rate | 51 |
NUMA | Non-Uniform Memory Access | 50 |
また、略語リストと一緒に、登場する略語数順の講演リスト 3 を提供したい。
筆者は 174 本の講演を、なかば手当たり次第で視聴したので相当の時間を要したが、下記のリスト順に視聴すると効率的に(短時間で)内容を網羅できるのではないかと想像する。
略語数のトップ10は以下のとおり。なお、講演リスト 3には略語数ではなく登場略語を記載している。
タイトル | ソース | 内容 | 略語数 |
---|---|---|---|
HC34-T1 CXL | https://youtu.be/pHuHUeSmGGk | Hotchips34 チュートリアル 1 - CXL (2022/8/21 hotchipsvideos) | 99 |
Introduction to CXL (2023FMS) | https://youtu.be/eS5fHdg46nU | Flush Memory Summit 2023 での CXL チュートリアル(2023/8/7 CXL Consortium) | 97 |
DC-MHS Peripheral Out-of-Band Management Evolution | https://www.youtube.com/watch?v=LF_8JZ1UKAs | OCP DC-MHS での Dell, HPE, IBM, Intel による Out-of-Band インターフェイスに関する問題や課題に関する講演(2023/11/02 Open Compute Project) | 56 |
Samsung AI-cluster system with HBM-PIM and CXL-based Processing-near-Memory for Transformer-based LLMs | https://youtu.be/07JjXXd-0ao?si=SFHZ2BJhpn4kBe1-&t=1830 | HotChips2023 での Jin Hyun Kim (Samsung) による CXL-PNM (Processing-near-Memory) に関する講演(2023/12/04 hotchipsvideos) | 54 |
The History of PCI IO Technology 30 Years of PCI-SIG® Innovation | https://youtu.be/_2mdkXvzu_0 | 初代 PCI バスから 6 世代にわたる PCI Express までの技術の変遷(2023/4/25 PCI-SIG) | 53 |
CSS-Genesis Arm’s Neoverse N2 platform, delivered to partners as a fully verified, customizable compute sub-system | https://youtu.be/g3-4K1UCpoU?si=1u9euyD6hNL4-73T&t=1932 | HotChips2023 での Anitha Kona (ARM) による Neoverse N2 CPU に関する講演(2023/12/04 hotchipsvideos) | 49 |
The UCIe™ 1.1 Specification Future Applications of Chiplets Webinar | https://youtu.be/ZcqVUo5cWDU | UCIe 1.0 の概要と UCIe 1.1 について(2023/10/12 UCIe Consortium) | 48 |
SDC 2023 - PCIe® 7.0 Specification 128 GTs Bandwidth for Future Data-Intensive Markets | https://youtu.be/HCfM1d-M1uE | PCIe 7.0 仕様について (2023/10/23 SNIAVideo) | 47 |
Panel Composable Memory Systems using CXL | https://www.youtube.com/watch?v=hHnLyIouQg4 | OCP CMS での CXL の進化と未来への展望に関するパネルディスカッション(2023/11/02 Open Compute Project) | 46 |
CXL 1.1 vs. CXL 2.0 – What’s the difference | https://youtu.be/w2cZn-Tzrmo | CXL1.1 と CXL2.0 の違い(2022/6/14 CXL consortium) | 45 |
今後、「一次記憶の共有」が可能なソフトウェア開発・評価環境に関する情報を発信したいと考えている。
一人でも多くの方に興味を持っていただき、何らかの形でイノベーションに参加していただけると幸いである。