タグ: FADU

  • FADUが示すKVキャッシュ階層化、再計算と読み戻しの速さを比べる

    FADUが示すKVキャッシュ階層化、再計算と読み戻しの速さを比べる

    長い会話を続けるAIでは、次の一語を出すたびに、少し前の文脈を参照します。そのための中間状態がKVキャッシュです。会話が増えれば、この状態も増えます。GPUの速いメモリーにすべてを置けないとき、何を外へ出し、いつ戻すのでしょうか。

    OCP Korea Tech DayでFADUのAndy Kim氏が示したのは、GPUのHBM、CPUのDRAM、サーバー内のNVMe SSD、共有ストレージを一続きの階層として考える方法です。発表資料は性能を実測した完成構成の報告ではなく、公開されている推論ソフトウェアや他社の構想を踏まえた設計の見取り図です。[1・2]

    簡単にまとめると?

    • KVキャッシュは文脈の再計算を省く中間状態で、時間を節約する代わりにメモリーを使います。
    • 外に保存したKVの再利用が有利なのは、読み戻しと調整が再計算より速い場合です。
    • FADUの資料はGPUメモリーから共有ストレージまでの設計構想で、完成構成の実測報告ではありません。

    会話が伸びると、何が増えるのか

    最初に入力文を読む段階をprefill、続けて一語ずつ生成する段階をdecodeと呼びます。prefillで作ったKVキャッシュを、decodeは使いながら増やします。キャッシュがなければ同じ文脈の計算をやり直すことになるため、保存は時間を節約します。その代わり、メモリーを使います。[2]

    発表資料の計算例では、特定の32Bモデル、FP16、3万2千トークンの文脈を仮定すると、1系列のKVが約8GiBになります。同じ長さを8系列同時に扱う単純計算では約64GiBです。これはそのモデルと精度を置いた概算で、すべてのモデルに共通する容量ではありません。量子化や共有、キャッシュ管理の仕方で変わります。[2]

    保存が得になるのは、読み戻すほうが速いとき

    同じシステムの指示文や同じ資料が、別の質問でも繰り返し使われることがあります。その先頭部分に対応するKVを残しておけば、次の要求では同じ部分のprefillを省けます。ただし、遠くに保存したものを探し、運び、GPUで再び使える形にする時間が必要です。[2]

    発表が示す判断はシンプルです。「読み戻しと調整にかかる時間」が「もう一度計算する時間」より短いとき、再利用が有利になります。短い入力や遅い転送経路では、保存したほうが必ず速いとは限りません。GPUメモリーの節約量だけでなく、最初の一語までの時間や、一語ずつ出る間隔も合わせて測る必要があります。[2]

    GPUの外へ出すための二つの仕組み

    資料は、推論エンジンvLLMと、KVの外部保存を支えるLMCacheを例にしています。vLLMは文脈を小さなブロックで管理し、同じ先頭部分に対応する完成済みブロックを見つけると再利用します。KV Connectorは、別の実行環境や外部の保存先とKVをやりとりするための接点です。ブロックの一致判定と、外への転送は別の仕事です。[2・3]

    LMCacheの説明では、GPU側のブロックを外部キャッシュ用のchunkにまとめ、CPUメモリーやローカルSSDなどへ置きます。資料に出る256トークンのchunkは設定例で、固定の単位ではありません。また、chunkの容量もモデルやKVの精度によって変わります。保存先を増やすだけでは速くならず、どのchunkを残し、どれを先に読み込むかが重要です。[2・4]

    共有ストレージは「すぐ使えるGPUメモリー」ではない

    一台のサーバー内に置いたKVは近くて取り出しやすい一方、別のサーバーとの再利用範囲は狭くなります。共有の層へ広げれば多くの要求で使い回せる余地が生まれますが、転送と位置管理は難しくなります。prefillとdecodeを別のworker群に分ける場合には、KVの受け渡しそのものが要求の経路に加わります。[2]

    発表はNVIDIAのCMXを、GPUメモリーと汎用共有ストレージの間に置くG3.5という構想例として紹介しています。CMXはNVIDIAが公表した別の仕組みで、FADUの製品ではありません。発表資料も、NVIDIAの性能主張や内部実装をこの発表で検証したものではないと断っています。SSD上のKVをdecode前に近い層へ移すという考え方は参考になりますが、効果は実際の転送経路と負荷で確かめる必要があります。[2・5]

    KVキャッシュは、AIが覚えた知識そのものではなく、特定のモデルが再計算を省くために持つ中間状態です。速く続けたい会話には近い層を、繰り返し使う文脈には共有できる層を選ぶ。その境目は、容量だけでなく再計算と読み戻しのどちらが早いかで決まります。

    発表したFADUが企業として手がける事業は、cyclewaveの企業記事にまとめています。

    参考資料

    2026年9月23日確認。本文はOCP公式掲載の9ページのスライドと、資料中で参照される各プロジェクトの公式文書を照合しています。スライドの表紙には「PREVIEW」とあり、講演中の実測や質疑応答は根拠に含めていません。

    1. Open Compute Project「2026 OCP Korea Tech Day」 — 登壇情報と公式資料へのリンク。
    2. Andy Kim(FADU)「KV Cache Tiering for LLM Inference: From GPU Memory to Shared Storage」 — pp.2–8。計算例・再利用条件・階層構成。
    3. vLLM「Automatic Prefix Caching」 — 完成済みブロックの識別と再利用。
    4. LMCache「Configuring LMCache」 — chunk sizeが設定可能であること。
    5. NVIDIA「Introducing NVIDIA BlueField-4-Powered CMX Context Memory Storage Platform」 — NVIDIA側のCMX構想。発表者自身の測定結果ではない。
  • FADUが示すAI向けSSDの要件、容量・待ち時間・共有を分けて選ぶ

    FADUが示すAI向けSSDの要件、容量・待ち時間・共有を分けて選ぶ

    AIサーバーの保存先を考えるとき、まず「SSDを何テラバイト積めるか」に目が向きます。でも、同じSSDでも、生成中の文脈を素早く取り出す場所と、学習用の大量の資料を置く場所では、求められる性格が違います。

    2026年8月のOCP Korea Tech Dayで、FADUのAndy Kim氏は、フラッシュメモリーがAIデータセンターで担う役割を三つに分け、SSDコントローラーに必要な設計を示しました。発表は製品の性能保証ではなく、これからの負荷をどう捉えるかという提案として読むと、ストレージ選びの見通しがよくなります。[1・2]

    簡単にまとめると?

    • AI向けSSDは、メモリーに近い層・性能を重視する層・容量を担う層で、求める役割が異なります。
    • 容量や転送量だけでなく、小さな読み出し、遅延のばらつき、共有時の性能を確認します。
    • FADUが挙げたコントローラー要件は設計上の要求で、全製品の達成を示す試験結果ではありません。

    GPUのメモリーとSSDの間にある悩み

    文章を一語ずつ生成するAIは、それまでに読んだ文脈から計算した中間状態、KVキャッシュを使います。会話が長くなり、同時に応じる利用者が増えると、その置き場所が大きくなります。GPU上のHBMは速い一方、容量と費用には限りがあります。発表は、このギャップにフラッシュをもっと近づける構想を描いています。[2]

    ここで、SSDをHBMと同じように読めると考えるのは早計です。生成のたびにすぐ使うKVは、GPUの近くに戻す時間まで含めて設計する必要があります。資料にある「モジュール上の高帯域フラッシュ、ラック内のNVMe、列に置く大容量QLC」という三段の図も、発表者が確立済みではない一つの方向と明記したものです。[2]

    一つのSSDに、三つの仕事を押しつけない

    発表では、AI向けSSDの役割を「メモリー」「性能」「容量」に分けています。メモリーに近い層は、文脈やKVを取り出すときの待ち時間が大切です。性能を重視する層は、頻繁に使うデータやメタデータを小刻みに読みます。容量を担う層は、資料群や使用頻度の低い状態を、無理のない費用で保管します。[2]

    三つは同じ容量の単位で比べられても、評価したい数字は違います。毎秒に運べる量だけでは足りず、小さな読み出しをどれだけさばけるか、遅い時にどこまで遅くなるか、利用者が同時に増えた時に速度を保てるかも見ます。大容量向けのSSDを、活発に読み書きする層へそのまま当てはめると、容量は足りても待ち時間が合わないことがあります。

    性能の裏側にいるコントローラー

    SSDにはデータを保存するNANDと、その読み書き、配置、エラー訂正、他の機器との通信を調整するコントローラーがあります。発表がとくに強調するのは、AI向けの要求をこのコントローラーでどう受け止めるかです。[2・3]

    挙げられた要件は五つ。512バイト〜4キロバイト程度の小さなI/Oを数多く処理すること、平均ではなく遅延のばらつきを抑えること、ペタバイト級でも管理用DRAMを容量に比例して増やさないこと、GPUが起点となるI/Oの経路を効率化すること、複数利用者の性能と安全性を分けることです。これらは設計上の要求であって、登壇した企業のすべての製品が五項目を達成したという試験結果ではありません。[2]

    たとえば、小さな読み出しを増やすほど、NAND自体の速さだけでなく、要求を振り分ける制御や管理情報の扱いが効いてきます。逆に、巨大な資料を順に読む仕事では、一度に運べる量と容量あたりの費用が重要になります。「AI用SSD」という一つの名前にまとめず、何を置き、いつ取り出すかから考える理由がここにあります。

    選ぶ基準は、保存量から仕事の種類へ

    FADUは講演でPCIe 6.0世代のコントローラーも紹介しています。ただし、その発表値をSSD完成品の消費電力や、あらゆるAI負荷での実測値へ読み替えることはできません。必要なのは最高値だけでなく、対象のデータ量、読み出しの粒度、遅延のばらつき、書き換えの頻度を合わせて見ることです。[2・3]

    SSDの役割が増えるほど、コントローラーは「速くする部品」から、容量・待ち時間・共有の条件を整える部品へ近づきます。GPUのそばに置くものと、長く保管するものを分けて考える。今回の資料は、その設計の出発点を示しています。

    SSDコントローラーを手がけるFADUの事業全体は、cyclewaveの企業記事で扱っています。

    参考資料

    2026年9月23日確認。本文は公式掲載スライドの全9ページをもとにし、動画の発言や質疑応答は根拠に含めていません。

    1. Open Compute Project「2026 OCP Korea Tech Day」 — 発表一覧と登壇者。
    2. Andy Kim(FADU)「Flash in the AI Datacenter: New Roles and Requirements for SSDs and Controllers」 — 特にpp.2–8。p.5の三層図は提案。
    3. FADU 2026年半期報告書 — II-1、II-2。SSDコントローラーと完成品の区別。