SlideShare a Scribd company logo
1 of 13
Download to read offline
Copyright © 2019 GRID All Rights Reserved.
INFRASTRUCTURE + LIFE + INNOVATION
12019/8/15
RNUG 20190709
DL
Technology
Solution
Group
諏訪佑介
Agenda
22019/8/15
ReNom DLについて
DL version 3における速度向上工夫の紹介
ReNom DLについて
32019/8/15
ReNomDLは、GRID社が開発しているDeep Learningフレームワーク
ReNom DLについて
42019/8/15
コンセプト:
ユーザのプログラミングスキルによらず、
高速なNN構築が可能なこと
ReNom DLについて
52019/8/15
ReNomDL v3の特徴
1. 「計算グラフ(NN)を構築してから、データを実際に流して計算を実行す
る」Define and Run方式を採用した。
… 計算グラフの最適化を行ってから計算できるので、高速な処理が可能
2. 「計算グラフ(NN)を構築は、Define by Run方式」
… 計算を実行しながら、計算グラフを構築できるので、デバッグがしやすい。
DL version 3における速度向上工夫
62019/8/15
 計算グラフの枝刈り
 同じ深さのグラフノードを並列実行
 パラメータに最適なアルゴリズム選択(Gemm, Convlution)
+ JITコンパイリング new
 CPU, GPU間のデータ転送の並列化
 GPUメモリ領域が少なくなった場合, CPUへのデータ退避
 計算の再利用
DL version 3における速度向上工夫
72019/8/15
CUDAカーネルのJITコンパイリング
C = A + B
D = A * C
Naive
__device__ void add(float *A, float *B, float *C)
__device__ void add(float *A, float *C, float *D)
__device__ void add(float *A, float *B, float *D)
=> サイズの小さいカーネルを一つのカーネルとして再構築する
DL version 3における速度向上工夫
82019/8/15
JITなしバージョン
a b
c
d
Add
x
x
Mul
Sub
3個のCUDAカーネルが
逐次実行される
DL version 3における速度向上工夫
92019/8/15
a b c d
x
JIT コンパイルバージョン
Add SubMul
一つのCUDAカーネルとして
再定義し、実行する。
DL version 3における速度向上工夫
102019/8/15
JITなし JIT
DL version 3における速度向上工夫
112019/8/15
ReNomDL で定義された式が
CUDAカーネルとして定義される
DL version 3における速度向上工夫
122019/8/15
さらに、対応する逆伝播計算用の
CUDAカーネルも定義される
まとめ
132019/8/15
DL version 3における速度向上工夫の紹介
=> JITコンパイルに基づく速度機能を追加

More Related Content

Similar to ReNomDL 高速化の紹介

ビッグIoTデータに対応したデータベース GridDB
ビッグIoTデータに対応したデータベース GridDBビッグIoTデータに対応したデータベース GridDB
ビッグIoTデータに対応したデータベース GridDBgriddb
 
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Appsグリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & AppsGoogle Cloud Platform - Japan
 
私たちがGCPを使い始めた本当の理由
私たちがGCPを使い始めた本当の理由私たちがGCPを使い始めた本当の理由
私たちがGCPを使い始めた本当の理由gree_tech
 
Spring Initializrをハックする-カスタマイズを通してその内部実装を覗く
Spring Initializrをハックする-カスタマイズを通してその内部実装を覗くSpring Initializrをハックする-カスタマイズを通してその内部実装を覗く
Spring Initializrをハックする-カスタマイズを通してその内部実装を覗くapkiban
 
Rustで3D graphics programming
Rustで3D graphics programmingRustで3D graphics programming
Rustで3D graphics programmingKiyotomoHiroyasu
 
