10. MN1構成
10
Total: 1024 GPUs (NVIDIA Tesla P100)
8 GPUs x 16 Servers
x 2 Infiniband Switches
56Gbps (FDR)
credits:
gpu by Misha Petrishchev from the Noun Project
Network Switch by Creaticca Creative Agency from the Noun Project
11. MN1の性能評価
- LINPACK Benchmark (2017/11)
- Preferred Networksのプライベート・スーパーコンピュータが Top 500リス
トのIndustry領域で国内
1位に認定
- Training ResNet-50 on ImageNet in 15 min (2017/11)
- 深層学習の学習速度において世界最速を実現
11
22. 問題点
- 内製ジョブスケジューラ
- 想定された使い方しかできない
- インタラクティブな利用(デバッグ等)ができない
- スケジューラ障害時にクラスターが一切使えなくなる
- Mesos
- フレームワークなしでは使えない
- Webに情報が少ない
- デファクトな良いジョブスケジューラがない
- 認証・認可はDC/OS Enterpriseが必要
22Icons made by Roundicons from www.flaticon.com is licensed by CC 3.0 BY
26. PFNならではの工夫
- InifiniBandのHost Deviceをコンテナに見せる
- https://github.com/everpeace/k8s-host-device-plugin
- ユーザ毎、プロジェクト毎にNamespaceを分離
- UIDマッピングによりNFSマウントしたデータをLinuxのユー
ザグループでアクセス
- 長時間のジョブはプリエンプション対象にする
- グランドチャレンジ時にはジョブ一斉退避
26Icons made by Roundicons from www.flaticon.com is licensed by CC 3.0 BY
28. 今後の課題
- 効率的なスケジューリング
- ギャングスケジューリング
- ビンパッキング
- 効率的なプリエンプション
- ネットワーク、Busトポロジーの考慮
- GPU V100 512基追加でヘテロジーニアス環境
- 最新のNVIDIA Tesla V100 32GB GPUを採用した プライベート・スーパー
コンピュータ「MN-1b」を7月に稼働
- 巨大なデータセットの管理
28Icons made by Roundicons from www.flaticon.com is licensed by CC 3.0 BY
31. 31
Define-and-RunとDefine-by-Run
f g x f g
① 計算グラフ構築 ② データフィード
x yf
x = chainer.Variable(...)
y = f(x)
z = g(x)
zg
① データフィード= 計算グラフ構築
Define-and-Run
Define-by-Run
32. Define-by-Runの利点
32
# 構築
x = Variable(‘x’)
y = Variable(‘y’)
z = x + 2 * y
# 評価
for xi, yi in data:
eval(z, (xi, yi))
# 構築と評価が同時
for xi, yi in data:
x = Variable(xi)
y = Variable(yi)
z = x + 2 * y
データを見てから違う処理をする、
といったことがやりやすい
Define-and-RunDefine-by-Run
事前にネッ
トワークを構
築してしまう
のでデータ
に依存して
構造を変え
るのが難し
い
33. Define-by-Runの利点
33
Recurrent Net Recursive Net
• Define-and-Runでは、データごとに挙動の変わるノードを定義したり、あり得る計算グラフを事前
に全部作っておく、など複雑もしくは制約の多い方法を取らざるをえない
• Define-by-Runでは、RecurrentならPythonのforループを、Recursiveは再帰呼出しを使って、非
常に直感的かつシンプルに記述できる