Submit Search
Upload
Chainerのテスト環境とDockerでのCUDAの利用
•
28 likes
•
16,545 views
Yuya Unno
Follow
2016/03/19にChainer meetup #2で、Chainerのテスト環境をDockerで整備した話を話しました
Read less
Read more
Technology
Slideshow view
Report
Share
Slideshow view
Report
Share
1 of 32
Download now
Download to read offline
Recommended
ピーFIの研究開発現場
ピーFIの研究開発現場
Yuya Unno
子供の言語獲得と機械の言語獲得
子供の言語獲得と機械の言語獲得
Yuya Unno
Facebookの人工知能アルゴリズム「memory networks」について調べてみた
Facebookの人工知能アルゴリズム「memory networks」について調べてみた
株式会社メタップスホールディングス
言語と知識の深層学習@認知科学会サマースクール
言語と知識の深層学習@認知科学会サマースクール
Yuya Unno
ICML2013読み会 ELLA: An Efficient Lifelong Learning Algorithm
ICML2013読み会 ELLA: An Efficient Lifelong Learning Algorithm
Yuya Unno
Jubatusの紹介@第6回さくさくテキストマイニング
Jubatusの紹介@第6回さくさくテキストマイニング
Yuya Unno
企業における自然言語処理技術の活用の現場(情報処理学会東海支部主催講演会@名古屋大学)
企業における自然言語処理技術の活用の現場(情報処理学会東海支部主催講演会@名古屋大学)
Yuya Unno
深層学習フレームワークChainerの特徴
深層学習フレームワークChainerの特徴
Yuya Unno
Recommended
ピーFIの研究開発現場
ピーFIの研究開発現場
Yuya Unno
子供の言語獲得と機械の言語獲得
子供の言語獲得と機械の言語獲得
Yuya Unno
Facebookの人工知能アルゴリズム「memory networks」について調べてみた
Facebookの人工知能アルゴリズム「memory networks」について調べてみた
株式会社メタップスホールディングス
言語と知識の深層学習@認知科学会サマースクール
言語と知識の深層学習@認知科学会サマースクール
Yuya Unno
ICML2013読み会 ELLA: An Efficient Lifelong Learning Algorithm
ICML2013読み会 ELLA: An Efficient Lifelong Learning Algorithm
Yuya Unno
Jubatusの紹介@第6回さくさくテキストマイニング
Jubatusの紹介@第6回さくさくテキストマイニング
Yuya Unno
企業における自然言語処理技術の活用の現場(情報処理学会東海支部主催講演会@名古屋大学)
企業における自然言語処理技術の活用の現場(情報処理学会東海支部主催講演会@名古屋大学)
Yuya Unno
深層学習フレームワークChainerの特徴
深層学習フレームワークChainerの特徴
Yuya Unno
Twitter分析のためのリアルタイム分析基盤@第4回Twitter研究会
Twitter分析のためのリアルタイム分析基盤@第4回Twitter研究会
Yuya Unno
深層学習による機械とのコミュニケーション
深層学習による機械とのコミュニケーション
Yuya Unno
Emnlp読み会資料
Emnlp読み会資料
Jiro Nishitoba
NIP2015読み会「End-To-End Memory Networks」
NIP2015読み会「End-To-End Memory Networks」
Yuya Unno
最先端NLP勉強会“Learning Language Games through Interaction”Sida I. Wang, Percy L...
最先端NLP勉強会“Learning Language Games through Interaction”Sida I. Wang, Percy L...
Yuya Unno
Lighting talk chainer hands on
Lighting talk chainer hands on
Ogushi Masaya
大規模データ時代に求められる自然言語処理
大規模データ時代に求められる自然言語処理
Preferred Networks
全脳アーキテクチャ若手の会20170131
全脳アーキテクチャ若手の会20170131
Hangyo Masatsugu
TensorFlowをざっくりLTしてみた
TensorFlowをざっくりLTしてみた
Mitsuki Ogasahara
自然言語処理における意味解析と意味理解
自然言語処理における意味解析と意味理解
Kanji Takahashi
言語資源と付き合う
言語資源と付き合う
Yuya Unno
情報抽出入門 〜非構造化データを構造化させる技術〜
情報抽出入門 〜非構造化データを構造化させる技術〜
Yuya Unno
統計的係り受け解析入門
統計的係り受け解析入門
Yuya Unno
NIPS2013読み会: Distributed Representations of Words and Phrases and their Compo...
NIPS2013読み会: Distributed Representations of Words and Phrases and their Compo...
Yuya Unno
内省するTensorFlow
内省するTensorFlow
Yoshiyuki Kakihara
形態素解析の過去・現在・未来
形態素解析の過去・現在・未来
Preferred Networks
[最新版] JSAI2018 チュートリアル「"深層学習時代の" ゼロから始める自然言語処理」
[最新版] JSAI2018 チュートリアル「"深層学習時代の" ゼロから始める自然言語処理」
Yuki Arase
マイニング探検会#12
マイニング探検会#12
Yoji Kiyota
情報処理学会第74回全国大会 私的勉強会と学会の未来
情報処理学会第74回全国大会 私的勉強会と学会の未来
shunya kimura
人生の意思決定を支える社会インフラとしての図書館
人生の意思決定を支える社会インフラとしての図書館
Yoji Kiyota
自然言語処理を 役立てるのはなぜ難しいのか(2022/10/25東大大学院「自然言語処理応用」)
自然言語処理を 役立てるのはなぜ難しいのか(2022/10/25東大大学院「自然言語処理応用」)
Preferred Networks
教育版レゴマインドストームを使ったミライをつくる体験型学習 Afrel
教育版レゴマインドストームを使ったミライをつくる体験型学習 Afrel
ooedostartup
More Related Content
What's hot
Twitter分析のためのリアルタイム分析基盤@第4回Twitter研究会
Twitter分析のためのリアルタイム分析基盤@第4回Twitter研究会
Yuya Unno
深層学習による機械とのコミュニケーション
深層学習による機械とのコミュニケーション
Yuya Unno
Emnlp読み会資料
Emnlp読み会資料
Jiro Nishitoba
NIP2015読み会「End-To-End Memory Networks」
NIP2015読み会「End-To-End Memory Networks」
Yuya Unno
最先端NLP勉強会“Learning Language Games through Interaction”Sida I. Wang, Percy L...
最先端NLP勉強会“Learning Language Games through Interaction”Sida I. Wang, Percy L...
Yuya Unno
Lighting talk chainer hands on
Lighting talk chainer hands on
Ogushi Masaya
大規模データ時代に求められる自然言語処理
大規模データ時代に求められる自然言語処理
Preferred Networks
全脳アーキテクチャ若手の会20170131
全脳アーキテクチャ若手の会20170131
Hangyo Masatsugu
TensorFlowをざっくりLTしてみた
TensorFlowをざっくりLTしてみた
Mitsuki Ogasahara
自然言語処理における意味解析と意味理解
自然言語処理における意味解析と意味理解
Kanji Takahashi
言語資源と付き合う
言語資源と付き合う
Yuya Unno
情報抽出入門 〜非構造化データを構造化させる技術〜
情報抽出入門 〜非構造化データを構造化させる技術〜
Yuya Unno
統計的係り受け解析入門
統計的係り受け解析入門
Yuya Unno
NIPS2013読み会: Distributed Representations of Words and Phrases and their Compo...
NIPS2013読み会: Distributed Representations of Words and Phrases and their Compo...
Yuya Unno
内省するTensorFlow
内省するTensorFlow
Yoshiyuki Kakihara
形態素解析の過去・現在・未来
形態素解析の過去・現在・未来
Preferred Networks
[最新版] JSAI2018 チュートリアル「"深層学習時代の" ゼロから始める自然言語処理」
[最新版] JSAI2018 チュートリアル「"深層学習時代の" ゼロから始める自然言語処理」
Yuki Arase
What's hot
(17)
Twitter分析のためのリアルタイム分析基盤@第4回Twitter研究会
Twitter分析のためのリアルタイム分析基盤@第4回Twitter研究会
深層学習による機械とのコミュニケーション
深層学習による機械とのコミュニケーション
Emnlp読み会資料
Emnlp読み会資料
NIP2015読み会「End-To-End Memory Networks」
NIP2015読み会「End-To-End Memory Networks」
最先端NLP勉強会“Learning Language Games through Interaction”Sida I. Wang, Percy L...
最先端NLP勉強会“Learning Language Games through Interaction”Sida I. Wang, Percy L...
Lighting talk chainer hands on
Lighting talk chainer hands on
大規模データ時代に求められる自然言語処理
大規模データ時代に求められる自然言語処理
全脳アーキテクチャ若手の会20170131
全脳アーキテクチャ若手の会20170131
TensorFlowをざっくりLTしてみた
TensorFlowをざっくりLTしてみた
自然言語処理における意味解析と意味理解
自然言語処理における意味解析と意味理解
言語資源と付き合う
言語資源と付き合う
情報抽出入門 〜非構造化データを構造化させる技術〜
情報抽出入門 〜非構造化データを構造化させる技術〜
統計的係り受け解析入門
統計的係り受け解析入門
NIPS2013読み会: Distributed Representations of Words and Phrases and their Compo...
NIPS2013読み会: Distributed Representations of Words and Phrases and their Compo...
内省するTensorFlow
内省するTensorFlow
形態素解析の過去・現在・未来
形態素解析の過去・現在・未来
[最新版] JSAI2018 チュートリアル「"深層学習時代の" ゼロから始める自然言語処理」
[最新版] JSAI2018 チュートリアル「"深層学習時代の" ゼロから始める自然言語処理」
Similar to Chainerのテスト環境とDockerでのCUDAの利用
マイニング探検会#12
マイニング探検会#12
Yoji Kiyota
情報処理学会第74回全国大会 私的勉強会と学会の未来
情報処理学会第74回全国大会 私的勉強会と学会の未来
shunya kimura
人生の意思決定を支える社会インフラとしての図書館
人生の意思決定を支える社会インフラとしての図書館
Yoji Kiyota
自然言語処理を 役立てるのはなぜ難しいのか(2022/10/25東大大学院「自然言語処理応用」)
自然言語処理を 役立てるのはなぜ難しいのか(2022/10/25東大大学院「自然言語処理応用」)
Preferred Networks
教育版レゴマインドストームを使ったミライをつくる体験型学習 Afrel
教育版レゴマインドストームを使ったミライをつくる体験型学習 Afrel
ooedostartup
Jubatusが目指すインテリジェンス基盤
Jubatusが目指すインテリジェンス基盤
Shohei Hido
論文執筆の環境をめぐる最新の状況と、学会の査読・編集システムを持続可能とするための方策の検討
論文執筆の環境をめぐる最新の状況と、学会の査読・編集システムを持続可能とするための方策の検討
Yoji Kiyota
第六回全日本コンピュータビジョン勉強会資料 UniT (旧題: Transformer is all you need)
第六回全日本コンピュータビジョン勉強会資料 UniT (旧題: Transformer is all you need)
Yasunori Ozaki
Automatic Summarization
Automatic Summarization
Hitoshi Nishikawa
求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介
求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介
Recruit Technologies
ゼロから始める自然言語処理 【FIT2016チュートリアル】
ゼロから始める自然言語処理 【FIT2016チュートリアル】
Yuki Arase
Machine learning 15min TensorFlow hub
Machine learning 15min TensorFlow hub
Junya Kamura
Japan Robot Week 2014けいはんなロボットフォーラム
Japan Robot Week 2014けいはんなロボットフォーラム
Komei Sugiura
MojiHimoji(20110218)
MojiHimoji(20110218)
真 岡本
NewsPicksにおける記事の推薦
NewsPicksにおける記事の推薦
Akira Kitauchi
TensorFlowによるCNNアーキテクチャ構築
TensorFlowによるCNNアーキテクチャ構築
Hirokatsu Kataoka
サポーターズ勉強会スライド 2018/2/27
サポーターズ勉強会スライド 2018/2/27
Kensuke Mitsuzawa
Rtm・ros相互運用プログラミング環境
Rtm・ros相互運用プログラミング環境
openrtm
ChainerでDeep Learningを試す為に必要なこと
ChainerでDeep Learningを試す為に必要なこと
Jiro Nishitoba
JUIZ DLK 組込み向けDeep Learningコンパイラ
JUIZ DLK 組込み向けDeep Learningコンパイラ
LeapMind Inc
Similar to Chainerのテスト環境とDockerでのCUDAの利用
(20)
マイニング探検会#12
マイニング探検会#12
情報処理学会第74回全国大会 私的勉強会と学会の未来
情報処理学会第74回全国大会 私的勉強会と学会の未来
人生の意思決定を支える社会インフラとしての図書館
人生の意思決定を支える社会インフラとしての図書館
自然言語処理を 役立てるのはなぜ難しいのか(2022/10/25東大大学院「自然言語処理応用」)
自然言語処理を 役立てるのはなぜ難しいのか(2022/10/25東大大学院「自然言語処理応用」)
教育版レゴマインドストームを使ったミライをつくる体験型学習 Afrel
教育版レゴマインドストームを使ったミライをつくる体験型学習 Afrel
Jubatusが目指すインテリジェンス基盤
Jubatusが目指すインテリジェンス基盤
論文執筆の環境をめぐる最新の状況と、学会の査読・編集システムを持続可能とするための方策の検討
論文執筆の環境をめぐる最新の状況と、学会の査読・編集システムを持続可能とするための方策の検討
第六回全日本コンピュータビジョン勉強会資料 UniT (旧題: Transformer is all you need)
第六回全日本コンピュータビジョン勉強会資料 UniT (旧題: Transformer is all you need)
Automatic Summarization
Automatic Summarization
求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介
求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介
ゼロから始める自然言語処理 【FIT2016チュートリアル】
ゼロから始める自然言語処理 【FIT2016チュートリアル】
Machine learning 15min TensorFlow hub
Machine learning 15min TensorFlow hub
Japan Robot Week 2014けいはんなロボットフォーラム
Japan Robot Week 2014けいはんなロボットフォーラム
MojiHimoji(20110218)
MojiHimoji(20110218)
NewsPicksにおける記事の推薦
NewsPicksにおける記事の推薦
TensorFlowによるCNNアーキテクチャ構築
TensorFlowによるCNNアーキテクチャ構築
サポーターズ勉強会スライド 2018/2/27
サポーターズ勉強会スライド 2018/2/27
Rtm・ros相互運用プログラミング環境
Rtm・ros相互運用プログラミング環境
ChainerでDeep Learningを試す為に必要なこと
ChainerでDeep Learningを試す為に必要なこと
JUIZ DLK 組込み向けDeep Learningコンパイラ
JUIZ DLK 組込み向けDeep Learningコンパイラ
More from Yuya Unno
深層学習で切り拓くパーソナルロボットの未来
深層学習で切り拓くパーソナルロボットの未来
Yuya Unno
深層学習時代の自然言語処理ビジネス
深層学習時代の自然言語処理ビジネス
Yuya Unno
ベンチャー企業で言葉を扱うロボットの研究開発をする
ベンチャー企業で言葉を扱うロボットの研究開発をする
Yuya Unno
PFNにおけるセミナー活動
PFNにおけるセミナー活動
Yuya Unno
深層学習フレームワークChainerとその進化
深層学習フレームワークChainerとその進化
Yuya Unno
進化するChainer
進化するChainer
Yuya Unno
予測型戦略を知るための機械学習チュートリアル
予測型戦略を知るための機械学習チュートリアル
Yuya Unno
Chainer, Cupy入門
Chainer, Cupy入門
Yuya Unno
Chainer入門と最近の機能
Chainer入門と最近の機能
Yuya Unno
Chainerの使い方と自然言語処理への応用
Chainerの使い方と自然言語処理への応用
Yuya Unno
GPU上でのNLP向け深層学習の実装について
GPU上でのNLP向け深層学習の実装について
Yuya Unno
企業における自然言語処理技術利用の最先端
企業における自然言語処理技術利用の最先端
Yuya Unno
「知識」のDeep Learning
「知識」のDeep Learning
Yuya Unno
自然言語処理@春の情報処理祭
自然言語処理@春の情報処理祭
Yuya Unno
深層学習時代の自然言語処理
深層学習時代の自然言語処理
Yuya Unno
大規模データ時代に求められる自然言語処理 -言語情報から世界を捉える-
大規模データ時代に求められる自然言語処理 -言語情報から世界を捉える-
Yuya Unno
EMNLP2014読み会 "Efficient Non-parametric Estimation of Multiple Embeddings per ...
EMNLP2014読み会 "Efficient Non-parametric Estimation of Multiple Embeddings per ...
Yuya Unno
表現学習時代の生成語彙論ことはじめ
表現学習時代の生成語彙論ことはじめ
Yuya Unno
形態素列パターンマッチャーMIURAをつくりました @DSIRNLP#6
形態素列パターンマッチャーMIURAをつくりました @DSIRNLP#6
Yuya Unno
ACL読み会@PFI “How to make words with vectors: Phrase generation in distributio...
ACL読み会@PFI “How to make words with vectors: Phrase generation in distributio...
Yuya Unno
More from Yuya Unno
(20)
深層学習で切り拓くパーソナルロボットの未来
深層学習で切り拓くパーソナルロボットの未来
深層学習時代の自然言語処理ビジネス
深層学習時代の自然言語処理ビジネス
ベンチャー企業で言葉を扱うロボットの研究開発をする
ベンチャー企業で言葉を扱うロボットの研究開発をする
PFNにおけるセミナー活動
PFNにおけるセミナー活動
深層学習フレームワークChainerとその進化
深層学習フレームワークChainerとその進化
進化するChainer
進化するChainer
予測型戦略を知るための機械学習チュートリアル
予測型戦略を知るための機械学習チュートリアル
Chainer, Cupy入門
Chainer, Cupy入門
Chainer入門と最近の機能
Chainer入門と最近の機能
Chainerの使い方と自然言語処理への応用
Chainerの使い方と自然言語処理への応用
GPU上でのNLP向け深層学習の実装について
GPU上でのNLP向け深層学習の実装について
企業における自然言語処理技術利用の最先端
企業における自然言語処理技術利用の最先端
「知識」のDeep Learning
「知識」のDeep Learning
自然言語処理@春の情報処理祭
自然言語処理@春の情報処理祭
深層学習時代の自然言語処理
深層学習時代の自然言語処理
大規模データ時代に求められる自然言語処理 -言語情報から世界を捉える-
大規模データ時代に求められる自然言語処理 -言語情報から世界を捉える-
EMNLP2014読み会 "Efficient Non-parametric Estimation of Multiple Embeddings per ...
EMNLP2014読み会 "Efficient Non-parametric Estimation of Multiple Embeddings per ...
表現学習時代の生成語彙論ことはじめ
表現学習時代の生成語彙論ことはじめ
形態素列パターンマッチャーMIURAをつくりました @DSIRNLP#6
形態素列パターンマッチャーMIURAをつくりました @DSIRNLP#6
ACL読み会@PFI “How to make words with vectors: Phrase generation in distributio...
ACL読み会@PFI “How to make words with vectors: Phrase generation in distributio...
Recently uploaded
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
taisei2219
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Ryo Sasaki
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Toru Tamaki
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
Toru Tamaki
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
iPride Co., Ltd.
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Yuma Ohgami
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
Hiroki Ichikura
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
Toru Tamaki
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
sugiuralab
Recently uploaded
(9)
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
Chainerのテスト環境とDockerでのCUDAの利用
1.
Chainerのテスト環境と DockerでのCUDAの利利⽤用 (株)Preferred Infrastructure 海野 裕也 (@unnonouno)
2.
⾃自⼰己紹介 海野 裕也 l -2008
東⼤大情報理理⼯工修⼠士 l ⾃自然⾔言語処理理 l 2008-2011 ⽇日本アイ・ビー・エム(株)東京基礎研 l テキストマイニング、⾃自然⾔言語処理理の研究開発 l 2011- (株)プリファードインフラストラクチャー l ⾃自然⾔言語処理理、情報検索索、機械学習、テキストマイニングなど の研究開発 l 研究開発系案件、コンサルティング l JubatusやChainerの開発 l 最近は対話処理理 NLP若若⼿手の会共同委員⻑⾧長(2014-) 「オンライン機械学習」(2015, 講談社)2
3.
Chainerキートップ 3
4.
4
5.
初期のChainerが主に依存しているライブラリ l OS l Ubuntu14.04,
CentOS 7 l Python l 2.7, 3.4 l CUDA l 6.5, 7.0 l cuDNN l v2 5 2x2x2=8通りの環境
6.
そんなにテストいるの・・・? l protobufがPy3で動かない l 依存してたライブラリがある⽇日突然消えた l
CUDA 6.5だけ最適化のバグを踏む(キャスト周 り) l 新しいcuDNNがABIを壊す l NumPyのバージョンが上がると挙動が変わる l pipやsetuptoolsのバージョンがそれぞれ10個 位ある l Python 3.5.0だけGC時のバグを踏む 6
7.
悲痛な叫び 7
8.
⾃自動テストをしよう 8
9.
既存のCIサービスはGPUに⾮非対応 9
10.
よし、Jenkinsを使おう! 10
11.
Jenkinsとは? l 最もメジャーなオープンソースの継続的インテ グレーションツール l リポジトリを監視して、特定の条件でジョブを ⾃自動実⾏行行してくれる l
テストを実⾏行行するようにすれば、⾃自動テスト環 境ができる 11
12.
テストと仮想環境 l 8台のマシンを⽤用意せずに、複数の環境を1台の マシン上でテストしたい 12
13.
Dockerとは? l コンテナ型仮想化技術 l 詳細を語れるほど詳しくないのでググって下さい l
起動が超早い(重要) l Dockerfileに環境のセットアップ⽅方法を書いて おくとキャッシュが効く l Dockerfile内に環境のセットアップを書いておく 13
14.
こんな感じ 14
15.
Chainerの⾃自動テスト環境 15 Githubを監視 Dockerコンテナ 上でテスト実行
16.
ところで・・・ CUDAのプログラムって Dockerで動くんですか? 結論論:動きます! 16
17.
Dockerfileの準備 l .runファイルをダウンロードして解凍 l 中のドライバとCUDAをインストール RUN
./installers/NVIDIA-Linux- x86_64-352.39.run -s -N --no-kernel-module && ./installers/cuda-linux64- rel-7.5.18-19867135.run --noprompt 17
18.
問題1: GPUが⾒見見えない l ふつうに起動するとGPUがゲストから⾒見見えない l
--deviceオプションを渡すと⾒見見えるようになる $ docker run --device /dev/nvidia0 -- device /dev/nvidiactl --device /dev/nvidia- uvm chainer nvidia-smi 18
19.
問題2: 古いCUDAが動かない l ホストとゲストで別バージョンを⼊入れると動かない l
同じバージョンのドライバを使わないとダメ l ホストもゲストもCUDA7.5付属のドライバだけ⼊入れて、 ゲスト側はライブラリだけ別のバージョンを⼊入れる RUN ./installers/NVIDIA-Linux- x86_64-352.39.run -s -N --no-kernel-module RUN ./installers/cuda-linux64- rel-7.0.28-19326674.run -noprompt 19
20.
問題3: nvidia-uvmが消失する l 起動直後には
/dev/nvidia-uvm がない l 経験的に、sampleのdeviceQueryを実⾏行行すると ⽣生成されることが知られている l /dev/nvidia-uvmがなかったらdeviceQueryを実 ⾏行行するようにスクリプトを書いておく(あとで もっといい⽅方法があるよ) 20
21.
問題4: ドライババージョンが合わない l nvidia-352.63が公開されて、バージョンが上 がっちゃった l
ホストドライバが新しくなって、バージョンの 不不⼀一致問題が再燃 \(^o^)/ l ドライバのバージョンを戻せば・・・いいの か・・・? 21
22.
nvidia-dockerをつかう l さすがにしんどいので探したら、NVIDIAがCUDA⽤用の Dockerラッパーを作っていた l https://github.com/NVIDIA/nvidia-docker 22
23.
nvidia-dockerは何をしてくれるのか・・・? l 今説明したことを全部⾃自動で解決し てくれるdockerコマンドのラッパー l 今までの苦労は・・・ 23
24.
nvidia-dockerでのドライバ問題 l ホスト側のドライバ関連ファイルをVolumeで全部ゲス トから⾒見見えるようにしている(!) l ホストの環境に依存せずに使える 24
25.
nvidia-dockerでのnvidia-uvm問題 l /dev/nvidia-uvmがなかったら、nvidia- modprobeを実⾏行行している(deviceQueryいらん かった) 25 nvidia-docker/tools/src/nvidia/nvidia.go
26.
nvidia-dockerでのCUDA, cuDNNのバージョン l CUDA
6.5, 7.0, 7.5 l cuDNN v2, v3, v4 l ⾃自分で⽤用意しなくていいのね・・・ 26
27.
まとめ nvidia-docker使いましょう 27
28.
テスト環境のソース類 l https://github.com/pfnet/chainer-test l run_xxx.pyを実⾏行行すると、Dockerfileを⽣生成し て、docker
buildとnvidia-docker runを実⾏行行 l -iを渡すと、bashが起動してデバッグできる 28
29.
ところで、作ってる間に増えてきた・・・ l OS l Ubuntu
14.04, CentOS 7 l Python l 2.7, 3.4, 3.5 l CUDA l 6.5, 7.0, 7.5 l cuDNN l v2, v3, v4 l numpy l 1.9, 1.10 29 2x3x3x3x2=108通り
30.
⽬目がシパシパする 30
31.
え、まだ増えるの・・・ l OS l Ubuntu
14.04, CentOS 7, Ubuntu 16.04 l Python l 2.7, 3.4, 3.5 l CUDA l 6.5, 7.0, 7.5, 8.0 l cuDNN l v2, v3, v4 l numpy l 1.9, 1.10, 1.11 l protobuf l 2.7, 3.0 31
32.
ご清聴ありがとうございました
Download now