SlideShare a Scribd company logo
PFNのオンプレML基盤
の取り組み
Yuichiro Ueno (Cluster Services チーム)
発表者の紹介
● 上野 裕一郎 (Yuichiro Ueno)
○ 2021/04 新卒入社
■ Cluster Services チーム
○ 入社前
■ スパコンで深層学習をする研究
○ 趣味
■ ISUCONとか性能最適化
○ SNS
■ twitter.com/y1r96
2
目次
● オンプレクラスタの概要
○ PFNがオンプレクラスタを選ぶ理由
○ オンプレクラスタ・ストレージクラスタ
○ 基盤に求められる主な要件
● 使いやすい環境
● リソースの効率的かつフェアな利用
● 信頼性・運用省力化
● クラスタに関わる組織
3
オンプレクラスタの概要
4
PFNがオンプレクラスタを選ぶ理由
● Vision: 現実世界を計算可能にする
○ シミュレーションや深層学習は膨大な計算リソースを必要とする
○ 計算力は競争力の源であり,大量の計算機が必要
● 大規模な計算を(息をするように)したい
○ 16 GPUs, 32 GPUs and More*な分散学習を回したい
○ 1 GPUな学習を数百個パラメータを変えて回したい
○ Neural Architecture Searchをしたい
● 計算基盤全てをコントロールしたい
○ ノード内・ノード間通信,I/Oの全ての最適化が高速な学習には必要
● 上から下まで(ハードもソフトも人も)保有することの重要性
○ (調達・設計からアルゴリズムまで)様々な技術バックグラウンドを持つ
メンバーが集結することで新しいものを生み出していきたい
5
(*) [1711.04325] Extremely Large Minibatch SGD: Training ResNet-50 on ImageNet in 15 Minutes
PFNのオンプレクラスタ
6
MN-1 MN-2a
MN-3
WAN
7
PFNのオンプレKubernetesクラスタ
Icon pack by Icons8 - https://icons8.com
データセンタごとにKubernetesクラスタを構成
128 nodes
(1024 GPUs)
MN-1
P100 PCIe x 8
10GbE x 2
InfiniBand FDR
(56 Gbps) x 2
MN-3a
48 nodes
(192 MN-Cores)
MN-Core x 4
100GbE x 2
MN-Core
DirectConnect
MN-2a
128 nodes
(1024 GPUs)
V100 SXM2 x 8
100GbE x 4
RoCEv2
with SR-IOV
WAN
MN-1 MN-J
世界1位!!
NVIDIA GPUなどの最新技術を採用した プライベート・スーパーコンピュータ MN-2 を自社構築し、7月に稼働
Preferred Networksの深層学習用スーパーコンピュータMN-3がスーパーコンピュータ省電力性能ランキングGreen500で世界1位を獲得
PFNのストレージクラスタ
8
トータル約 7.0 PB
(論理容量, 増加中)
File
System
Medium
MN-Js
NFS
HDD
NVMe
SSD
HDFS Apache Ozone
MN-1s
NFS
NVMe
SSD
SATA
SSD
HDFS
HDD
基盤に求められる主な要件
● 多様なリテラシのユーザが使いやすいこと
○ 「入社初日からクラスタで大規模に実験をして成果を出せる」
● リソースを効率的かつフェアに利用できること
○ 効率的:マルチテナント,スケジューリング,パフォーマンス
○ フェア:各ユーザが利用した量に基づくプリエンプションなど
● 信頼性・運用効率
○ 自動プロビジョニング,健全性の自動診断・保守省力化
9
使いやすい環境
「入社初日からクラスタで大規模に実験をして成果を出せる」
10
多様なリテラシのユーザが使いやすい環境
11
Interactive
Environment
kubectl
build-and-run
CLI tool Private PyPI
Repository
Workflow
Engine
Experiment
Management
Remote
Image Build …
GitHub
Enterprise
NFS HDFS
Object Storage
(Apache Ozone)
Private Image
Registry
エンジニア
研究者
Pull/Push
Through Cache
多様なリテラシのユーザが使いやすい環境
12
● とにかく手軽にWebだけで簡単にGPU, MN-Coreが使える(Jupyter , code-server )
● pre-builtなall-in-one(必要なライブラリ全部入り)なcontainer imageで起動
● Kubernetesをほとんど知らなくてもOK
● 大規模な実験にはあまり向かない
Interactive
Environment
● Manifestを直接書ける人用
○ 内製のArgo Workflow記述DSL(python)有り
kubectl
● 手元でコードを編集して、クラスタで実行したいひと向け
● Kubernetesの知識は少し必要だがマニフェストを書かなくていい
● 専用CLIでimage build → manifest applyまで実行可能(分散学習も対応)
$ pfkube run -p mpijob --gpu 8 -o worker 4 -- mpiexec train.py
● pushなしで手元で編集中のコードがクラスタで再現可能な形で実行可 (git-ghost連携)
● defaultはall-in-one イメージ, 自分でDockerfile書くことも可能
build-and-run
CLI tool
PFNにおける典型的なワークロード
13
(*) 分散深層学習を支える技術:AllReduceアルゴリズム - Preferred Networks Research & Development
(**) [2007.08082] Distributed Reinforcement Learning of Targeted Grasping with Active Vision for Mobile Manipulators
MPIジョブ
例: AllReduce*を伴う分散深層学習
タスク並列ジョブ
例: Parameter Search
ヘテロジニアスなジョブ
例: 環境とモデルが通信する強化学習**
環境 (シミュレータ)
学習器 (MLP)
Task
Queue
Icon pack by Icons8 - https://icons8.com
ワークフロー
例: Neural Architecture Search
インタラクティブ利用
リソースの効率的かつフェアな利用
「スケジューラで工夫しつつプリエンプションも使っていく」
14
リソースを効率的に利用できること
● マルチテナントによるプロジェクト間でのリソース共有
● 高度なスケジューリング(custom scheduler plugins)
○ 優先度
■ CPUジョブよりもGPUジョブを優先したスケジュール
○ Gang Scheduling (a.k.a Co-Scheduling)
■ Pod全てが同時にスケジュールされるか,全くされないか
■ Gang Podを”近く”に配置するUnique Zone制約もサポート
○ 様々なデバイスのサポート
■ GPU, NIC, MN-Core, Persistent Memory
● パフォーマンス
○ multi 100G NIC with RoCEv2 & SR-IOV
■ GPU間通信 for 分散学習 & ストレージ系の通信を混載する
○ 継続的な通信性能のリグレッションテスト
15
リソースをフェアに利用できること
● 優先度(PriorityClass)制御
○ high > low > low-cpu > lowest
○ high
■ lowでクラスタが混雑していてもプリエンプションして走る
■ 同時実行数はプロジェクト単位で制限されている
○ それ以外の優先度クラスは誰でも使い放題
■ オンプレクラスタが遊ぶのはもったいないのでガンガン使う
● 各ユーザが利用した量に基づくスケジューリング・プリエンプション
○ ノード時間積(利用リソース量 * 利用時間)を考慮する
■ よく使っているユーザはスケジューリングされづらい
■ よく使っているユーザはプリエンプションされやすい
16
信頼性・運用省力化
「自動化を進めて障害に立ち向かう」
17
サーバプロビジョニング・GitOpsなど
18
Cluster API MAAS Provider
(in-house)
provisioning nodes with ansible
Flux
Flux
GitHub
Enterprise
production
eval
sync manifests
apply
apply
マニフェストは
モノレポ管理
v1.23 準備中
(1 Minor Version遅れで運用)
監視/Alerting
19
GitHub
Enterprise
remote
write
監視
alertをissue化
(long-term storage)
(Prometheus)
pfnet-research/alertmanager-to-github
運用省力化
20
Node Problem
Detector
Server-Checker
(Custom Plugin)
status.conditions:
- type: DStateProcess
status: "True"
reason: DStateProcessIsDetected
message: python(34688) in ml-pod@user-ns is D-state
- type: GPUPendingPage
status: "True"
reason: GPUHasPendingPage
message: GPU 0 has pending page: SingleBitErrors=3, DoubleBitErrors=1
Reconcile
Conditions
pfnet-research/node-operation-controller
NodeRemeditation
Template
NodeOperation 生成
Icons made by Icon Monk from www.flaticon.com is licensed by CC 3.0 BY
復旧処理(Remediation)
が既知なConditionに
対して作成
復旧処理
復旧処理時の
Taint/Evict等も自動
21
クラスタに関わる組織
クラスタに関わる組織
MN-Cor
e
Cluster
Services
Cluster
Planning
MN-Core
企画&設計
ASIC設計
コンパイラ・ランタイム
計算基盤サービス化
計算基盤
22
Project A
利用・フィードバック
ファシリテーション
Project B
Project Z
…
利用・フィードバック
ファシリテーション
利用・フィードバック
ファシリテーション
連
携
連
携
連
携
ありがとうございました!
● オンプレクラスタの概要
● 使いやすい環境
○ 「入社初日からクラスタで大規模に実験をして成果を出せる」
● リソースの効率的かつフェアな利用
○ 「スケジューラで工夫しつつプリエンプションも使っていく」
● 信頼性・運用省力化
○ 「自動化を進めて障害に立ち向かう」
● クラスタに関わる組織
23
We're Hiring!
機械学習プラットフォームエンジニア (Infrastructure)
● こんな環境にワクワクする方を募集しています!
○ 日進月歩で進化している機械学習にフォーカスした計算技術を低レイヤーから高レイヤー
までトータルに吸収できる
○ 大規模機械学習クラスタの開発・運用が経験できる
○ Kubernetesを始めとするOSSコミュニティでも活躍できるチャンスがある
○ HPCとCloud Nativeの境界領域という今後ますます重要になる分野の経験ができる
○ 多様な要求・ユーザーリテラシをサポートするプラットフォーム設計・実装を経験できる
24
学生さん向け
夏季国内インターン
も開催予定です!
(4/1 公開予定)
We're Hiring!
● カジュアル面談希望の連絡お待ちしています(DMでもメンションでもお気軽に)
○ 大村: @everpeace
● 資料
○ PFNのML/DL基盤を支えるKubernetesにおける自動化 (DevOpsDays Tokyo 2021)
○ How to Schedule Machine Learning Workloads Nicely In Kubernetes (CNDT 2020)
○ Kubernetesによる機械学習基盤への挑戦 (JAPANCONTAINERDAYS V18.12)
○ Preferred Networksの機械学習クラスタを支える技術 (JulyTech Festa 2018 基調講演)
○ (採用ページにはこの他にも載せてあります )
25