Spark 3.0が目指す、よりインテリジェントなUnified Analytics Platform(db tech showcase 2019 Tok...
Spark 3.0が目指す、よりインテリジェントなUnified Analytics Platform(db tech showcase 2019 Tok...Spark 3.0が目指す、よりインテリジェントなUnified Analytics Platform(db tech showcase 2019 Tok...
Spark 3.0が目指す、よりインテリジェントなUnified Analytics Platform(db tech showcase 2019 Tok...NTT DATA Technology & Innovation
 
AI/MLシステムにおけるビッグデータとの付き合い方
AI/MLシステムにおけるビッグデータとの付き合い方AI/MLシステムにおけるビッグデータとの付き合い方
AI/MLシステムにおけるビッグデータとの付き合い方Shota Suzuki
 
WeDX Flow Hands-on
WeDX Flow Hands-onWeDX Flow Hands-on
WeDX Flow Hands-onJingun Jung
 
甘酸っぱいGCPレガシーApp Engine python2からCloud Runへの移行の勘所
甘酸っぱいGCPレガシーApp Engine python2からCloud Runへの移行の勘所甘酸っぱいGCPレガシーApp Engine python2からCloud Runへの移行の勘所
甘酸っぱいGCPレガシーApp Engine python2からCloud Runへの移行の勘所Ryusuke Kimura
 
OSC 2020 Fukuoka IT運用自動化を支援する「運用レコメンドプラットフォーム」実現の舞台裏
OSC 2020 Fukuoka IT運用自動化を支援する「運用レコメンドプラットフォーム」実現の舞台裏OSC 2020 Fukuoka IT運用自動化を支援する「運用レコメンドプラットフォーム」実現の舞台裏
OSC 2020 Fukuoka IT運用自動化を支援する「運用レコメンドプラットフォーム」実現の舞台裏Daisuke Ikeda
 
CData Sync × Google BigQuery 3ステップで各データソースとのデータ連携を実現
CData Sync × Google BigQuery  3ステップで各データソースとのデータ連携を実現CData Sync × Google BigQuery  3ステップで各データソースとのデータ連携を実現
CData Sync × Google BigQuery 3ステップで各データソースとのデータ連携を実現CData Software Japan
 
[Cloud OnAir] エンタープライズでのマイグレーション 方法論やクラウド ジャーニー 2019年7月18日 放送
[Cloud OnAir] エンタープライズでのマイグレーション 方法論やクラウド ジャーニー 2019年7月18日 放送[Cloud OnAir] エンタープライズでのマイグレーション 方法論やクラウド ジャーニー 2019年7月18日 放送
[Cloud OnAir] エンタープライズでのマイグレーション 方法論やクラウド ジャーニー 2019年7月18日 放送Google Cloud Platform - Japan
 
携帯SoCでの画像処理とHalide
携帯SoCでの画像処理とHalide携帯SoCでの画像処理とHalide
携帯SoCでの画像処理とHalideMorpho, Inc.
 
夏サミ2013 Hadoopを使わない独自の分散処理環境の構築とその運用
夏サミ2013 Hadoopを使わない独自の分散処理環境の構築とその運用夏サミ2013 Hadoopを使わない独自の分散処理環境の構築とその運用
夏サミ2013 Hadoopを使わない独自の分散処理環境の構築とその運用Developers Summit
 
Renomロードマップの紹介
Renomロードマップの紹介Renomロードマップの紹介
Renomロードマップの紹介ReNom User Group
 
SoftLayer最新動向と賢い利用方法
SoftLayer最新動向と賢い利用方法 SoftLayer最新動向と賢い利用方法
SoftLayer最新動向と賢い利用方法 Kimihiko Kitase
 
Spring Fest 2017 「エンタープライズで利用するSpring Boot」#jsug #sf_h1
Spring Fest 2017 「エンタープライズで利用するSpring Boot」#jsug #sf_h1Spring Fest 2017 「エンタープライズで利用するSpring Boot」#jsug #sf_h1
Spring Fest 2017 「エンタープライズで利用するSpring Boot」#jsug #sf_h1Takeshi Hirosue
 
第14回 KAIM M5StickV(K210)をDNNアクセラレータとして使おうとした試み
第14回 KAIM M5StickV(K210)をDNNアクセラレータとして使おうとした試み第14回 KAIM M5StickV(K210)をDNNアクセラレータとして使おうとした試み
第14回 KAIM M5StickV(K210)をDNNアクセラレータとして使おうとした試みtomitomi3 tomitomi3
 
基本から学ぶ ビッグデータ / データ分析 / 機械学習 サービス群
基本から学ぶ ビッグデータ / データ分析 / 機械学習 サービス群基本から学ぶ ビッグデータ / データ分析 / 機械学習 サービス群
基本から学ぶ ビッグデータ / データ分析 / 機械学習 サービス群Google Cloud Platform - Japan
 
Devsumi2013 Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?
Devsumi2013 Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?Devsumi2013 Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?
Devsumi2013 Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?Takashi Sogabe
 

Similar to ReNomDL 高速化の紹介 (20)

ビッグIoTデータに対応したデータベース GridDB
ビッグIoTデータに対応したデータベース GridDBビッグIoTデータに対応したデータベース GridDB
ビッグIoTデータに対応したデータベース GridDB
 
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Appsグリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
 
私たちがGCPを使い始めた本当の理由
私たちがGCPを使い始めた本当の理由私たちがGCPを使い始めた本当の理由
私たちがGCPを使い始めた本当の理由
 
Spring Initializrをハックする-カスタマイズを通してその内部実装を覗く
Spring Initializrをハックする-カスタマイズを通してその内部実装を覗くSpring Initializrをハックする-カスタマイズを通してその内部実装を覗く
Spring Initializrをハックする-カスタマイズを通してその内部実装を覗く
 
Rustで3D graphics programming
Rustで3D graphics programmingRustで3D graphics programming
Rustで3D graphics programming
 
Spark 3.0が目指す、よりインテリジェントなUnified Analytics Platform(db tech showcase 2019 Tok...
Spark 3.0が目指す、よりインテリジェントなUnified Analytics Platform(db tech showcase 2019 Tok...Spark 3.0が目指す、よりインテリジェントなUnified Analytics Platform(db tech showcase 2019 Tok...
Spark 3.0が目指す、よりインテリジェントなUnified Analytics Platform(db tech showcase 2019 Tok...
 
AI/MLシステムにおけるビッグデータとの付き合い方
AI/MLシステムにおけるビッグデータとの付き合い方AI/MLシステムにおけるビッグデータとの付き合い方
AI/MLシステムにおけるビッグデータとの付き合い方
 
WeDX Flow Hands-on
WeDX Flow Hands-onWeDX Flow Hands-on
WeDX Flow Hands-on
 
甘酸っぱいGCPレガシーApp Engine python2からCloud Runへの移行の勘所
甘酸っぱいGCPレガシーApp Engine python2からCloud Runへの移行の勘所甘酸っぱいGCPレガシーApp Engine python2からCloud Runへの移行の勘所
甘酸っぱいGCPレガシーApp Engine python2からCloud Runへの移行の勘所
 
OSC 2020 Fukuoka IT運用自動化を支援する「運用レコメンドプラットフォーム」実現の舞台裏
OSC 2020 Fukuoka IT運用自動化を支援する「運用レコメンドプラットフォーム」実現の舞台裏OSC 2020 Fukuoka IT運用自動化を支援する「運用レコメンドプラットフォーム」実現の舞台裏
OSC 2020 Fukuoka IT運用自動化を支援する「運用レコメンドプラットフォーム」実現の舞台裏
 
CData Sync × Google BigQuery 3ステップで各データソースとのデータ連携を実現
CData Sync × Google BigQuery  3ステップで各データソースとのデータ連携を実現CData Sync × Google BigQuery  3ステップで各データソースとのデータ連携を実現
CData Sync × Google BigQuery 3ステップで各データソースとのデータ連携を実現
 
[Cloud OnAir] エンタープライズでのマイグレーション 方法論やクラウド ジャーニー 2019年7月18日 放送
[Cloud OnAir] エンタープライズでのマイグレーション 方法論やクラウド ジャーニー 2019年7月18日 放送[Cloud OnAir] エンタープライズでのマイグレーション 方法論やクラウド ジャーニー 2019年7月18日 放送
[Cloud OnAir] エンタープライズでのマイグレーション 方法論やクラウド ジャーニー 2019年7月18日 放送
 
携帯SoCでの画像処理とHalide
携帯SoCでの画像処理とHalide携帯SoCでの画像処理とHalide
携帯SoCでの画像処理とHalide
 
夏サミ2013 Hadoopを使わない独自の分散処理環境の構築とその運用
夏サミ2013 Hadoopを使わない独自の分散処理環境の構築とその運用夏サミ2013 Hadoopを使わない独自の分散処理環境の構築とその運用
夏サミ2013 Hadoopを使わない独自の分散処理環境の構築とその運用
 
Renomロードマップの紹介
Renomロードマップの紹介Renomロードマップの紹介
Renomロードマップの紹介
 
SoftLayer最新動向と賢い利用方法
SoftLayer最新動向と賢い利用方法 SoftLayer最新動向と賢い利用方法
SoftLayer最新動向と賢い利用方法
 
Spring Fest 2017 「エンタープライズで利用するSpring Boot」#jsug #sf_h1
Spring Fest 2017 「エンタープライズで利用するSpring Boot」#jsug #sf_h1Spring Fest 2017 「エンタープライズで利用するSpring Boot」#jsug #sf_h1
Spring Fest 2017 「エンタープライズで利用するSpring Boot」#jsug #sf_h1
 
第14回 KAIM M5StickV(K210)をDNNアクセラレータとして使おうとした試み
第14回 KAIM M5StickV(K210)をDNNアクセラレータとして使おうとした試み第14回 KAIM M5StickV(K210)をDNNアクセラレータとして使おうとした試み
第14回 KAIM M5StickV(K210)をDNNアクセラレータとして使おうとした試み
 
基本から学ぶ ビッグデータ / データ分析 / 機械学習 サービス群
基本から学ぶ ビッグデータ / データ分析 / 機械学習 サービス群基本から学ぶ ビッグデータ / データ分析 / 機械学習 サービス群
基本から学ぶ ビッグデータ / データ分析 / 機械学習 サービス群
 
Devsumi2013 Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?
Devsumi2013 Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?Devsumi2013 Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?
Devsumi2013 Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?
 

More from ReNom User Group

AI画像認識モデル開発をやってみた!#1
AI画像認識モデル開発をやってみた!#1AI画像認識モデル開発をやってみた!#1
AI画像認識モデル開発をやってみた!#1ReNom User Group
 
ReNomを利活用した溶接モニタリングの取組について
ReNomを利活用した溶接モニタリングの取組についてReNomを利活用した溶接モニタリングの取組について
ReNomを利活用した溶接モニタリングの取組についてReNom User Group
 
ReNom IMG version3.0最新情報の紹介
ReNom IMG version3.0最新情報の紹介ReNom IMG version3.0最新情報の紹介
ReNom IMG version3.0最新情報の紹介ReNom User Group
 
EDGEMATRIX社のご紹介と、Edge AI Computing Platformについて
EDGEMATRIX社のご紹介と、Edge AI Computing PlatformについてEDGEMATRIX社のご紹介と、Edge AI Computing Platformについて
EDGEMATRIX社のご紹介と、Edge AI Computing PlatformについてReNom User Group
 
AIのビジネス実装を成功に近づけるために
AIのビジネス実装を成功に近づけるためにAIのビジネス実装を成功に近づけるために
AIのビジネス実装を成功に近づけるためにReNom User Group
 
量子コンピュータ向けアプリケーション開発フレームワークReNomQとは
量子コンピュータ向けアプリケーション開発フレームワークReNomQとは量子コンピュータ向けアプリケーション開発フレームワークReNomQとは
量子コンピュータ向けアプリケーション開発フレームワークReNomQとはReNom User Group
 
ReNom IMGの活用事例 + ReNom TAGの告知
ReNom IMGの活用事例 + ReNom TAGの告知ReNom IMGの活用事例 + ReNom TAGの告知
ReNom IMGの活用事例 + ReNom TAGの告知ReNom User Group
 
ReNom RG新機能の紹介
ReNom RG新機能の紹介ReNom RG新機能の紹介
ReNom RG新機能の紹介ReNom User Group
 
エンジニアではなくてもAIモデル構築が可能な時代に
エンジニアではなくてもAIモデル構築が可能な時代にエンジニアではなくてもAIモデル構築が可能な時代に
エンジニアではなくてもAIモデル構築が可能な時代にReNom User Group
 
バージョンアップした「ReNomIMG」の紹介
バージョンアップした「ReNomIMG」の紹介バージョンアップした「ReNomIMG」の紹介
バージョンアップした「ReNomIMG」の紹介ReNom User Group
 
ReNomIMG を使った料理名判別による栄養管理アプリ
ReNomIMG を使った料理名判別による栄養管理アプリReNomIMG を使った料理名判別による栄養管理アプリ
ReNomIMG を使った料理名判別による栄養管理アプリReNom User Group
 
AI/DeepLearningに必要なデータ準備〜そのデータ本当ですか?~
AI/DeepLearningに必要なデータ準備〜そのデータ本当ですか?~AI/DeepLearningに必要なデータ準備〜そのデータ本当ですか?~
AI/DeepLearningに必要なデータ準備〜そのデータ本当ですか?~ReNom User Group
 
ReNom チュートリアルと今後 ~renom.jpで始めるAI開発~
ReNom チュートリアルと今後 ~renom.jpで始めるAI開発~ReNom チュートリアルと今後 ~renom.jpで始めるAI開発~
ReNom チュートリアルと今後 ~renom.jpで始めるAI開発~ReNom User Group
 
ReNom 2016 ~ 2018振り返り
ReNom 2016 ~ 2018振り返りReNom 2016 ~ 2018振り返り
ReNom 2016 ~ 2018振り返りReNom User Group
 
ユニアデックスのAIに向けた取り組みご紹介
ユニアデックスのAIに向けた取り組みご紹介ユニアデックスのAIに向けた取り組みご紹介
ユニアデックスのAIに向けた取り組みご紹介ReNom User Group
 
データの外観を把握する。データ前処理アプリケーションのご紹介
データの外観を把握する。データ前処理アプリケーションのご紹介データの外観を把握する。データ前処理アプリケーションのご紹介
データの外観を把握する。データ前処理アプリケーションのご紹介ReNom User Group
 
GPUディープラーニング最新情報
GPUディープラーニング最新情報GPUディープラーニング最新情報
GPUディープラーニング最新情報ReNom User Group
 
データベースをAI開発に活用
データベースをAI開発に活用データベースをAI開発に活用
データベースをAI開発に活用ReNom User Group
 

More from ReNom User Group (20)

AI画像認識モデル開発をやってみた!#1
AI画像認識モデル開発をやってみた!#1AI画像認識モデル開発をやってみた!#1
AI画像認識モデル開発をやってみた!#1
 
ReNomを利活用した溶接モニタリングの取組について
ReNomを利活用した溶接モニタリングの取組についてReNomを利活用した溶接モニタリングの取組について
ReNomを利活用した溶接モニタリングの取組について
 
ReNom IMG version3.0最新情報の紹介
ReNom IMG version3.0最新情報の紹介ReNom IMG version3.0最新情報の紹介
ReNom IMG version3.0最新情報の紹介
 
EDGEMATRIX社のご紹介と、Edge AI Computing Platformについて
EDGEMATRIX社のご紹介と、Edge AI Computing PlatformについてEDGEMATRIX社のご紹介と、Edge AI Computing Platformについて
EDGEMATRIX社のご紹介と、Edge AI Computing Platformについて
 
AIのビジネス実装を成功に近づけるために
AIのビジネス実装を成功に近づけるためにAIのビジネス実装を成功に近づけるために
AIのビジネス実装を成功に近づけるために
 
量子コンピュータ向けアプリケーション開発フレームワークReNomQとは
量子コンピュータ向けアプリケーション開発フレームワークReNomQとは量子コンピュータ向けアプリケーション開発フレームワークReNomQとは
量子コンピュータ向けアプリケーション開発フレームワークReNomQとは
 
ReNom IMGの活用事例 + ReNom TAGの告知
ReNom IMGの活用事例 + ReNom TAGの告知ReNom IMGの活用事例 + ReNom TAGの告知
ReNom IMGの活用事例 + ReNom TAGの告知
 
ReNom RG新機能の紹介
ReNom RG新機能の紹介ReNom RG新機能の紹介
ReNom RG新機能の紹介
 
ReNomDL V3の紹介
ReNomDL V3の紹介ReNomDL V3の紹介
ReNomDL V3の紹介
 
エンジニアではなくてもAIモデル構築が可能な時代に
エンジニアではなくてもAIモデル構築が可能な時代にエンジニアではなくてもAIモデル構築が可能な時代に
エンジニアではなくてもAIモデル構築が可能な時代に
 
バージョンアップした「ReNomIMG」の紹介
バージョンアップした「ReNomIMG」の紹介バージョンアップした「ReNomIMG」の紹介
バージョンアップした「ReNomIMG」の紹介
 
ReNomIMG を使った料理名判別による栄養管理アプリ
ReNomIMG を使った料理名判別による栄養管理アプリReNomIMG を使った料理名判別による栄養管理アプリ
ReNomIMG を使った料理名判別による栄養管理アプリ
 
AI/DeepLearningに必要なデータ準備〜そのデータ本当ですか?~
AI/DeepLearningに必要なデータ準備〜そのデータ本当ですか?~AI/DeepLearningに必要なデータ準備〜そのデータ本当ですか?~
AI/DeepLearningに必要なデータ準備〜そのデータ本当ですか?~
 
ReNom チュートリアルと今後 ~renom.jpで始めるAI開発~
ReNom チュートリアルと今後 ~renom.jpで始めるAI開発~ReNom チュートリアルと今後 ~renom.jpで始めるAI開発~
ReNom チュートリアルと今後 ~renom.jpで始めるAI開発~
 
ReNom DP&TDA
ReNom DP&TDAReNom DP&TDA
ReNom DP&TDA
 
ReNom 2016 ~ 2018振り返り
ReNom 2016 ~ 2018振り返りReNom 2016 ~ 2018振り返り
ReNom 2016 ~ 2018振り返り
 
ユニアデックスのAIに向けた取り組みご紹介
ユニアデックスのAIに向けた取り組みご紹介ユニアデックスのAIに向けた取り組みご紹介
ユニアデックスのAIに向けた取り組みご紹介
 
データの外観を把握する。データ前処理アプリケーションのご紹介
データの外観を把握する。データ前処理アプリケーションのご紹介データの外観を把握する。データ前処理アプリケーションのご紹介
データの外観を把握する。データ前処理アプリケーションのご紹介
 
GPUディープラーニング最新情報
GPUディープラーニング最新情報GPUディープラーニング最新情報
GPUディープラーニング最新情報
 
データベースをAI開発に活用
データベースをAI開発に活用データベースをAI開発に活用
データベースをAI開発に活用
 

ReNomDL 高速化の紹介