Weitere ähnliche Inhalte
Ähnlich wie OHS#2 GREでディープラーニング学習REST APIを作る (20)
OHS#2 GREでディープラーニング学習REST APIを作る
- 3. 4
What is CUDA?
• エヌビディアのGPUで汎用計算を行う為のプラットフォーム(無償提供)
• 最新はCUDA8.0 RC
• Windows,Linux,Mac OS X(+Android)で動作
• 超並列コンピューティングで高速に計算
• 開発環境も充実。ライブラリも充実。色々な言語に対応。
• コンパイラ、デバッガはもちろん解析ツールも充実。IDE(WindowsはVS、LinuxはEclipse)もある
• ライブラリはエヌビディア製、3rdパーティー製含めて沢山
• 対応言語はC/C++/Python/Fortran/Java , etc…
CUDA = Compute Unified Device Architecture
- 7. 8
nvidia-docker+コンテナでアプリケーションを起動
GPU2 GPU3 GPU4 GPU6 GPU7
NVIDIA CUDA Driver
Dockerエンジン
GPU5GPU0 GPU1
ホストPC
GPU0 GPU1
CUDA Libraries
Dockerコンテナ1
CUDA 7.5 Runtime
アプリケーション1
GPU0 GPU1 GPU2
CUDA Libraries
Dockerコンテナ2
CUDA 8.0 Runtime
アプリケーション2
GPU0 GPU1 GPU2
CUDA Libraries
Dockerコンテナ3
CUDA 7.0 Runtime
アプリケーション3
- 8. 9
nvidia-docker+コンテナでアプリケーションを起動
GPU2 GPU3 GPU4 GPU6 GPU7
NVIDIA CUDA Driver
Dockerエンジン
GPU5GPU0 GPU1
ホストPC
GPU0 GPU1 GPU2
CUDA Libraries
Dockerコンテナ2
CUDA 8.0 Runtime
アプリケーション2
GPU0 GPU1
CUDA Libraries
Dockerコンテナ1
CUDA 7.5 Runtime
アプリケーション1
GPU2 GPU3 GPU4
- 10. 12
GPU Rest Engine
REST APIをトリガーに呼び出されるコールバックの部分を実装する事で簡単にGPU+Webサービスを
実現
ソースコードも公開中
• https://github.com/NVIDIA/gpu-rest-engine
ディープラーニングの推論処理を行うサンプルを公開中
https://github.com/NVIDIA/gpu-rest-engine/tree/master/inference
- 11. 13
GREで学習用REST APIを作ってみた(デモ)
• GPU Rest Engineを用いてディープラーニング学習用サーバを作成
• HTTPリクエストで学習を開始
• 学習可能なモデル一覧を取得
• 学習を開始
Caffeを用いた学習
学習用コンテナ
GPU REST Engine
Deep Learning
学習サーバー
①. データセット一覧取得命令
②. 結果を取得(JSON)
③. 学習の開始
④. 割り当てられたGPU ID