## 概要 - **発表者**: 北野 貴稔(NEC デジタルテクノロジー開発研究所 シニアAIプラットフォームアーキテクト) - **イベント**: JLUG 2022(2022年12月9日) - **テーマ**: DDN Lustreを活用した大規模ストレージシステム ## NECのAIスーパーコンピュータの概要 ### AIの学習における課題 - 深層学習の要求計算量が増大、試行錯誤のサイクルの短縮が競争力に直結 - AIスパコンがなければ、先進AIの研究開発は不可能な時代に - 深層学習の要求計算量・データの増大で、学習が1回あたり数千時間と長時間化 - 数千回の試行錯誤が必要 ### システム仕様 - **GPU**: 928基のNVIDIA A100 GPU を搭載(580PFLOPS) - **ストレージ**: DDN [[Lustre]]による大規模・高速ストレージ(16PB) - **ネットワーク**: NVIDIAの超高速・低遅延ネットワーク(200GbE) - **稼働時期**: FY22末(2023年3月) - **利用者**: 数百名のNECの研究者 - **利用率**: 100% - **規模**: 国内企業No.1 ### 対象AI研究分野 - **認識AI**: 画像認識、映像認識、言語・意味理解 - **分析AI**: データ分析、予測予兆検知 - **対処AI**: 最適計画、制御 ## NECのAIスパコンのストレージシステム ### 全体システム構成 - Kubernetesを用いて最新の深層学習FWをジョブスケジューラで高効率で利用可能 - 先進HW・先端SWを密結合した設計で、高効率・利便性の高い分散学習システム ### DDN Lustreストレージの構成 #### 階層化ストレージ - **高速領域(SSD)**: NVMeで構成、高IOPSが必要な用途 - **通常領域(HDD)**: 大容量が必要な用途 - 研究者の用途によって使い分け可能 #### スケーラビリティ - OSSのペア数でスケールアウト可能 - 高速領域・通常領域共にアーキテクチャは同一 - 総容量16PBの大規模分散ファイルシステム ### 利用用途とI/O特性 - 分散深層学習での複数GPUサーバーからのデータ取得が主用途 - 映像・画像・音声・テキスト等の大規模データを用いた学習 - **I/O特性**: Random Readが多い(データサイズは多様) - PyTorch/TensorFlowは学習のメインプロセスとは別のWorkerが非同期にデータを取得 ### ネットワーク構成 - 全NWはSpine/Leafアーキテクチャで構成 - RoCEv2で低レイテンシ・高バンド幅で通信可能 - NVIDIA Spectrum SN3700(200GbE) ### RoCE v2の利点 - GPUサーバー・ストレージ間の通信においてCPUをショートカット - 低遅延化・スループット向上を実現 ## ストレージシステムのアーキテクチャ ### Lustre構成 - **MDS**: Active/Activeでメタデータ処理 - **OSS**: Active/Activeでデータ管理 - 高可用性・高信頼性を実現 - DNEを用いて複数のMDSでメタデータ性能をスケール ### Lustre DNE(Distributed Namespace) - メタデータ性能のスケールアウト - ユーザー群を複数のMDT数に合わせて自動分散配置(NEC独自開発) - 複数のMDSを活用してMetadata性能をスケールアウト ### データ保護 #### EXAScaler T10PI End-to-End Data Integrity - RoCE v2のパケットDrop対策 - クライアントとストレージでLustreチェックサムCRCによる検証 - 大規模ネットワークのデバッグ・問題切り分けが容易 ### 高可用性 DDNストレージアプライアンスの冗長構成: 1. ネットワークの冗長性 2. ファイルサービスの冗長性 3. コントローラの冗長性 4. SAS HBA障害時のFailover 5. エンクロージャ IO Module障害時のFailover ## モニタリングシステム - DDN Monitoring ToolのInfluxDBからデータを取得 - 自社のGrafanaに統合してDDNストレージをモニタリング - スループット・メタデータ性能を監視 - Slack/Emailでアラート通知 ## DDN Lustre採用の理由 ### 1. 高いスケーラビリティ - メタデータ性能とデータ処理性能の双方がリニアにスケールアウト可能 - Lustre DNEでディレクトリ配置を工夫すればMDT数に応じて処理性能向上 - OSSのペア数でデータの容量・スループットがリニアに向上 ### 2. 実証された実性能の高さ - 多様なI/Oワークロードにおいてスループット・IOPS共に高い要求水準をクリア - 画像、映像、音声、テキスト等の多様かつ大規模なI/Oワークロードを高い水準で処理 ### 3. ファイルシステムとして扱え、コード変更が不要 - 多くの研究者はファイルシステム上のデータにアクセスするプログラムを実装 - Lustreはファイルシステムとしてマウント可能 - 既存コードの移行が容易 ### 4. 性能モニタリングの容易性 - Lustreのメトリックによる性能のモニタリングが可能 - I/Oの多いユーザー・プログラムの特定が可能 ## 技術スタック - **計算**: NVIDIA A100 GPU × 928基 - **ストレージ**: DDN Lustre(16PB) - **ネットワーク**: NVIDIA Spectrum SN3700(200GbE、RoCEv2) - **コンテナオーケストレーション**: Kubernetes - **モニタリング**: Grafana、InfluxDB、Prometheus - **ファイルシステム**: Lustre with DNE