More Related Content

What's hot (20)

PPTX
分散システムについて語らせてくれ
Kumazaki Hiroki
 
PDF
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
Preferred Networks
 
PPTX
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
NTT DATA Technology & Innovation
 
PPTX
Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)
Preferred Networks
 
PDF
Docker Compose 徹底解説
Masahito Zembutsu
 
PDF
研究効率化Tips Ver.2
cvpaper. challenge
 
PDF
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
Preferred Networks
 
PPTX
【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models
Deep Learning JP
 
PDF
MLOps に基づく AI/ML 実運用最前線 ~画像、動画データにおける MLOps 事例のご紹介~(映像情報メディア学会2021年冬季大会企画セッショ...
NTT DATA Technology & Innovation
 
PDF
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
NTT DATA Technology & Innovation
 
PDF
Linux女子部 systemd徹底入門
Etsuji Nakai
 
PDF
Pythonによる黒魔術入門
大樹 小倉
 
PDF
グラフニューラルネットワーク入門
ryosuke-kojima
 
PDF
[DL輪読会]data2vec: A General Framework for Self-supervised Learning in Speech,...
Deep Learning JP
 
PDF
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
 
PDF
分散学習のあれこれ~データパラレルからモデルパラレルまで~
Hideki Tsunashima
 
PDF
Transformerを多層にする際の勾配消失問題と解決法について
Sho Takase
 
PDF
Python 3.9からの新定番zoneinfoを使いこなそう
Ryuji Tsutsui
 
PDF
組合せ最適化入門:線形計画から整数計画まで
Shunji Umetani
 
PDF
Singularityで分散深層学習
Hitoshi Sato
 
分散システムについて語らせてくれ
Kumazaki Hiroki
 
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
Preferred Networks
 
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
NTT DATA Technology & Innovation
 
Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)
Preferred Networks
 
