デザインツール
ストレージ

AI学習向けストレージ:Micron® 9400 NVMe™ SSD上のMLPerfストレージ

ジョン・マジー、ウェス・ヴェスク | 2023年8月

AIワークロードとMLPerfストレージの分析と特性評価

AIワークロード向けストレージのテストは、困難なタスクとなります。実際のトレーニングを実行するには、高価で急速に変化を続ける特殊なハードウェアを必要とするためです。そこでAIワークロード向けストレージのテストに役立つのがMLPerfです。

MLPerfが選ばれる理由

MLCommonsは、AIアクセラレーターのパフォーマンス向上に焦点を当てたAIワークロードにおけるベンチマークを数多く開発しています。最近では、そのノウハウをAI向けストレージに応用し、AIトレーニングにおいてストレージに掛かるストレスに関するベンチマークを構築しました。このベンチマークが目標とするところは、実際のAIトレーニングプロセスと同様のI/Oを実行することです。ファイルシステムキャッシュの影響を抑えるためにより大きなデータセットを提供し、トレーニングハードウェア(GPUなどのアクセラレーター)をストレージテストから切り離すことを目指しています。1

MLPerfストレージは、実際のワークロード(pytorch、tensorflowなど)と同様のデータローダーを使用して、ストレージからCPUメモリにデータを移動するDeep Learning I/O (DLIO) ベンチマークを活用しています。DLIOでは、アクセラレーターはスリープ時間とバッチサイズによって定義されます。スリープ時間は、エミュレートされるアクセラレーターで実際のワークロードを実行することで算出されます。ワークロードは、DLIOを実行するクライアントを追加し、クライアントごとにエミュレートされたアクセラレーターに対してメッセージ・パッシング・インターフェース(MPI)を使用することで、スケールアップまたはスケールダウンが可能です。

MLPerfは、MLPerfトレーニングに提出された結果を表す一連の構成を定義することで機能します。現在導入されているモデルには、BERT(自然言語処理)とUnet3D(3D医療用イメージング)があり、1秒あたりのサンプル数とサポートされているアクセラレーター数で結果が報告されています。テストに合格するためには、最低限90%のアクセラレーター使用率を維持する必要があります。

Unet3D分析

MLPerfは、BERTとUnet3Dの両方で導入されていますが、私たちの分析はUnet3Dに焦点を当てています。これは、BERTのベンチマークがストレージI/Oに大きな負荷を掛けないためです。Unet3Dは3Dの医療用イメージングモデルで、手動アノテーションで大容量の画像ファイルをアクセラレーターメモリに読み込み、高密度の立体セグメンテーションを生成します。これをストレージの観点から見ると、トレーニングデータセットからランダムに大容量ファイルを読み込むように見えます。私たちのテストでは、7.68TBのMicron 9400 PPO NVMe SSDを使用し、アクセラレーターが1基の場合と15基の場合を比較しています。

まず、デバイスのスループットの経時変化を観察します。図1では、アクセラレーターが1基の際の結果が主に0から600MB/秒となり、ピーク値として1,600MB/秒も測定されたことが示されています。これらのピーク値は、計算開始前のエポック介し時にプリフェッチのバッファが満たされていることに対応しています。図2が示す、15基のアクセラレーターでは、ワークロードは依然バーストしていますが、デバイスでサポートされる最大スループットに達しています。しかし、ワークロードのバーストにより、総平均スループットは最大値より15~20%低くなっています。

x軸に秒単位の時間、y軸にMibpsを示すMibpsプロットグラフ
x軸を秒単位の時間とする「Mibpsプロットデバイスnvme1n1オペレーションリード」グラフ

次に、同じワークロードにおけるキュー深度(QD)を検討します。アクセラレーターが1基の場合、QDは10を超えることはありません(図3)が、15基の場合は初期に約145でピークに達し、その後のテストの残り時間中は120以下で安定します(図4)。しかし、こうした時系列チャートだけでは全体像を把握することはできません。
 

操作別の時間に対するキュー深度を示すグラフ
nvme1n1デバイスにおける操作別の時間に対するキュー深度を示すグラフ

図5で示されるように、特定のQDにおけるI/Oの割合については、アクセラレーターが1基の時に50%近くのI/Oがキューの最初のトランザクション(QD 0)で、残りの50%近く2番目のトランザクション(QD 1)でした。

nvme1n1デバイスにおけるキュー深度と操作の割合を示すグラフ

アクセラレーターが15基の場合、ほとんどのトランザクションがQD 80~110の間に発生していますが、かなりの部分が10未満のQDで発生しています(図6)。この動作からは、一貫して高いスループットを示すと予想されていたワークロードにアイドル時間が存在することが示されています。
 

nvme1n1デバイスにおけるキュー深度と操作の割合を示すグラフ

これらの結果から、ストレージの観点から見ると、ワークロードが単純ではないことが分かります。また、大容量のランダムブロック転送とアイドル時間が、大規模な転送バーストと混在しており、MLPerfストレージはこうした現実的なワークロードを再現することで、様々なモデルのストレージをベンチマークする上で非常に有用なツールとなります。

MTS, Systems Performance Engineer

John Mazzie

John is a Member of the Technical Staff in the Data Center Workload Engineering group in Austin, TX. He graduated in 2008 from West Virginia University with his MSEE with an emphasis in wireless communications. John has worked for Dell on their storage MD3 Series of storage arrays on both the development and sustaining side. John joined Micron in 2016 where he has worked on Cassandra, MongoDB, and Ceph, and other advanced storage workloads.

SMTS Systems Performance Engineer

Wes Vaske

Wes Vaske is a principal storage solution engineer with Micron.