Enviar pesquisa
Carregar
Cuda
•
2 gostaram
•
1,697 visualizações
Shumpei Hozumi
Seguir
cuda
Leia menos
Leia mais
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 45
Baixar agora
Baixar para ler offline
Recomendados
CUDAプログラミング入門
CUDAプログラミング入門
NVIDIA Japan
Maxwell と Java CUDAプログラミング
Maxwell と Java CUDAプログラミング
NVIDIA Japan
20170726 py data.tokyo
20170726 py data.tokyo
ManaMurakami1
NVIDIA ディープラーニング入門
NVIDIA ディープラーニング入門
Seong-Hun Choe
1070: CUDA プログラミング入門
1070: CUDA プログラミング入門
NVIDIA Japan
GTC 2017 基調講演からディープラーニング関連情報のご紹介
GTC 2017 基調講演からディープラーニング関連情報のご紹介
NVIDIA Japan
機械学習とこれを支える並列計算: ディープラーニング・スーパーコンピューターの応用について
機械学習とこれを支える並列計算: ディープラーニング・スーパーコンピューターの応用について
ハイシンク創研 / Laboratory of Hi-Think Corporation
20170421 tensor flowusergroup
20170421 tensor flowusergroup
ManaMurakami1
Recomendados
CUDAプログラミング入門
CUDAプログラミング入門
NVIDIA Japan
Maxwell と Java CUDAプログラミング
Maxwell と Java CUDAプログラミング
NVIDIA Japan
20170726 py data.tokyo
20170726 py data.tokyo
ManaMurakami1
NVIDIA ディープラーニング入門
NVIDIA ディープラーニング入門
Seong-Hun Choe
1070: CUDA プログラミング入門
1070: CUDA プログラミング入門
NVIDIA Japan
GTC 2017 基調講演からディープラーニング関連情報のご紹介
GTC 2017 基調講演からディープラーニング関連情報のご紹介
NVIDIA Japan
機械学習とこれを支える並列計算: ディープラーニング・スーパーコンピューターの応用について
機械学習とこれを支える並列計算: ディープラーニング・スーパーコンピューターの応用について
ハイシンク創研 / Laboratory of Hi-Think Corporation
20170421 tensor flowusergroup
20170421 tensor flowusergroup
ManaMurakami1
NVIDIA TESLA V100・CUDA 9 のご紹介
NVIDIA TESLA V100・CUDA 9 のご紹介
NVIDIA Japan
Pythonによる並列プログラミング -GPGPUも-
Pythonによる並列プログラミング -GPGPUも-
Yusaku Watanabe
20170329_BigData基盤研究会#7
20170329_BigData基盤研究会#7
Kohei KaiGai
(JP) GPGPUがPostgreSQLを加速する
(JP) GPGPUがPostgreSQLを加速する
Kohei KaiGai
1072: アプリケーション開発を加速するCUDAライブラリ
1072: アプリケーション開発を加速するCUDAライブラリ
NVIDIA Japan
Chainer で Tensor コア (fp16) を使いこなす
Chainer で Tensor コア (fp16) を使いこなす
NVIDIA Japan
OpenCLに触れてみよう
OpenCLに触れてみよう
You&I
20210731_OSC_Kyoto_PGStrom3.0
20210731_OSC_Kyoto_PGStrom3.0
Kohei KaiGai
Flow in VR Funhouse MOD Kit
Flow in VR Funhouse MOD Kit
NVIDIA Japan
プログラムを高速化する話Ⅱ 〜GPGPU編〜
プログラムを高速化する話Ⅱ 〜GPGPU編〜
京大 マイコンクラブ
[20170922 Sapporo Tech Bar] 地図用データを高速処理!オープンソースGPUデータベースMapDってどんなもの?? by 株式会社...
[20170922 Sapporo Tech Bar] 地図用データを高速処理!オープンソースGPUデータベースMapDってどんなもの?? by 株式会社...
Insight Technology, Inc.
SQL+GPU+SSD=∞ (Japanese)
SQL+GPU+SSD=∞ (Japanese)
Kohei KaiGai
DGX-2 を取り巻く GPU 最新技術情報
DGX-2 を取り巻く GPU 最新技術情報
NVIDIA Japan
PL/CUDA - Fusion of HPC Grade Power with In-Database Analytics
PL/CUDA - Fusion of HPC Grade Power with In-Database Analytics
Kohei KaiGai
関東GPGPU勉強会資料
関東GPGPU勉強会資料
Kimikazu Kato
EnrootとPyxisで快適コンテナ生活
EnrootとPyxisで快適コンテナ生活
Kuninobu SaSaki
pgconfasia2016 lt ssd2gpu
pgconfasia2016 lt ssd2gpu
Kohei KaiGai
GPU クラウド コンピューティング
GPU クラウド コンピューティング
NVIDIA Japan
1000: 基調講演
1000: 基調講演
NVIDIA Japan
C#, C/CLI と CUDAによる画像処理ことはじめ
C#, C/CLI と CUDAによる画像処理ことはじめ
NVIDIA Japan
Slidecast
Slidecast
Laurnd
To+pancen+oye
To+pancen+oye
Nita Tsuyoi Josei
Mais conteúdo relacionado
Mais procurados
NVIDIA TESLA V100・CUDA 9 のご紹介
NVIDIA TESLA V100・CUDA 9 のご紹介
NVIDIA Japan
Pythonによる並列プログラミング -GPGPUも-
Pythonによる並列プログラミング -GPGPUも-
Yusaku Watanabe
20170329_BigData基盤研究会#7
20170329_BigData基盤研究会#7
Kohei KaiGai
(JP) GPGPUがPostgreSQLを加速する
(JP) GPGPUがPostgreSQLを加速する
Kohei KaiGai
1072: アプリケーション開発を加速するCUDAライブラリ
1072: アプリケーション開発を加速するCUDAライブラリ
NVIDIA Japan
Chainer で Tensor コア (fp16) を使いこなす
Chainer で Tensor コア (fp16) を使いこなす
NVIDIA Japan
OpenCLに触れてみよう
OpenCLに触れてみよう
You&I
20210731_OSC_Kyoto_PGStrom3.0
20210731_OSC_Kyoto_PGStrom3.0
Kohei KaiGai
Flow in VR Funhouse MOD Kit
Flow in VR Funhouse MOD Kit
NVIDIA Japan
プログラムを高速化する話Ⅱ 〜GPGPU編〜
プログラムを高速化する話Ⅱ 〜GPGPU編〜
京大 マイコンクラブ
[20170922 Sapporo Tech Bar] 地図用データを高速処理!オープンソースGPUデータベースMapDってどんなもの?? by 株式会社...
[20170922 Sapporo Tech Bar] 地図用データを高速処理!オープンソースGPUデータベースMapDってどんなもの?? by 株式会社...
Insight Technology, Inc.
SQL+GPU+SSD=∞ (Japanese)
SQL+GPU+SSD=∞ (Japanese)
Kohei KaiGai
DGX-2 を取り巻く GPU 最新技術情報
DGX-2 を取り巻く GPU 最新技術情報
NVIDIA Japan
PL/CUDA - Fusion of HPC Grade Power with In-Database Analytics
PL/CUDA - Fusion of HPC Grade Power with In-Database Analytics
Kohei KaiGai
関東GPGPU勉強会資料
関東GPGPU勉強会資料
Kimikazu Kato
EnrootとPyxisで快適コンテナ生活
EnrootとPyxisで快適コンテナ生活
Kuninobu SaSaki
pgconfasia2016 lt ssd2gpu
pgconfasia2016 lt ssd2gpu
Kohei KaiGai
GPU クラウド コンピューティング
GPU クラウド コンピューティング
NVIDIA Japan
1000: 基調講演
1000: 基調講演
NVIDIA Japan
C#, C/CLI と CUDAによる画像処理ことはじめ
C#, C/CLI と CUDAによる画像処理ことはじめ
NVIDIA Japan
Mais procurados
(20)
NVIDIA TESLA V100・CUDA 9 のご紹介
NVIDIA TESLA V100・CUDA 9 のご紹介
Pythonによる並列プログラミング -GPGPUも-
Pythonによる並列プログラミング -GPGPUも-
20170329_BigData基盤研究会#7
20170329_BigData基盤研究会#7
(JP) GPGPUがPostgreSQLを加速する
(JP) GPGPUがPostgreSQLを加速する
1072: アプリケーション開発を加速するCUDAライブラリ
1072: アプリケーション開発を加速するCUDAライブラリ
Chainer で Tensor コア (fp16) を使いこなす
Chainer で Tensor コア (fp16) を使いこなす
OpenCLに触れてみよう
OpenCLに触れてみよう
20210731_OSC_Kyoto_PGStrom3.0
20210731_OSC_Kyoto_PGStrom3.0
Flow in VR Funhouse MOD Kit
Flow in VR Funhouse MOD Kit
プログラムを高速化する話Ⅱ 〜GPGPU編〜
プログラムを高速化する話Ⅱ 〜GPGPU編〜
[20170922 Sapporo Tech Bar] 地図用データを高速処理!オープンソースGPUデータベースMapDってどんなもの?? by 株式会社...
[20170922 Sapporo Tech Bar] 地図用データを高速処理!オープンソースGPUデータベースMapDってどんなもの?? by 株式会社...
SQL+GPU+SSD=∞ (Japanese)
SQL+GPU+SSD=∞ (Japanese)
DGX-2 を取り巻く GPU 最新技術情報
DGX-2 を取り巻く GPU 最新技術情報
PL/CUDA - Fusion of HPC Grade Power with In-Database Analytics
PL/CUDA - Fusion of HPC Grade Power with In-Database Analytics
関東GPGPU勉強会資料
関東GPGPU勉強会資料
EnrootとPyxisで快適コンテナ生活
EnrootとPyxisで快適コンテナ生活
pgconfasia2016 lt ssd2gpu
pgconfasia2016 lt ssd2gpu
GPU クラウド コンピューティング
GPU クラウド コンピューティング
1000: 基調講演
1000: 基調講演
C#, C/CLI と CUDAによる画像処理ことはじめ
C#, C/CLI と CUDAによる画像処理ことはじめ
Destaque
Slidecast
Slidecast
Laurnd
To+pancen+oye
To+pancen+oye
Nita Tsuyoi Josei
프레젠테이션1
프레젠테이션1
Jieun Lee
Memoirs of WWII
Memoirs of WWII
margueritecravatt
Wind Turbines
Wind Turbines
Abdulrahman AlMuayqil
Question 2 new
Question 2 new
famaioua
Zara
Zara
11262298
Ordenanza
Ordenanza
Jacinto Vera Intriago
Electroquimica
Electroquimica
William Alarcon Canchari
Efa using spss
Efa using spss
huynga
Microsoft Romania Christmas Campaign
Microsoft Romania Christmas Campaign
projects_partnership
Ingenieria web
Ingenieria web
Lorena Vega
Hijab
Hijab
Hajar5
Prezentacia
Prezentacia
sigmaa
apple PPT module
apple PPT module
mrthree
Merger control provisions - A step in the right direction
Merger control provisions - A step in the right direction
nitinsavara
NorDigi mobile process analyst white paper
NorDigi mobile process analyst white paper
NorDigi
Scrappers pitch
Scrappers pitch
margueritecravatt
Mamma
Mamma
Francy95
Redesigning local news
Redesigning local news
carriekawamura
Destaque
(20)
Slidecast
Slidecast
To+pancen+oye
To+pancen+oye
프레젠테이션1
프레젠테이션1
Memoirs of WWII
Memoirs of WWII
Wind Turbines
Wind Turbines
Question 2 new
Question 2 new
Zara
Zara
Ordenanza
Ordenanza
Electroquimica
Electroquimica
Efa using spss
Efa using spss
Microsoft Romania Christmas Campaign
Microsoft Romania Christmas Campaign
Ingenieria web
Ingenieria web
Hijab
Hijab
Prezentacia
Prezentacia
apple PPT module
apple PPT module
Merger control provisions - A step in the right direction
Merger control provisions - A step in the right direction
NorDigi mobile process analyst white paper
NorDigi mobile process analyst white paper
Scrappers pitch
Scrappers pitch
Mamma
Mamma
Redesigning local news
Redesigning local news
Semelhante a Cuda
NVIDIA Japan Seminar 2012
NVIDIA Japan Seminar 2012
Takuro Iizuka
Hello, DirectCompute
Hello, DirectCompute
dasyprocta
GPGPUによるパーソナルスーパーコンピュータの可能性
GPGPUによるパーソナルスーパーコンピュータの可能性
Yusaku Watanabe
PyOpenCLによるGPGPU入門
PyOpenCLによるGPGPU入門
Yosuke Onoue
GPGPU deいろんな問題解いてみた
GPGPU deいろんな問題解いてみた
Ryo Sakamoto
GTC Japan 2017
GTC Japan 2017
Hitoshi Sato
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
Preferred Networks
Lisp Meet Up #19, cl-cuda: a library to use NVIDIA CUDA in Common Lisp
Lisp Meet Up #19, cl-cuda: a library to use NVIDIA CUDA in Common Lisp
masayukitakagi
NVIDIA GRID が実現する GPU 仮想化テクノロジー
NVIDIA GRID が実現する GPU 仮想化テクノロジー
NVIDIA Japan
PF部第19回資料 poor man's JTAG
PF部第19回資料 poor man's JTAG
daye001
PF部2011年12月勉強会.androidsola
PF部2011年12月勉強会.androidsola
android sola
OpenStackを使用したGPU仮想化IaaS環境 事例紹介
OpenStackを使用したGPU仮想化IaaS環境 事例紹介
VirtualTech Japan Inc.
2015年度GPGPU実践プログラミング 第4回 GPUでの並列プログラミング(ベクトル和,移動平均,差分法)
2015年度GPGPU実践プログラミング 第4回 GPUでの並列プログラミング(ベクトル和,移動平均,差分法)
智啓 出川
NVIDIA 入門
NVIDIA 入門
Wataru Unno
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
Fixstars Corporation
【A-1】AIを支えるGPUコンピューティングの今
【A-1】AIを支えるGPUコンピューティングの今
Developers Summit
45分で理解する 最近のスパコン事情 斉藤之雄
45分で理解する 最近のスパコン事情 斉藤之雄
Yukio Saito
コンピューティングとJava~なにわTECH道
コンピューティングとJava~なにわTECH道
なおき きしだ
関東GPGPU勉強会 LLVM meets GPU
関東GPGPU勉強会 LLVM meets GPU
Takuro Iizuka
Let's play with Goldfish
Let's play with Goldfish
Tetsuyuki Kobayashi
Semelhante a Cuda
(20)
NVIDIA Japan Seminar 2012
NVIDIA Japan Seminar 2012
Hello, DirectCompute
Hello, DirectCompute
GPGPUによるパーソナルスーパーコンピュータの可能性
GPGPUによるパーソナルスーパーコンピュータの可能性
PyOpenCLによるGPGPU入門
PyOpenCLによるGPGPU入門
GPGPU deいろんな問題解いてみた
GPGPU deいろんな問題解いてみた
GTC Japan 2017
GTC Japan 2017
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
Lisp Meet Up #19, cl-cuda: a library to use NVIDIA CUDA in Common Lisp
Lisp Meet Up #19, cl-cuda: a library to use NVIDIA CUDA in Common Lisp
NVIDIA GRID が実現する GPU 仮想化テクノロジー
NVIDIA GRID が実現する GPU 仮想化テクノロジー
PF部第19回資料 poor man's JTAG
PF部第19回資料 poor man's JTAG
PF部2011年12月勉強会.androidsola
PF部2011年12月勉強会.androidsola
OpenStackを使用したGPU仮想化IaaS環境 事例紹介
OpenStackを使用したGPU仮想化IaaS環境 事例紹介
2015年度GPGPU実践プログラミング 第4回 GPUでの並列プログラミング(ベクトル和,移動平均,差分法)
2015年度GPGPU実践プログラミング 第4回 GPUでの並列プログラミング(ベクトル和,移動平均,差分法)
NVIDIA 入門
NVIDIA 入門
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
【A-1】AIを支えるGPUコンピューティングの今
【A-1】AIを支えるGPUコンピューティングの今
45分で理解する 最近のスパコン事情 斉藤之雄
45分で理解する 最近のスパコン事情 斉藤之雄
コンピューティングとJava~なにわTECH道
コンピューティングとJava~なにわTECH道
関東GPGPU勉強会 LLVM meets GPU
関東GPGPU勉強会 LLVM meets GPU
Let's play with Goldfish
Let's play with Goldfish
Último
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Yuma Ohgami
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
taisei2219
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Toru Tamaki
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Ryo Sasaki
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
iPride Co., Ltd.
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
Toru Tamaki
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
Toru Tamaki
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
Hiroki Ichikura
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
sugiuralab
Último
(9)
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
Cuda
1.
CUDA
東京工業大学 4年 千葉 滋 研究室 穂積 俊平 1
2.
CUDA 【NVIDIA】の 【GPU】に対する、 【GPGPU】を目的とした 統合開発環境
2
3.
NVIDIA • 本社:アメリカ合衆国カリフォルニア州サンタクララ • 主な製品:GPU •
ライバル: VS. 3
4.
NVIDIA • 本社:アメリカ合衆国カリフォルニア州サンタクララ • 主な製品:GPU •
ライバル:AMD VS. 4
5.
NVIDIA • 本社:アメリカ合衆国カリフォルニア州サンタクララ • 主な製品:GPU •
ライバル:AMD VS. CUDAはNVIDIAのGPUでのみ動作する! 5
6.
GPU コンピュータにおける画像処理の需要の高まり
6
7.
GPU コンピュータにおける画像処理の需要の高まり 画像処理専用のプロセッサを作ろう
7
8.
GPU コンピュータにおける画像処理の需要の高まり 画像処理専用のプロセッサを作ろう GPUの誕生!!!!!
8
9.
GPUのアーキテクチャ SM : SPを複数個含む SP
: 最小単位の演算処理ユニット SM ビデオカード GPU SP SP SM SM SP SP ビデオメモリ 9
10.
GPUとCPUの違い • SMはSIMDで動作する。
10
11.
GPUとCPUの違い • SMはSIMDで動作する。
Single Instruction Multi Data 11
12.
GPUとCPUの違い • SMはSIMDで動作する。
Single Instruction Multi Data SM内のSPは異なる処理をする事はできない。 12
13.
GPUのアーキテクチャ どのくらいの演算処理ユニット(SP)があるのか?
13
14.
GPUのアーキテクチャ どのくらいの演算処理ユニット(SP)があるのか? 比較対象:Intel Corei7
HyperThreadingが4つ。実質8個 14
15.
GPUのアーキテクチャ どのくらいの演算処理ユニット(SP)があるのか? 比較対象:Intel Corei7
HyperThreadingが4つ。実質8個 例:GT200 15
16.
GPUのアーキテクチャ どのくらいの演算処理ユニット(SP)があるのか? 比較対象:Intel Corei7
HyperThreadingが4つ。実質8個 例:GT200 SM数30個 16
17.
GPUのアーキテクチャ どのくらいの演算処理ユニット(SP)があるのか? 比較対象:Intel Corei7
HyperThreadingが4つ。実質8個 例:GT200 SM数30個 各SMに含まれるSPの数8個 30×8 = 17
18.
GPUのアーキテクチャ どのくらいの演算処理ユニット(SP)があるのか? 比較対象:Intel Corei7
HyperThreadingが4つ。実質8個 例:GT200 SM数30個 各SMに含まれるSPの数8個 30×8 = 240個 18
19.
GPUのアーキテクチャ どのくらいの演算処理ユニット(SP)があるのか? 比較対象:Intel Corei7
HyperThreadingが4つ。実質8個 例:GT200 SM数30個 各SMに含まれるSPの数8個 30×8 = 240個 30倍 19
20.
GPGPU GPUの演算処理能力はとても高い
20
21.
GPGPU GPUの演算処理能力はとても高い より汎用的な目的でGPUを使おう!
21
22.
CUDA 【NVIDIA】の 【GPU】に対する、 【GPGPU】を目的とした 統合開発環境
22
23.
CUDA CUDAはCPUとGPU両方扱う! o CPU
=> ホスト o GPU => デバイス 23
24.
CUDA CUDAはCPUとGPU両方扱う! o CPU
=> ホスト o GPU => デバイス ホストとデバイスの間で通信が必要 24
25.
典型的な処理の流れ 1. デバイスメモリ上に領域を確保 2. データをホストメモリからデバイスメモリにコピー 3.
GPUで処理を実行 4. 結果をデバイスメモリからホストメモリにコピー GPU CPU デバイスメモリ ホストメモリ 25
26.
典型的な処理の流れ 1. デバイスメモリ上に領域を確保 2. データをホストメモリからデバイスメモリにコピー 3.
GPUで処理を実行 4. 結果をデバイスメモリからホストメモリにコピー GPU CPU デバイスメモリ ホストメモリ 26
27.
典型的な処理の流れ 1. デバイスメモリ上に領域を確保 2. データをホストメモリからデバイスメモリにコピー 3.
GPUで処理を実行 4. 結果をデバイスメモリからホストメモリにコピー GPU CPU デバイスメモリ ホストメモリ 27
28.
典型的な処理の流れ 1. デバイスメモリ上に領域を確保 2. データをホストメモリからデバイスメモリにコピー 3.
GPUで処理を実行 4. 結果をデバイスメモリからホストメモリにコピー GPU CPU デバイスメモリ ホストメモリ 28
29.
典型的な処理の流れ 1. デバイスメモリ上に領域を確保 2. データをホストメモリからデバイスメモリにコピー 3.
GPUで処理を実行 4. 結果をデバイスメモリからホストメモリにコピー GPU CPU デバイスメモリ ホストメモリ 29
30.
実際のCUDAコード 例 for(int i =
0;i < 1024;i++){ C[i] = A[i] + B[i]; } 30
31.
実際のCUDAコード 1. デバイスメモリ上に領域を確保
31
32.
実際のCUDAコード float *A_d, *B_d,
*C_d cudaMalloc(&A_d,sizeof(float)*N) 32
33.
実際のCUDAコード float *A_d, *B_d,
*C_d cudaMalloc(&A_d,sizeof(float)*N) 2. データをホストメモリからデバイスメモリにコピー 33
34.
実際のCUDAコード float *A_d, *B_d,
*C_d cudaMalloc(&A_d,sizeof(float)*N) cudaMemcpy(A_d,A_h,sizeof(float)*N,hostToDevise) 34
35.
実際のCUDAコード float *A_d, *B_d,
*C_d cudaMalloc(&A_d,sizeof(float)*N) cudaMemcpy(A_d,A_h,sizeof(float)*N,hostToDevise) 3. GPUで処理を実行 35
36.
実際のCUDAコード float *A_d, *B_d,
*C_d cudaMalloc(&A_d,sizeof(float)*N) cudaMemcpy(A_d,A_h,sizeof(float)*N,hostToDevise) dim3 Dg(2,1,1) Db(512,1,1) vec_add<<Dg,Db>>(A_d,B_d,C_d) 36
37.
実際のCUDAコード float *A_d, *B_d,
*C_d cudaMalloc(&A_d,sizeof(float)*N) cudaMemcpy(A_d,A_h,sizeof(float)*N,hostToDevise) dim3 Dg(2,1,1) Db(512,1,1) vec_add<<Dg,Db>>(A_d,B_d,C_d) 4. 結果をデバイスメモリからホストメモリにコピー 37
38.
実際のCUDAコード float *A_d, *B_d,
*C_d cudaMalloc(&A_d,sizeof(float)*N) cudaMemcpy(A_d,A_h,sizeof(float)*N,hostToDevise) dim3 Dg(2,1,1) Db(512,1,1) vec_add<<Dg,Db>>(A_d,B_d,C_d) cudaMemcpy(C_h,C_d,sizeof(float)*N,deviseToHost) 38
39.
実際のCUDAコード float *A_d, *B_d,
*C_d cudaMalloc(&A_d,sizeof(float)*N) cudaMemcpy(A_d,A_h,sizeof(float)*N,hostToDevise) dim3 Dg(2,1,1) Db(512,1,1) vec_add<<<Dg,Db>>>(A_d,B_d,C_d) cudaMemcpy(C_h,C_d,sizeof(float)*N,deviseToHost) dim3って何? vec_addの中身は? 39
40.
CUDAにおけるスレッド管理 • グリッドとブロックという概念を導入し、3次元的にス
レッドを管理している。 グリッド ブロック ブロック ブロック ブロック 40
41.
CUDAにおけるスレッド管理 • グリッドとブロックという概念を導入し、3次元的にス
レッドを管理している。 グリッド ブロック ブロック ブロック ブロック • dim3変数はグリッド、ブロックのサイズを指定している。 o Dg(2,1,1) Db(512,1,1) 41
42.
カーネル関数 __global__ void vec_add(float
*A_d, *B_d, *C_d){ int i = blockDim.x*blockIdx.x + threadIdx.x; C_d[i] = A_d[i] + B_d[i]; } 42
43.
カーネル関数 __global__ void vec_add(float
*A_d, *B_d, *C_d){ int i = blockDim.x*blockIdx.x + threadIdx.x; C_d[i] = A_d[i] + B_d[i]; } ビルトイン変数 カーネル関数内で宣言せずに使用できる変数 blockDim : blockの大きさの情報 blockIdx : 何番目のblockを参照しているか threadIdx : 何番目のthreadを参照しているか 43
44.
カーネル関数 __global__ void vec_add(float
*A_d, *B_d, *C_d){ int i = blockDim.x*blockIdx.x + threadIdx.x; C_d[i] = A_d[i] + B_d[i]; } ビルトイン変数 カーネル関数内で宣言せずに使用できる変数 blockDim : blockの大きさの情報 blockIdx : 何番目のblockを参照しているか threadIdx : 何番目のthreadを参照しているか 各スレッドと配列の要素を結びつけている。 44
45.
CUDA4.1 • LLVMをベースにしたコンパイラを導入
o 最大で10%の速度アップ • 自動でパフォーマンス測定を行うVisual Profiler • CUDA_GDB o カーネル関数におけるデバッグ、アサート • CUDA_MEMCHECK o カーネル関数におけるアウトオブバウンズを検知 45
Baixar agora