Docker Compose 徹底解説
Masahito Zembutsu
 
研究効率化Tips Ver.2
cvpaper. challenge
 
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
Preferred Networks
 
【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models
Deep Learning JP
 
MLOps に基づく AI/ML 実運用最前線 ~画像、動画データにおける MLOps 事例のご紹介~(映像情報メディア学会2021年冬季大会企画セッショ...
NTT DATA Technology & Innovation
 
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
NTT DATA Technology & Innovation
 
Linux女子部 systemd徹底入門
Etsuji Nakai
 
Pythonによる黒魔術入門
大樹 小倉
 
グラフニューラルネットワーク入門
ryosuke-kojima
 
[DL輪読会]data2vec: A General Framework for Self-supervised Learning in Speech,...
Deep Learning JP
 
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
 
分散学習のあれこれ~データパラレルからモデルパラレルまで~
Hideki Tsunashima
 
Transformerを多層にする際の勾配消失問題と解決法について
Sho Takase
 
Python 3.9からの新定番zoneinfoを使いこなそう
Ryuji Tsutsui
 
組合せ最適化入門:線形計画から整数計画まで
Shunji Umetani
 
Singularityで分散深層学習
Hitoshi Sato
 

Similar to PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 (20)

PDF
20180729 Preferred Networksの機械学習クラスタを支える技術
Preferred Networks
 
PDF
DAシンポジウム2019招待講演「深層学習モデルの高速なTraining/InferenceのためのHW/SW技術」 金子紘也hare
Preferred Networks
 
PPTX
深層学習インフラ、借りるべきか?買うべきか?
Keisuke Fukuda
 
PDF
20180227_最先端のディープラーニング 研究開発を支えるGPU計算機基盤 「MN-1」のご紹介
Preferred Networks
 
PDF
Machine Learning Operations (MLOps): Overview, Definition, and Architecture
Takuya Minagawa
 
PDF
ディープラーニング最近の発展とビジネス応用への課題
Kenta Oono
 
PDF
ディープラーニングの産業応用とそれを支える技術
Shohei Hido
 
PDF
[Japan Tech summit 2017] MAI 001
Microsoft Tech Summit 2017
 
PPTX
スケーラブルな Deep Leaning フレームワーク "Apache MXNet” を AWS で学ぶ
Amazon Web Services Japan
 
PPTX
Azure Machine Learning Services 概要 - 2019年3月版
Daiyu Hatakeyama
 
PDF
Chainer on Azure 2 年の歴史
Hirono Jumpei
 
PPTX
Deep Learning Lab - Microsoft Machine Learning meetup 2018/06/27 - 推論編
Daiyu Hatakeyama
 
PDF
20180723 PFNの研究基盤 / PFN research system infrastructure
Preferred Networks
 
PPTX
Azure Machine Learning Services 概要 - 2019年2月版
Daiyu Hatakeyama
 
PDF
20171128分散深層学習とChainerMNについて
Preferred Networks
 
PDF
[ML15]Class Cat佐々木さん「いち早く人工知能テクノロジーを取り入れた製品・サービスを市場に展開するには?」
AINOW
 
PPTX
MLOps NYC 2019 and Strata Data Conference NY 2019 report nttdata
NTT DATA Technology & Innovation
 
PDF
深層学習向け計算機クラスター MN-3
Preferred Networks
 
PDF
fpgax #11+TFUG ハード部:DNN専用ハードについて語る会-2019-02-02 MN-coreについて 金子 紘也
Preferred Networks
 
PDF
深層学習による製造業のスマート化と産業応用の将来展望(クオリティフォーラム2020講演資料)
Preferred Networks
 
20180729 Preferred Networksの機械学習クラスタを支える技術
Preferred Networks
 
DAシンポジウム2019招待講演「深層学習モデルの高速なTraining/InferenceのためのHW/SW技術」 金子紘也hare
Preferred Networks
 
深層学習インフラ、借りるべきか?買うべきか?
Keisuke Fukuda
 
20180227_最先端のディープラーニング 研究開発を支えるGPU計算機基盤 「MN-1」のご紹介
Preferred Networks
 
Machine Learning Operations (MLOps): Overview, Definition, and Architecture
Takuya Minagawa
 
ディープラーニング最近の発展とビジネス応用への課題
Kenta Oono
 
ディープラーニングの産業応用とそれを支える技術
Shohei Hido
 
[Japan Tech summit 2017] MAI 001
Microsoft Tech Summit 2017
 
スケーラブルな Deep Leaning フレームワーク "Apache MXNet” を AWS で学ぶ
Amazon Web Services Japan
 
Azure Machine Learning Services 概要 - 2019年3月版
Daiyu Hatakeyama
 
Chainer on Azure 2 年の歴史
Hirono Jumpei
 
Deep Learning Lab - Microsoft Machine Learning meetup 2018/06/27 - 推論編
Daiyu Hatakeyama
 
20180723 PFNの研究基盤 / PFN research system infrastructure
Preferred Networks
 
Azure Machine Learning Services 概要 - 2019年2月版
Daiyu Hatakeyama
 
20171128分散深層学習とChainerMNについて
Preferred Networks
 
[ML15]Class Cat佐々木さん「いち早く人工知能テクノロジーを取り入れた製品・サービスを市場に展開するには?」
AINOW
 
MLOps NYC 2019 and Strata Data Conference NY 2019 report nttdata
NTT DATA Technology & Innovation
 
深層学習向け計算機クラスター MN-3
Preferred Networks
 
fpgax #11+TFUG ハード部:DNN専用ハードについて語る会-2019-02-02 MN-coreについて 金子 紘也
Preferred Networks
 
深層学習による製造業のスマート化と産業応用の将来展望(クオリティフォーラム2020講演資料)
Preferred Networks
 
Ad

More from Preferred Networks (20)

PDF
PodSecurityPolicy からGatekeeper に移行しました / Kubernetes Meetup Tokyo #57
Preferred Networks
 
PDF
Optunaを使ったHuman-in-the-loop最適化の紹介 - 2023/04/27 W&B 東京ミートアップ #3
Preferred Networks
 
PDF
Kubernetes + containerd で cgroup v2 に移行したら "failed to create fsnotify watcher...
Preferred Networks
 
PDF
深層学習の新しい応用と、 それを支える計算機の進化 - Preferred Networks CEO 西川徹 (SEMICON Japan 2022 Ke...
Preferred Networks
 
PDF
Kubernetes ControllerをScale-Outさせる方法 / Kubernetes Meetup Tokyo #55
Preferred Networks
 
PDF
Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2
Preferred Networks
 
PDF
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2
Preferred Networks
 
PDF
Optuna Dashboardの紹介と設計解説 - 2022/12/10 Optuna Meetup #2
Preferred Networks
 
PDF
スタートアップが提案する2030年の材料開発 - 2022/11/11 QPARC講演
Preferred Networks
 
PPTX
PFNにおける研究開発(2022/10/19 東大大学院「融合情報学特別講義Ⅲ」)
Preferred Networks
 
PDF
自然言語処理を 役立てるのはなぜ難しいのか(2022/10/25東大大学院「自然言語処理応用」)
Preferred Networks
 
PDF
Kubernetes にこれから入るかもしれない注目機能!(2022年11月版) / TechFeed Experts Night #7 〜 コンテナ技術を語る
Preferred Networks
 
PDF
Matlantis™のニューラルネットワークポテンシャルPFPの適用範囲拡張
Preferred Networks
 
PDF
PFNのオンプレ計算機クラスタの取り組み_第55回情報科学若手の会
Preferred Networks
 
PDF
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
Preferred Networks
 
PDF
KubeCon + CloudNativeCon Europe 2022 Recap / Kubernetes Meetup Tokyo #51 / #k...
Preferred Networks
 
PDF
独断と偏見で選んだ Kubernetes 1.24 の注目機能と今後! / Kubernetes Meetup Tokyo 50
Preferred Networks
 
PDF
Topology Managerについて / Kubernetes Meetup Tokyo 50
Preferred Networks
 
PDF
PFN Summer Internship 2021 / Kohei Shinohara: Charge Transfer Modeling in Neu...
Preferred Networks
 
PDF
わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48
Preferred Networks
 
PodSecurityPolicy からGatekeeper に移行しました / Kubernetes Meetup Tokyo #57
Preferred Networks
 
Optunaを使ったHuman-in-the-loop最適化の紹介 - 2023/04/27 W&B 東京ミートアップ #3
Preferred Networks
 
Kubernetes + containerd で cgroup v2 に移行したら "failed to create fsnotify watcher...
Preferred Networks
 
深層学習の新しい応用と、 それを支える計算機の進化 - Preferred Networks CEO 西川徹 (SEMICON Japan 2022 Ke...
Preferred Networks
 
Kubernetes ControllerをScale-Outさせる方法 / Kubernetes Meetup Tokyo #55
Preferred Networks
 
Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2
Preferred Networks
 
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2
Preferred Networks
 
Optuna Dashboardの紹介と設計解説 - 2022/12/10 Optuna Meetup #2
Preferred Networks
 
スタートアップが提案する2030年の材料開発 - 2022/11/11 QPARC講演
Preferred Networks
 
PFNにおける研究開発(2022/10/19 東大大学院「融合情報学特別講義Ⅲ」)
Preferred Networks
 
自然言語処理を 役立てるのはなぜ難しいのか(2022/10/25東大大学院「自然言語処理応用」)
Preferred Networks
 
Kubernetes にこれから入るかもしれない注目機能!(2022年11月版) / TechFeed Experts Night #7 〜 コンテナ技術を語る
Preferred Networks
 
Matlantis™のニューラルネットワークポテンシャルPFPの適用範囲拡張
Preferred Networks
 
PFNのオンプレ計算機クラスタの取り組み_第55回情報科学若手の会
Preferred Networks
 
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
Preferred Networks
 
KubeCon + CloudNativeCon Europe 2022 Recap / Kubernetes Meetup Tokyo #51 / #k...
Preferred Networks
 
独断と偏見で選んだ Kubernetes 1.24 の注目機能と今後! / Kubernetes Meetup Tokyo 50
Preferred Networks
 
Topology Managerについて / Kubernetes Meetup Tokyo 50
Preferred Networks
 
PFN Summer Internship 2021 / Kohei Shinohara: Charge Transfer Modeling in Neu...
Preferred Networks
 
わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48
Preferred Networks
 
Ad

PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