Value chain

電源断後に残るかから始める

DRAMはactive stateをprocessor近傍に置くvolatile memoryでrefreshを要する。NAND flashは電源断後も保持し、page単位でread/programし、より大きいblockでeraseする。AIではweight/tensorは実行時にDRAM/HBM、dataset/checkpoint/index/logはSSDやnetwork storageに置かれる。両者は代替品ではなくpipelineの補完物である。

  1. 1dataset/checkpoint
  2. 2NAND SSD
  3. 3host DRAM
  4. 4HBM
  5. 5execution
  1. 1persistent capacity
  2. 2staging
  3. 3active state
  4. 4arithmetic
順序と役割を、ひとつずつ分けて考える

shard読込みで止まるならstorage throughput、queue depth、decompression、network localityを調べる。kernel内で止まるならHBM trafficかcomputeを疑う。NVIDIA H200発表の141GB・4.8TB/sは製品仕様、Micron HBM3Eはcomponent仕様であり、SSD比較ではない。

NANDでは更新はout-of-placeになり、flash translation layerがlogical addressをphysical locationへ対応付け、garbage collection、wear leveling、spare blockを管理する。従ってfreshなread-mostly driveと、満杯でwrite-heavyなdriveは同じinterfaceでも挙動が違う。1TB training cacheがSSDに収まっても1TB GPU working setにはならない。active tensor 40GBとworkspace 10GBが必要なら50GBはdevice常駐かstep中transferを要する。

SolidigmのAI storageページは段階ごとに異なるstorage特性が必要だと主張するvendor materialである。DRAM/NANDのcycleを同一視して、accelerator出荷増から全supplierの同じ売上を導かない。workload変化→必要なactive/persistent memory→qualified configuration→bit shipmentと価格→reported revenueの各矢印を条件として置く。

演習

raw data、shard、checkpoint、weight、KV cache、outputを列挙し、persistence、容量、read/write pattern、step中の場所を記録する。warm local cacheとcold/remote sourceを安全に比較し、load時間とdevice executionを分ける。DRAM仮説とNAND仮説を一つずつ書き、反証metricを添える。

更新単位が設計を変える

DRAMはaddressableなworking stateを短い時間で読み書きするため、CPU/GPUが同じlocationを細かく更新する用途に合う。NANDではpageをprogramし、eraseはblock単位なので、上書きは新しい場所への書込みと古いpageのinvalid化になる。SSD controllerはこの差をflash translation layerで隠すが、物理的なeraseを消せない。空きblockが少なく小さいrandom writeが続けば、garbage collectionがforeground I/Oと競合し、tail latencyが伸び得る。

玩具例を作る。10TB corpusをNANDに保持し、各requestが10MBだけretrievalするなら、HBMへ常駐させるべきなのはその時点のsubsetである。50GBのweights、30GBのKV cache、10GBのworkspaceを使うならactive working setは90GBで、device容量とbatchが直接関係する。corpus容量を増やすSSD選択と、KV cacheを収めるHBM選択は同じ「memory market」でも異なる設計変数になる。

cycleを分析するときはbit shipment、ASP、inventory、wafer投入、controller/firmware mix、end marketを別にする。AI serverの増加がDRAM/HBMのactive capacityを増やす可能性はあるが、NANDではdataset retention、server SSD構成、write endurance、storage architectureが追加変数になる。byte数の増加を各社の売上やmarginへ直接変換しない。

演習の結果を表にする。objectごとに「電源断後に必要か」「read-mostlyかwrite-heavyか」「page cacheで温まるか」「deviceへいつ移すか」を書く。remote sourceでtime-to-first-batchだけが悪化し、steady-state kernel時間が同じなら、最初の対策はstorage/network pathである。context増でOOMが先に出るなら、NANDの容量でなくactive DRAM/HBM capacityを検査する。これが反証可能な診断になる。

ROOFLINE / 仮想的な入力

メモリは計算装置へ十分にデータを送れるか。

512 TFLOP/s制約:メモリ。計算の上限は1,000 TFLOP/s。

上限 = min(計算の上限, 帯域 × 演算密度)。TBは10¹² byte。キャッシュ、アクセスの形、通信、実際の稼働率を省いた上限で、製品の測定ではありません。容量を増やしても帯域が増えるとは限りません。

出典

01
Micron HBM3E product page ↗www.micron.com · unknown
02
Solidigm AI storage solutions ↗www.solidigm.com · unknown
03
NVIDIA H200 announcement ↗nvidianews.nvidia.com · 2023-11-13

自分のノート