Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
tesorflow-v1.0-on-ec2
Search
ryo nakamaru
February 20, 2017
Programming
1
690
tesorflow-v1.0-on-ec2
MaruLabo × JAWS-UG AI 支部 #2 用の資料です
ryo nakamaru
February 20, 2017
Tweet
Share
More Decks by ryo nakamaru
See All by ryo nakamaru
AWSで楽をするサービスメッシュ入門/appmesh-trial
pottava
1
1.5k
reinforce-2019-recap-lt
pottava
2
4.1k
ScaleShift-jp-2019-summer
pottava
1
210
Firecracker とは何か/what is Firecracker
pottava
12
5.4k
ハイブリッド並列 on Kubernetes/hybrid-parallel-program-on-kubernetes
pottava
1
430
AWS Fargate + Code 兄弟で始める継続的デリバリー / Continuous Delivery with AWS Fargate and Code brothers
pottava
12
3.2k
Singularity と NVIDIA GPU Cloud で作る ハイブリッド機械学習環境の構築 / Building a hybrid environment for Machine Learning with Singularity and NGC
pottava
3
1.3k
明日から始めるちょい足し λ / get-started-with-aws-lambda
pottava
4
2.5k
NGC と Singularity によるハイブリッド機械学習環境 / A hybrid environment for Machine Learning with NGC and Singularity
pottava
0
490
Other Decks in Programming
See All in Programming
Webからモバイルへ Vue.js × Capacitor 活用事例
naokihaba
0
530
型付きアクターモデルがもたらす分散シミュレーションの未来
piyo7
0
750
OpenNext + Hono on Cloudflare でイマドキWeb開発スタックを実現する
rokuosan
0
120
Perplexity Slack Botを作ってAI活用を進めた話 / AI Engineering Summit プレイベント
n3xem
0
640
技術懸念に立ち向かい 法改正を穏便に乗り切った話
pop_cashew
0
1.3k
Cloudflare Realtime と Workers でつくるサーバーレス WebRTC
nekoya3
0
390
人には人それぞれのサービス層がある
shimabox
3
670
ktr0731/go-mcpでMCPサーバー作ってみた
takak2166
0
160
Practical Tips and Tricks for Working with Compose Multiplatform Previews (mDevCamp 2025)
stewemetal
0
120
機械学習って何? 5分で解説頑張ってみる
kuroneko2828
0
200
Benchmark
sysong
0
130
💎 My RubyKaigi Effect in 2025: Top Ruby Companies 🌐
yasulab
PRO
1
130
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
Site-Speed That Sticks
csswizardry
10
630
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Build The Right Thing And Hit Your Dates
maggiecrowley
36
2.7k
Into the Great Unknown - MozCon
thekraken
39
1.8k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
Making Projects Easy
brettharned
116
6.2k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
47
2.8k
A designer walks into a library…
pauljervisheath
206
24k
Building Adaptive Systems
keathley
43
2.6k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
900
Transcript
TensorFlow v1.0 with GPU on AWS MaruLabo × JAWS-UG AI
#2 @ 2017.02.20
@pottava SUPINF Inc.
ࠓ TensorFlow Ͱ͕͢ɺMXNet ɻ http://qiita.com/pottava/items/0d40747287ff31b8db77
DeepLeaning ͷֶशʹظ͕ߴ·Δ AWS Batchʂ https://jawsug-cli.doorkeeper.jp/events/52026
3 / 11ɺͥͻ͝ࢀՃ͍ͩ͘͞ʂʂ http://jawsdays2017.jaws-ug.jp/
ͦͦͳͥ GPU ͏ͷʁ
ʢࠓʣϋϯζΦϯ͔ͩΒͰ͢ ɾσΟʔϓϥʔχϯάͷֶशΛҰఆ࣌ؒʹऴ͍͑ͨ ɾGPU ߦྻܭࢉ͕ CPU ΑΓͣͬͱ͍ ɾֶशͷଟ͘ߦྻܭࢉ ɾGPU ͑ϋϯζΦϯΛͰ͖ΔՄೳੑ͕ߴ·Δ
ΫϥυͳΒ GPU ͷํ͕͍҆ʁʁ ɾΫϥυҰൠతʹ࣌ؒ՝ۚ ɾCPU ͩͱ 1 ͔͔࣌ؒΔॲཧɺGPU ͳΒ 45
ɹͲ͕͍ͬͪ҆ʁ ɾϓϩάϥϜنʹԠͯ͡બ͠·͠ΐ͏
ݟ͑ͳ͍ίετ ɾͰ GPU ͚ʹॻ͘ͷେมͳΜͰ͠ΐɾɾʁ ɾTensorFlow ͳͲ GPU Λҙࣝͤͣͱॻ͚Δ ɾࢼߦࡨޡ͢Δաఔ͕͍ͷຯʹετϨε ɾ͍ਖ਼ٛ
ͯ͞
Topics 1. AWS GPU Πϯελϯε & NVIDIA ͓͞Β͍ 2. g2
ܥͰ TensorFlow v1.0 Λ͏ 3 ͭͷํ๏ 3. ҆͘͏ʹ
1. AWS GPU Πϯελϯε & NVIDIA ͓͞Β͍
GPU Πϯελϯε AWS ʹ 2 छྨ͋Γ·͢ʢݱߦੈʣ g2 ܥ: NVIDIA GRID
K520 ɹɹɹɹ1,536 CUDA cores / GPU ͕ 2 ͭͰ 1 ͭͷ K520 ɹɹɹɹg2 Ͱ͑Δ GPU ຊདྷάϥϑΟοΫɾήʔϛϯά༻్ p2 ܥ: NVIDIA Tesla K80 ɹɹɹɹഒਫ਼ԋࢉ࠷େ 2.91 TFLOPSɺ୯ਫ਼ԋࢉ࠷େ 8.74 TFLOPS ɹɹɹɹ2,496 CUDA cores / GPU ͕ 2 ͭͰ 1 ͭͷ K80 ɹɹɹɹp2 ͷ GPU ൚༻ίϯϐϡʔςΟϯά༻్
EC2 Ͱ GPU Λಈ͔͢ʹ GPU υϥΠόΛΠϯετʔϧ͢Ε OKʂ ͱ͍͑ͦΕΛૢ࡞͢Δͷɾɾ ݱ࣮తʹ CUDA
Toolkit ඞཁͰ͢ɻ TensorFlow cuDNN ෦Ͱ͏ͷͰͦΕɻ
υϥΠόʁ ɾGPU ͝ͱʹ NVIDIA Driver ͕͞Ε͍ͯ·͢ ɹg2 ͳΒ GRID K520ɺp2
ͳΒ Tesla K80 ͷυϥΠό ɾυϥΠόͷόʔδϣϯ൪߸௨͠ɻ ɹྫ: ࠷৽όʔδϣϯͩͱ g2 ܥ GPU ೝࣝͰ͖ͳ͍
CUDAʁ ɾ͘ʔͩ ɾNVIDIA ࣾ GPU ͚ C ݴޠ౷߹։ൃڥ ɾίϯύΠϥͱ͔ϥΠϒϥϦͱ͔ศརπʔϧ܈ ɾTensorFlow
ͳͲ CUDA ܦ༝Ͱ GPU Λૢ࡞
CUDA ͱ NVIDIA υϥΠόͷରԠ ৽͍͠ CUDA Λ͏ʹ৽͠ΊͷυϥΠό͕ඞཁɻ https://github.com/NVIDIA/nvidia-docker/wiki/CUDA#requirements
Πϯετʔϧํ๏ 3 ͭ ɾυϥΠόΛೖΕͯɺCUDA Toolkit ΛೖΕΔ ɾCUDA ͷ Runfile ΠϯετʔϧͰυϥΠό͝ͱೖΕΔ
ɾυϥΠό͚ͩೖΕͯɺͦͷ্ Docker Λ͏
ҙ ɾυϥΠό GPU ͝ͱɺCUDA OS ͝ͱͷ༻ҙ ɾRunfile ΠϯετʔϧͰ GPU
ͱͷ߹ੑʹҙ ɾg2 ܥͱ p2 ܥ݉༻ͷ AMI Λ࡞ΔͳΒ ɹGRID K520 ͱ Tesla K80 ͲͪΒͰ͑ͯ ɹ͔ͭͳΔ͘৽͍͠υϥΠόΛ͏
ͦ͠͏
͍͠Ͱ͢
ͬͱ؆୯ʹ͑ͳ͍ͷʁ
ָ͍ͨ͠ํ ɾAWS ʹ AMI ͱ͍͏ϚγϯΠϝʔδ͕͋Γ·ͯ͠ ɹNVIDIA υϥΠό CUDA ͢Ͱʹೖͬͨͷ͕ʂ ɾNVIDIA
ެࣜ AMI → AWS Marketplace Go ɾAWS ެࣜ → “Deep Learning AMI” Ͱ୳ͤ·͢
AMI ར༻ͷώϯτ ɾଞΫϥυͰ CUDA ೖΓެࣜΠϝʔδ·ͩͳ͍ ɾNVIDIA / AWS ͍ͣΕͷ AMI
ݱঢ় CUDA 7.5 ɾࣗ࡞ͨ͠ AMI Λ Public ʹ͢Δͷɾɾ ɹɹ- NVIDIA ͷϥΠηϯε ɹɹ- υϥΠόͷΈ NVIDIA AMI + Docker ͱ͍͏ख
2. g2 ܥͰ TensorFlow v1.0 Λ ͏ 3 ͭͷํ๏
ͦͦ TensorFlow Λ͏ʹ ɾpip install ɾ./configure ͔Βͷ pip installʢࣗͰϏϧυʣ ɾnvidia-docker
run
TensorFlow v1.0 ͷґଘ GPU ൛ TensorFlow CUDA ͱ cuDNN
ʹґଘɻ v0.12 Ҏ߱ CUDA 8.0 ΛλʔήοτʹϏϧυ͞Ε͍ͯ ΔͨΊɺ8.0 ܥϥΠϒϥϦʢToolkit શମ͕ 8.0 Ͱ͋Δඞ ཁͳ͍ʣͱ 367.48 Ҏ߱ ͷ NVIDIA υϥΠό͕ඞཁɻ
ͱ͍͏͜ͱ
ҎԼͷ͍ͣΕ͔͕ඞཁ ɾґଘΛຬͨ͢Α͏ʹαʔόΛηοτΞοϓ ɾCUDA 7.5 ΛλʔήοτʹࣗͰ TF ΛϏϧυ ɾ݅Λຬͨ͢υϥΠό͚ͩೖΕͯɺDocker Ͱىಈ
g2 ܥ + CUDA 8.0
ણࡉͳυϥΠόόʔδϣϯ g2 ܥ GRID K520 ͷ࠷৽ରԠυϥΠό 367.57ɻ TensorFlow ͷϏϧυࡁΈόΠφϦ͕ཁٻ͢Δ CUDA
8.0 + NVIDIA Driver (>= 367.48) Λຬͨ͢ͷ ຯʹ͍͠ɻubuntu 16.04 + ҎԼ Runfile Ͱ OK https://developer.nvidia.com/compute/cuda/8.0/prod/local_installers/ cuda_8.0.44_linux-run
g2 ܥ + CUDA 7.5
ࣗͰϏϧυ͢ΔͳΒ Compute capability: g2 ͷ K520 3.0ɺp2 ͷ K80
3.7 TensorFlow ͷϏϧυ࣌ʹࢦఆ͠·͢ɻ https://en.wikipedia.org/wiki/CUDA#GPUs_supported
Docker Λ͏ͳΒ K520 ରԠͷ NVIDIA υϥΠό 367.57 ΛೖΕɺ nvidia-docker ΛηοτΞοϓ͢Ε
OKʂ ͘͠ AWS ެࣜͷ DeepLearning AMI ubuntu ൛Λ͑υϥΠόΠϯετʔϧ͑͞ෆཁɻ
p2 ܥʁ
جຊಉ͡ ͦͷ্ Tesla K80 ͱͳΕαʔόηοτΞοϓ ਵָʹͳΔͨΊɺׂѪ͠·͢ɻ
3. ҆͘͏ʹ
εϙοτΠϯελϯε AWS Ͱ GPU Λ͏ͳΒͥͻ͍͍ͨͱ͜Ζɻ ຊޠͷࢿྉॆ࣮͍ͯ͠ΔͷͰௐͯΈ͍ͯͩ͘͞
גࣜձࣾεϐϯϑ ΞΠσΟΞΛ͔ͨͪʹʂ +
http://prtimes.jp/main/html/rd/p/000000007.000007768.html Comfy for Docker ϓϩδΣΫτͷ Docker ಋೖɾ։ൃࢧԉɾӡ༻ࢹߦΛ͍ͨ͠·͢ɻ ʢGCP / Azure
ͪΖΜରԠ͍ͯ͠·͢ɾɾʣ https://www.supinf.co.jp/service/dockersupport/
͝૬ஊ͓ؾܰʹͪ͜Β·Ͱ.. 41 <Thank you !! https://www.supinf.co.jp/service/dockersupport/