SlideShare une entreprise Scribd logo
1  sur  42
Télécharger pour lire hors ligne
第3回 GPGPUプログラミング環境
長岡技術科学大学 電気電子情報工学専攻 出川智啓
今回の内容
2015/04/30GPGPU実践プログラミング
 ソフトウェア
 コンパイラ,ライブラリ
 CUDA等GPU向けのプログラムを開発する環境
 開発環境
 Visual Studio, Eclipse, Nsight
 ハードウェア
 GPU(PCI‐Exカード)
 組込用GPU
 GPGPU教育計算機システムGROUSEの利用方法
2
CUDA (Compute Unified Device Architecture)
 NVIDIA社製GPU向け開発環境
 Windows, Linux, Mac OS X
 2007年頃発表
 C/C++言語+独自のGPU向け拡張
 専用コンパイラ(nvcc)とランタイムライブラリ
 いくつかの数値計算ライブラリ(線形代数計算,FFTなど)
2015/04/30GPGPU実践プログラミング3
CUDA付属のライブラリ
 cuBLAS
 BLASのGPU向け実装(密行列)
 BLAS(Basic Linear Algebra Subprogram)
 cuSPARSE
 BLASのGPU向け実装(疎行列)
 cuFFT
 高速フーリエ変換
 cuRAND
 乱数生成
 その他
 https://developer.nvidia.com/gpu‐accelerated‐libraries
GPGPU実践プログラミング 2015/04/304
CUDA Fortran
2015/04/15GPGPU実践プログラミング5
 FortranのNVIDIA GPU向け拡張
 PGI社の販売するFortranコンパイラで利用可能
 10.0以降で利用可能
 2015年4月30日現在の最新版は15.4
 CUDA Cを利用するが,新機能はFortranコンパイラが対応し
ないと利用できない
 CUDA Fortranと区別するために,CUDAをCUDA Cと呼ぶこともある
 GROUSEではCUDA Cのバージョンが4.0だが,PGIコンパイラのバー
ジョンが古いためバージョン3.2までしか利用できない
FORTRAN
2015/04/15GPGPU実践プログラミング6
 科学技術計算分野において利用
 情報処理を専門としない技術者・研究者が利用
 配列演算の記述が容易
 ポインタの明示的な取り扱いが不要
FortranによるGPGPU
2015/04/15GPGPU実践プログラミング7
 GPGPUの普及と裾野の広がり
 FORTRANからC言語を経由してGPUへ移植
 資産を多く持つFortranユーザからの要求の高まり
 新しい概念(GPUのプログラミングモデル)と開発言語の習得
は高負荷
 CUDA Fortranの登場
 かけた労力と得られる利得(性能向上)のバランスがよい
 並列計算の知識だけである程度の性能が得られる
CUDA Fortran
2015/04/15GPGPU実践プログラミング8
 CUDA Cと比較してコーディングが簡単
 CPUでプログラムを組む様な感覚
 GPUの制御を隠して数値計算に集中
 ライブラリよりも手間はかかるがチューニングが可能
 労力(チューニング)と利得(高速化)の比較
 CUDA Cよりも労力を少なく
CUDA Fortranサンプル(ベクトル和)
2015/04/30GPGPU実践プログラミング9
module kernel
implicit none
integer,parameter :: n = 2**20
contains
subroutine add(a,b,c)
implicit none
real :: a(n),b(n),c(n)
integer :: i
do i=1,n
c(i) = a(i)+b(i)
end do
end subroutine add
end module kernel
program add
use kernel
implicit none
real,allocatable :: a(:),b(:),c(:)
allocate(a(n)); a = 1.0
allocate(b(n)); b = 2.0
allocate(c(n)); c = 0.0
call add(a, b, c)
deallocate(a)
deallocate(b)
deallocate(c)
end program add
CUDA Fortranサンプル(ベクトル和)*
2015/04/30GPGPU実践プログラミング10
module kernel
implicit none
integer,parameter :: n = 2**20
contains
attributes(global) &
subroutine add(a,b,c)
implicit none
real :: a(n),b(n),c(n)
integer :: i
i = (blockIdx%x‐1)*blockDim%x
+ threadIdx%x
c(i) = a(i)+b(i)
end subroutine add
end module kernel
program add
use kernel
use cudafor
implicit none
real,allocatable,device :: &
a(:),b(:),c(:)
allocate(a(n)); a = 1.0
allocate(b(n)); b = 2.0
allocate(c(n)); c = 0.0
call add<<<n/256,256>>>(a, b, c)
deallocate(a)
deallocate(b)
deallocate(c)
end program add*並列プログラミングの詳細は次回以降取り扱う.
何となく似ているということだけ感じて欲しい
CUDA FortranについてはGPGPU講習会で取り扱う
module kernel
implicit none
integer,parameter :: n = 2**20
contains
attributes(global) &
subroutine add(a,b,c)
implicit none
real :: a(n),b(n),c(n)
integer :: i
i = (blockIdx%x‐1)*blockDim%x
+ threadIdx%x
c(i) = a(i)+b(i)
end subroutine add
end module kernel
program add
use kernel
use cudafor
implicit none
real,allocatable,device :: &
a(:),b(:),c(:)
allocate(a(n)); a = 1.0
allocate(b(n)); b = 2.0
allocate(c(n)); c = 0.0
call add<<<n/256,256>>>(a, b, c)
deallocate(a)
deallocate(b)
deallocate(c)
end program add
CUDA Fortranサンプル(ベクトル和)*
2015/04/30GPGPU実践プログラミング11
GPUカーネル
の目印
配列添字とス
レッドの対応
メモリ属性を指定
メモリ確保
は変化無し
並列実行の
度合を指定
メモリ解放も
変化無し
モジュールの追加
*並列プログラミングの詳細は次回以降取り扱う.
何となく似ているということだけ感じて欲しい
CUDA FortranについてはGPGPU講習会で取り扱う
CUDA Fortranプログラムのコンパイル
2015/04/30GPGPU実践プログラミング12
 コンパイル
 $ pgfortran –Mcuda=cc20 ファイル名.cuf
 pgfortranはpgf90でも可
 ファイルの拡張子は.cuf
 ‐Mcuda=cc20
 Compute Capability 2.0のGPU(Fermi)を対象
 エラーがなければa.outという実行ファイルが作成される
 実行
 $ ./a.out
OpenCL
 Open Computing Language
 Heterogeneous並列環境向けの標準化フレームワーク
 ロイヤリティ不要のオープンスタンダード
 処理するハードウェアに依存しない
 CPU, GPU, Cell等のプロセッサで動作
 統一されたAPIによる制御が可能
 OpenCL Working Groupによって策定
 Appleにより提案
 AMDが自社GPUの標準開発環境として採用
2015/04/30GPGPU実践プログラミング13
OpenCL
2015/04/30GPGPU実践プログラミング
 計算機環境が多様化するとソフトウェアの移植が困難
 ハードウェア構造の違い
 命令の構文の違い
 均一な計算機環境から不均一な計算機環境へ移行
 マルチコアCPU
 CPU+GPU
 Cell/B.E.
 ソフトウェアの移植性を維持しつつ,ハードウェアの変更
を可能にしたい
 プロセッサの種類に依存しない統一された開発環境が必要
14
OpenCL
2015/04/30GPGPU実践プログラミング
 ハードウェアの抽象化
 不均一な計算環境
 制御用プロセッサ+演算用プロセッサ
 CPU(1コア)+CPU(その他のコア)
 CPU+GPU
 PPE+SPE (Cell/B.E.)
 演算用プロセッサ上でOSが動作していないと想定
 制御用プロセッサから演算プログラムを起動
 演算プログラムをOpenCL,制御用プログラムをC言語で作成
15
OpenCL
2015/04/30GPGPU実践プログラミング
 二つの仕様を標準化
 OpenCL C言語仕様
 演算用プロセッサで動作するプログラムの記述方法
 C言語を拡張
 OpenCLランタイムAPI仕様
 制御用プロセッサが利用するAPI(C言語からの関数呼出)
 OpenCL C言語で作成されたプログラムを呼び出し,演算用プ
ロセッサで並列実行
16
プログラムの構成
2015/04/30GPGPU実践プログラミング
 ホストプログラム(拡張子は.cpp)
 OpenCLランタイムAPIを利用してC/C++言語で記述
 カーネル(拡張子は.cl)
 OpenCLデバイスで動作するプログラム
 OpenCL C言語で記述
OpenCLデバイス ホスト
CPU
メモリ
CUDA 
Core
メモリ
ホストプログラムカーネル 呼出
17
コンパイル
2015/04/30GPGPU実践プログラミング
 ホストプログラムからカーネルを読み込んで実行
 オンラインコンパイル方式を採用
 プログラム実行時にOpenCLランタイムライブラリがカーネルを
コンパイル,実行(Just in Timeコンパイル)
 デバイスに依存せずにプログラムを配布可能
ホストプログラム カーネル
OpenCLランタイムライブラリ
ホスト OpenCLデバイス
コンパイル
カーネル
読込
実行
18
ハードウェアモデル
2015/04/30GPGPU実践プログラミング19
 OpenCLデバイスは複数の演算
ユニットから構成
 演算ユニットは複数のプロセッ
シングエレメント(PE)から構成
 GPUとの対応
 OpenCLデバイス = GPU
 演算ユニット = SM
 PE = CUDA Core
OpenCLデバイス
PE PE PEPE
・・・
PE PE PEPE
演算ユニット
PE PE PEPE
PE PE PEPE
演算ユニット
並列プログラミングモデル
2015/04/30GPGPU実践プログラミング20
 データ並列プログラミング
 タスク並列プログラミングモデル
ホスト
プログラム コマンドキュー
処理
OpenCLデバイス
演算ユニット
演算ユニット
演算ユニット
処
理
処
理
処
理
イ
ン
デ
ッ
ク
ス
空
間
1
2
3
データ並列
実行指示
データ並列
実行
ホスト
プログラム コマンドキュー
OpenCLデバイス
演算ユニット
演算ユニット
演算ユニット
処
理
処
理
処
理
タスク並列
実行指示
タスク並列
実行
処
理
処
理
処
理
インデック
ス空間1
インデック
ス空間1
インデック
ス空間1
並列プログラミングモデル
2015/04/30GPGPU実践プログラミング21
 データ並列実行時に,演算ユ
ニットとPEに固有のIDを付加
 インデックス空間の展開
 演算ユニットで実行する単位
 ワークグループ
 PEで実行する単位
 ワークアイテム
OpenCLデバイス
PE
PE
PE
演算ユニット
ワークアイテムID 0
ワークアイテムID 1
ワークアイテムID 2
ワークグループID 0
PE
PE
PE
演算ユニット
ワークアイテムID 0
ワークアイテムID 1
ワークアイテムID 2
ワークグループID 1
グローバルアイテム数 6
ローカルアイテム数 3
メモリモデル
2015/04/30GPGPU実践プログラミング22
 グローバルメモリ
 全てのワークアイテムから読み書きできるメモリ領域
 コンスタントメモリ
 全てのワークアイテムから読み込みだけができるメモリ
 ローカルメモリ
 ワークグループ内のワークアイテムが共有できるメモリ
 プライベートメモリ
 ワークアイテム専用のメモリ
メモリモデル
 GPUとの対応
 グローバルメモリ=グローバ
ルメモリ
 コンスタントメモリ=コンスタ
ントメモリ
 ローカルメモリ=共有メモリ
 プライベートメモリ=レジスタ
2015/04/30GPGPU実践プログラミング23
全てのワークアイテム
がデータを共有
ワークグループ内
でデータを共有
コンスタントメモリ
OpenCLデバイス
P P P P
PE PE PE PE
ローカルメモリ
演算ユニット
P P P P
PE PE PE PE
ローカルメモリ
演算ユニット
グローバルメモリ
各ワークアイテムが
個別のデータを保有
プライベートメモリ
カーネルの作成
2015/04/30GPGPU実践プログラミング24
 関数に修飾子__kernelを付加
 引数となる変数にアドレス修飾子を付加
 グローバルメモリに存在する場合 __global
 コンスタントメモリに存在する場合 __constant
 ローカルメモリに存在する場合 __local
 プライベートメモリに存在する場合 __private
 一つのワークアイテムが実行する内容を記述
 ワークアイテムのIDを取得
 IDを基に振り分ける
CUDA Cのカーネル*
2015/04/30GPGPU実践プログラミング25
__global__ void init(float *a, float *b, float *c){
int i = blockIdx.x*blockDim.x + threadIdx.x;
a[i] = 1.0f;
b[i] = 2.0f;
c[i] = 0.0f;
}
__global__ void add(float *a, float *b, float *c){
int i = blockIdx.x*blockDim.x + threadIdx.x;
c[i] = a[i] + b[i];
}
*並列プログラミングの詳細は次回以降取り扱う.
何となく似ているということだけ感じて欲しい
OpenCLについてはGPGPU講習会で取り扱う
OpenCLのカーネルコード*
2015/04/30GPGPU実践プログラミング26
__kernel void init(__global float *a, __global float *b, __global float *c){
int i = get_global_id(0);
a[i] = 1.0f;
b[i] = 2.0f;
c[i] = 0.0f;
}
__kernel void add(__global float *a, __global float *b, __global float *c){
int i = get_global_id(0);
c[i] = a[i] + b[i];
}
*並列プログラミングの詳細は次回以降取り扱う.
何となく似ているということだけ感じて欲しい
OpenCLについてはGPGPU講習会で取り扱う
ホストコード
2015/04/30GPGPU実践プログラミング27
 カーネルを実行するための下準備を記述
1.実行するプラットフォーム
の特定
2.デバイスの特定*
3.コンテキストの作成
4.コマンドキューの作成
5.メモリオブジェクトの作成*
6.カーネルの読み込み
7.プログラムオブジェクトの
作成
8. カーネルのコンパイル
9. カーネルオブジェクトの
作成
10. カーネル引数の設定
11. コマンドキューへの投入
(カーネルの実行*)
12. メモリオブジェクトから結
果を読み出し*
13. オブジェクトの解放*
*GPUと共通
OpenCLプログラムのコンパイル
 使用(ログイン)している計算機環境でOpenCLが有効に
なっているかの確認
 grouseにはNVIDIA社が提供するOpenCL環境が存在
 コンパイル
 nvcc ‐lOpenCL ソースファイル名.cpp
 ソースファイルの拡張子は.cpp
2015/04/30GPGPU実践プログラミング28
$ ls /etc/OpenCL/vendors
nvidia.icd
OpenACC
2015/04/30GPGPU実践プログラミング
 既存のプログラムソースにディレクティブ(指示句)を挿
入するだけでGPUコードを生成
 GPUに限らず,アクセラレータ・デバイスで動作するプログラム
を作成するための標準規格
 PGI によるPGI Accelerator Programming Modelを踏
襲し,2011年に規格化
 最適化にはそれなりの労力が必要
 手作業でCUDAへ移植するよりは簡単だが性能もそこそこ
 「何時間勉強して何倍高速化」という売り文句が使われている
29
円周率を求めるプログラム
2015/04/30GPGPU実践プログラミング30
 中点則による数値積分
 単位円の第1象限のみを考え,円をN個の長方形で近似
 長方形の面積の総和を求め,4倍して円の面積を導出
1
y
x
0
i
x=(i+0.5)dx
・・・ ・・・
x=idx
dx
i+1
幅 dx=r/N=1/N
高さ y=
2
1 x
 






1
0
2
1
0
2
5.011
N
i
dxdxidxdxx面積 A=
41
1
1
0
2





dx
x
を利用することも可能
この場合はプログラム中に数学関数が現れない
#include<stdio.h>
#include<math.h>
#include<time.h>
#define N (1000000000)
int main(void){
double a=0.0, x, dx=1.0/(double)N;
long long i;
clock_t start, stop;
double elapsedtime;
start = clock();
for(i=0; i<N; i++){
x = ((double)i+0.5)*dx;    //積分点
a += sqrt(1.0 ‐ x*x) * dx; //中点則による面積の計算
}
stop = clock();
elapsedtime = (double)(stop‐start)/CLOCKS_PER_SEC;
printf("pi = %15.13f¥n elapsed time = %fsec¥n", 4.0*a, elapsedtime);
return 0;
}
円周率を求めるプログラム
2015/04/30GPGPU実践プログラミング31
コンパイルにはpgiコンパイラを利用
$ pgcc pi.c
$ ./a.out
pi = 3.1415926535902
elapsed time = 7.140000sec
#include<stdio.h>
#include<math.h>
#include<time.h>
#define N (1000000000)
int main(void){
double a=0.0, x, dx=1.0/(double)N;
long long i;
clock_t start, stop;
double elapsedtime;
start = clock();
#pragma acc kernels //OpenACCディレクティブを追加し,コンパイルオプションに‐accを追加
for(i=0; i<N; i++){
x = ((double)i+0.5)*dx;    //積分点
a += sqrt(1.0 ‐ x*x) * dx; //中点則による面積の計算
}
stop = clock();
elapsedtime = (double)(stop‐start)/CLOCKS_PER_SEC;
printf("pi = %15.13f¥n elapsed time = %fsec¥n", 4.0*a, elapsedtime);
return 0;
}
円周率を求めるプログラム
2015/04/30GPGPU実践プログラミング32
コンパイルにはpgiコンパイラを利用
$ pgcc ‐acc pi.c
$ ./a.out
pi = 3.1415926535898
elapsed time = 2.770000sec
円周率を求めるプログラム
2015/04/30GPGPU実践プログラミング33
 コンパイルオプションでGPU向けにコンパイルされている
かが確認可能
$ pgcc ‐acc ‐Minfo pi.c
main:
13, Generating Tesla code
14, Loop is parallelizable
Accelerator kernel generated
14, #pragma acc loop gang, vector(128) 
/* blockIdx.x threadIdx.x */
16, Sum reduction generated for a
Visual Studio
 マイクロソフト社が提供するソフトウェア開発製品群
+統合開発環境
 Visual Studio Community 2013が無料で公開
 Windowsでも無料でGPU開発環境を構築可能
2015/04/30GPGPU実践プログラミング34
Visual Studio
2015/04/30GPGPU実践プログラミング
 Microsoftのページからダウンロード可能
 インストールも含めて時間がかかるので気長に待ちましょう
http://www.microsoft.com/ja‐jp/dev/products/community.aspx
・・・
35
Visual Studio*
2015/04/30GPGPU実践プログラミング36
https://developer.nvidia.com/cuda‐zone
*Visual StudioにCUDAのプラグインが導入される
Visual Studio(CUDA)
 CUDAのインストーラ内にはToolkit, ドライバ, SDKが含まれる
 以前はパソコンの種類(Desktop, Notebook), OSのバージョン
(8.1, 7, XP, Server 2008, Server 2012)やビット数
(32bit, 64bit)で別れていたが簡略化された
2015/04/30GPGPU実践プログラミング37
Eclipse
2015/04/30GPGPU実践プログラミング38
https://developer.nvidia.com/cuda‐zone
*Nsight Eclipse Editionとして一つのパッケージになる
Eclipse
 LinuxはOSのバージョンで細か
く別れている
 OSによってインストールの方法
が異なる
 インストール前にやること
 インストールの方法
 インストール後にやること
 詳細はLinux Getting 
Started Guideを参照のこと
2015/04/30GPGPU実践プログラミング39
Nsight
 デバッグ・プロファイルツール
 https://developer.nvidia.com/nsight‐eclipse‐
edition
 https://developer.nvidia.com/nvidia‐nsight‐
visual‐studio‐edition
 Visual StudioやEclipseと統合し,開発→デバッグ→
プロファイリングが可能
2015/04/30GPGPU実践プログラミング40
ハードウェア
2015/04/15GPGPU実践プログラミング41
 NVIDIA社のGPU
 GeForce パーソナルコンピュータ用
 Quadro 3次元CGを扱うワークステーション用
 Tesla スーパーコンピュータ等GPUコンピューティング用
 AMD社のGPU
 Radeon
 FirePro
 FireStream
Jetson TK1
 組込スーパーコンピューター
 NVIDIA Tegra K1を採用
 Keplarアーキテクチャ
 192 CUDA コア
 NVIDIA 4‐Plus‐1™ クアッドコア ARM® Cortex‐A15 CPU
 Linux for Tegraが動作
 CUDAやNsightも動作
2015/04/30GPGPU実践プログラミング
https://developer.nvidia.com/
nvidia‐nsight‐tegra
42

Contenu connexe

Tendances

2015年度GPGPU実践基礎工学 第10回 GPUのプログラム構造
2015年度GPGPU実践基礎工学 第10回 GPUのプログラム構造2015年度GPGPU実践基礎工学 第10回 GPUのプログラム構造
2015年度GPGPU実践基礎工学 第10回 GPUのプログラム構造
智啓 出川
 
2015年度GPGPU実践基礎工学 第11回 GPUでの並列 プログラミング(ベクトル和)
2015年度GPGPU実践基礎工学 第11回 GPUでの並列プログラミング(ベクトル和)2015年度GPGPU実践基礎工学 第11回 GPUでの並列プログラミング(ベクトル和)
2015年度GPGPU実践基礎工学 第11回 GPUでの並列 プログラミング(ベクトル和)
智啓 出川
 
2015年度GPGPU実践プログラミング 第4回 GPUでの並列プログラミング(ベクトル和,移動平均,差分法)
2015年度GPGPU実践プログラミング 第4回 GPUでの並列プログラミング(ベクトル和,移動平均,差分法)2015年度GPGPU実践プログラミング 第4回 GPUでの並列プログラミング(ベクトル和,移動平均,差分法)
2015年度GPGPU実践プログラミング 第4回 GPUでの並列プログラミング(ベクトル和,移動平均,差分法)
智啓 出川
 
2015年度GPGPU実践基礎工学 第5回 ハードウェアによるCPUの高速化技術
2015年度GPGPU実践基礎工学 第5回 ハードウェアによるCPUの高速化技術2015年度GPGPU実践基礎工学 第5回 ハードウェアによるCPUの高速化技術
2015年度GPGPU実践基礎工学 第5回 ハードウェアによるCPUの高速化技術
智啓 出川
 
GPGPU Seminar (Accelerataion of Lattice Boltzmann Method using CUDA Fortran)
GPGPU Seminar (Accelerataion of Lattice Boltzmann Method using CUDA Fortran)GPGPU Seminar (Accelerataion of Lattice Boltzmann Method using CUDA Fortran)
GPGPU Seminar (Accelerataion of Lattice Boltzmann Method using CUDA Fortran)
智啓 出川
 
2015年度先端GPGPUシミュレーション工学特論 第14回 複数GPUの利用
2015年度先端GPGPUシミュレーション工学特論 第14回 複数GPUの利用2015年度先端GPGPUシミュレーション工学特論 第14回 複数GPUの利用
2015年度先端GPGPUシミュレーション工学特論 第14回 複数GPUの利用
智啓 出川
 
2015年度先端GPGPUシミュレーション工学特論 第1回 先端シミュレーションおよび産業界におけるGPUの役割
2015年度先端GPGPUシミュレーション工学特論 第1回 先端シミュレーションおよび産業界におけるGPUの役割2015年度先端GPGPUシミュレーション工学特論 第1回 先端シミュレーションおよび産業界におけるGPUの役割
2015年度先端GPGPUシミュレーション工学特論 第1回 先端シミュレーションおよび産業界におけるGPUの役割
智啓 出川
 
2015年度先端GPGPUシミュレーション工学特論 第6回 プログラムの性能評価指針 (Flop/Byte,計算律速,メモリ律速)
2015年度先端GPGPUシミュレーション工学特論 第6回 プログラムの性能評価指針(Flop/Byte,計算律速,メモリ律速)2015年度先端GPGPUシミュレーション工学特論 第6回 プログラムの性能評価指針(Flop/Byte,計算律速,メモリ律速)
2015年度先端GPGPUシミュレーション工学特論 第6回 プログラムの性能評価指針 (Flop/Byte,計算律速,メモリ律速)
智啓 出川
 
2015年度GPGPU実践プログラミング 第6回 パフォーマンス解析ツール
2015年度GPGPU実践プログラミング 第6回 パフォーマンス解析ツール2015年度GPGPU実践プログラミング 第6回 パフォーマンス解析ツール
2015年度GPGPU実践プログラミング 第6回 パフォーマンス解析ツール
智啓 出川
 
2015年度GPGPU実践プログラミング 第2回 GPUのアーキテクチャとプログラム構造
2015年度GPGPU実践プログラミング 第2回 GPUのアーキテクチャとプログラム構造2015年度GPGPU実践プログラミング 第2回 GPUのアーキテクチャとプログラム構造
2015年度GPGPU実践プログラミング 第2回 GPUのアーキテクチャとプログラム構造
智啓 出川
 
2015年度先端GPGPUシミュレーション工学特論 第4回 GPUのメモリ階層の詳細 (共有メモリ)
2015年度先端GPGPUシミュレーション工学特論 第4回 GPUのメモリ階層の詳細(共有メモリ)2015年度先端GPGPUシミュレーション工学特論 第4回 GPUのメモリ階層の詳細(共有メモリ)
2015年度先端GPGPUシミュレーション工学特論 第4回 GPUのメモリ階層の詳細 (共有メモリ)
智啓 出川
 
2015年度GPGPU実践プログラミング 第11回 画像処理
2015年度GPGPU実践プログラミング 第11回 画像処理2015年度GPGPU実践プログラミング 第11回 画像処理
2015年度GPGPU実践プログラミング 第11回 画像処理
智啓 出川
 
2015年度GPGPU実践基礎工学 第8回 並列計算の概念 (プロセスとスレッド)
2015年度GPGPU実践基礎工学 第8回 並列計算の概念(プロセスとスレッド)2015年度GPGPU実践基礎工学 第8回 並列計算の概念(プロセスとスレッド)
2015年度GPGPU実践基礎工学 第8回 並列計算の概念 (プロセスとスレッド)
智啓 出川
 
2015年度GPGPU実践基礎工学 第13回 GPUのメモリ階層
2015年度GPGPU実践基礎工学 第13回 GPUのメモリ階層2015年度GPGPU実践基礎工学 第13回 GPUのメモリ階層
2015年度GPGPU実践基礎工学 第13回 GPUのメモリ階層
智啓 出川
 
2015年度GPGPU実践基礎工学 第14回 GPGPU組込開発環境
2015年度GPGPU実践基礎工学 第14回 GPGPU組込開発環境2015年度GPGPU実践基礎工学 第14回 GPGPU組込開発環境
2015年度GPGPU実践基礎工学 第14回 GPGPU組込開発環境
智啓 出川
 
2015年度GPGPU実践基礎工学 第15回 GPGPU開発環境 (OpenCL)
2015年度GPGPU実践基礎工学 第15回 GPGPU開発環境(OpenCL)2015年度GPGPU実践基礎工学 第15回 GPGPU開発環境(OpenCL)
2015年度GPGPU実践基礎工学 第15回 GPGPU開発環境 (OpenCL)
智啓 出川
 
2015年度GPGPU実践基礎工学 第1回 学際的分野における先端シミュレーション技術の歴史
2015年度GPGPU実践基礎工学 第1回 学際的分野における先端シミュレーション技術の歴史2015年度GPGPU実践基礎工学 第1回 学際的分野における先端シミュレーション技術の歴史
2015年度GPGPU実践基礎工学 第1回 学際的分野における先端シミュレーション技術の歴史
智啓 出川
 
2015年度GPGPU実践プログラミング 第5回 GPUのメモリ階層
2015年度GPGPU実践プログラミング 第5回 GPUのメモリ階層2015年度GPGPU実践プログラミング 第5回 GPUのメモリ階層
2015年度GPGPU実践プログラミング 第5回 GPUのメモリ階層
智啓 出川
 
2015年度GPGPU実践基礎工学 第6回 ソフトウェアによるCPUの高速化技術
2015年度GPGPU実践基礎工学 第6回 ソフトウェアによるCPUの高速化技術2015年度GPGPU実践基礎工学 第6回 ソフトウェアによるCPUの高速化技術
2015年度GPGPU実践基礎工学 第6回 ソフトウェアによるCPUの高速化技術
智啓 出川
 

Tendances (20)

2015年度GPGPU実践基礎工学 第10回 GPUのプログラム構造
2015年度GPGPU実践基礎工学 第10回 GPUのプログラム構造2015年度GPGPU実践基礎工学 第10回 GPUのプログラム構造
2015年度GPGPU実践基礎工学 第10回 GPUのプログラム構造
 
2015年度GPGPU実践基礎工学 第11回 GPUでの並列 プログラミング(ベクトル和)
2015年度GPGPU実践基礎工学 第11回 GPUでの並列プログラミング(ベクトル和)2015年度GPGPU実践基礎工学 第11回 GPUでの並列プログラミング(ベクトル和)
2015年度GPGPU実践基礎工学 第11回 GPUでの並列 プログラミング(ベクトル和)
 
2015年度GPGPU実践プログラミング 第4回 GPUでの並列プログラミング(ベクトル和,移動平均,差分法)
2015年度GPGPU実践プログラミング 第4回 GPUでの並列プログラミング(ベクトル和,移動平均,差分法)2015年度GPGPU実践プログラミング 第4回 GPUでの並列プログラミング(ベクトル和,移動平均,差分法)
2015年度GPGPU実践プログラミング 第4回 GPUでの並列プログラミング(ベクトル和,移動平均,差分法)
 
2015年度GPGPU実践基礎工学 第5回 ハードウェアによるCPUの高速化技術
2015年度GPGPU実践基礎工学 第5回 ハードウェアによるCPUの高速化技術2015年度GPGPU実践基礎工学 第5回 ハードウェアによるCPUの高速化技術
2015年度GPGPU実践基礎工学 第5回 ハードウェアによるCPUの高速化技術
 
GPGPU Seminar (Accelerataion of Lattice Boltzmann Method using CUDA Fortran)
GPGPU Seminar (Accelerataion of Lattice Boltzmann Method using CUDA Fortran)GPGPU Seminar (Accelerataion of Lattice Boltzmann Method using CUDA Fortran)
GPGPU Seminar (Accelerataion of Lattice Boltzmann Method using CUDA Fortran)
 
GPGPU Education at Nagaoka University of Technology: A Trial Run
GPGPU Education at Nagaoka University of Technology: A Trial RunGPGPU Education at Nagaoka University of Technology: A Trial Run
GPGPU Education at Nagaoka University of Technology: A Trial Run
 
2015年度先端GPGPUシミュレーション工学特論 第14回 複数GPUの利用
2015年度先端GPGPUシミュレーション工学特論 第14回 複数GPUの利用2015年度先端GPGPUシミュレーション工学特論 第14回 複数GPUの利用
2015年度先端GPGPUシミュレーション工学特論 第14回 複数GPUの利用
 
2015年度先端GPGPUシミュレーション工学特論 第1回 先端シミュレーションおよび産業界におけるGPUの役割
2015年度先端GPGPUシミュレーション工学特論 第1回 先端シミュレーションおよび産業界におけるGPUの役割2015年度先端GPGPUシミュレーション工学特論 第1回 先端シミュレーションおよび産業界におけるGPUの役割
2015年度先端GPGPUシミュレーション工学特論 第1回 先端シミュレーションおよび産業界におけるGPUの役割
 
2015年度先端GPGPUシミュレーション工学特論 第6回 プログラムの性能評価指針 (Flop/Byte,計算律速,メモリ律速)
2015年度先端GPGPUシミュレーション工学特論 第6回 プログラムの性能評価指針(Flop/Byte,計算律速,メモリ律速)2015年度先端GPGPUシミュレーション工学特論 第6回 プログラムの性能評価指針(Flop/Byte,計算律速,メモリ律速)
2015年度先端GPGPUシミュレーション工学特論 第6回 プログラムの性能評価指針 (Flop/Byte,計算律速,メモリ律速)
 
2015年度GPGPU実践プログラミング 第6回 パフォーマンス解析ツール
2015年度GPGPU実践プログラミング 第6回 パフォーマンス解析ツール2015年度GPGPU実践プログラミング 第6回 パフォーマンス解析ツール
2015年度GPGPU実践プログラミング 第6回 パフォーマンス解析ツール
 
2015年度GPGPU実践プログラミング 第2回 GPUのアーキテクチャとプログラム構造
2015年度GPGPU実践プログラミング 第2回 GPUのアーキテクチャとプログラム構造2015年度GPGPU実践プログラミング 第2回 GPUのアーキテクチャとプログラム構造
2015年度GPGPU実践プログラミング 第2回 GPUのアーキテクチャとプログラム構造
 
2015年度先端GPGPUシミュレーション工学特論 第4回 GPUのメモリ階層の詳細 (共有メモリ)
2015年度先端GPGPUシミュレーション工学特論 第4回 GPUのメモリ階層の詳細(共有メモリ)2015年度先端GPGPUシミュレーション工学特論 第4回 GPUのメモリ階層の詳細(共有メモリ)
2015年度先端GPGPUシミュレーション工学特論 第4回 GPUのメモリ階層の詳細 (共有メモリ)
 
2015年度GPGPU実践プログラミング 第11回 画像処理
2015年度GPGPU実践プログラミング 第11回 画像処理2015年度GPGPU実践プログラミング 第11回 画像処理
2015年度GPGPU実践プログラミング 第11回 画像処理
 
2015年度GPGPU実践基礎工学 第8回 並列計算の概念 (プロセスとスレッド)
2015年度GPGPU実践基礎工学 第8回 並列計算の概念(プロセスとスレッド)2015年度GPGPU実践基礎工学 第8回 並列計算の概念(プロセスとスレッド)
2015年度GPGPU実践基礎工学 第8回 並列計算の概念 (プロセスとスレッド)
 
2015年度GPGPU実践基礎工学 第13回 GPUのメモリ階層
2015年度GPGPU実践基礎工学 第13回 GPUのメモリ階層2015年度GPGPU実践基礎工学 第13回 GPUのメモリ階層
2015年度GPGPU実践基礎工学 第13回 GPUのメモリ階層
 
2015年度GPGPU実践基礎工学 第14回 GPGPU組込開発環境
2015年度GPGPU実践基礎工学 第14回 GPGPU組込開発環境2015年度GPGPU実践基礎工学 第14回 GPGPU組込開発環境
2015年度GPGPU実践基礎工学 第14回 GPGPU組込開発環境
 
2015年度GPGPU実践基礎工学 第15回 GPGPU開発環境 (OpenCL)
2015年度GPGPU実践基礎工学 第15回 GPGPU開発環境(OpenCL)2015年度GPGPU実践基礎工学 第15回 GPGPU開発環境(OpenCL)
2015年度GPGPU実践基礎工学 第15回 GPGPU開発環境 (OpenCL)
 
2015年度GPGPU実践基礎工学 第1回 学際的分野における先端シミュレーション技術の歴史
2015年度GPGPU実践基礎工学 第1回 学際的分野における先端シミュレーション技術の歴史2015年度GPGPU実践基礎工学 第1回 学際的分野における先端シミュレーション技術の歴史
2015年度GPGPU実践基礎工学 第1回 学際的分野における先端シミュレーション技術の歴史
 
2015年度GPGPU実践プログラミング 第5回 GPUのメモリ階層
2015年度GPGPU実践プログラミング 第5回 GPUのメモリ階層2015年度GPGPU実践プログラミング 第5回 GPUのメモリ階層
2015年度GPGPU実践プログラミング 第5回 GPUのメモリ階層
 
2015年度GPGPU実践基礎工学 第6回 ソフトウェアによるCPUの高速化技術
2015年度GPGPU実践基礎工学 第6回 ソフトウェアによるCPUの高速化技術2015年度GPGPU実践基礎工学 第6回 ソフトウェアによるCPUの高速化技術
2015年度GPGPU実践基礎工学 第6回 ソフトウェアによるCPUの高速化技術
 

En vedette

2015年度GPGPU実践プログラミング 第13回 多粒子の運動
2015年度GPGPU実践プログラミング 第13回 多粒子の運動2015年度GPGPU実践プログラミング 第13回 多粒子の運動
2015年度GPGPU実践プログラミング 第13回 多粒子の運動
智啓 出川
 
2015年度GPGPU実践プログラミング 第10回 行列計算(行列-行列積の高度な最適化)
2015年度GPGPU実践プログラミング 第10回 行列計算(行列-行列積の高度な最適化)2015年度GPGPU実践プログラミング 第10回 行列計算(行列-行列積の高度な最適化)
2015年度GPGPU実践プログラミング 第10回 行列計算(行列-行列積の高度な最適化)
智啓 出川
 
2015年度GPGPU実践プログラミング 第14回 N体問題
2015年度GPGPU実践プログラミング 第14回 N体問題2015年度GPGPU実践プログラミング 第14回 N体問題
2015年度GPGPU実践プログラミング 第14回 N体問題
智啓 出川
 
2015年度GPGPU実践プログラミング 第7回 総和計算
2015年度GPGPU実践プログラミング 第7回 総和計算2015年度GPGPU実践プログラミング 第7回 総和計算
2015年度GPGPU実践プログラミング 第7回 総和計算
智啓 出川
 
2015年度GPGPU実践プログラミング 第8回 総和計算(高度な最適化)
2015年度GPGPU実践プログラミング 第8回 総和計算(高度な最適化)2015年度GPGPU実践プログラミング 第8回 総和計算(高度な最適化)
2015年度GPGPU実践プログラミング 第8回 総和計算(高度な最適化)
智啓 出川
 
2015年度GPGPU実践プログラミング 第9回 行列計算(行列-行列積)
2015年度GPGPU実践プログラミング 第9回 行列計算(行列-行列積)2015年度GPGPU実践プログラミング 第9回 行列計算(行列-行列積)
2015年度GPGPU実践プログラミング 第9回 行列計算(行列-行列積)
智啓 出川
 
2015年度GPGPU実践プログラミング 第12回 偏微分方程式の差分計算
2015年度GPGPU実践プログラミング 第12回 偏微分方程式の差分計算2015年度GPGPU実践プログラミング 第12回 偏微分方程式の差分計算
2015年度GPGPU実践プログラミング 第12回 偏微分方程式の差分計算
智啓 出川
 
2015年度GPGPU実践基礎工学 第7回 シングルコアとマルチコア
2015年度GPGPU実践基礎工学 第7回 シングルコアとマルチコア2015年度GPGPU実践基礎工学 第7回 シングルコアとマルチコア
2015年度GPGPU実践基礎工学 第7回 シングルコアとマルチコア
智啓 出川
 

En vedette (9)

2015年度GPGPU実践プログラミング 第13回 多粒子の運動
2015年度GPGPU実践プログラミング 第13回 多粒子の運動2015年度GPGPU実践プログラミング 第13回 多粒子の運動
2015年度GPGPU実践プログラミング 第13回 多粒子の運動
 
2015年度GPGPU実践プログラミング 第10回 行列計算(行列-行列積の高度な最適化)
2015年度GPGPU実践プログラミング 第10回 行列計算(行列-行列積の高度な最適化)2015年度GPGPU実践プログラミング 第10回 行列計算(行列-行列積の高度な最適化)
2015年度GPGPU実践プログラミング 第10回 行列計算(行列-行列積の高度な最適化)
 
2015年度GPGPU実践プログラミング 第14回 N体問題
2015年度GPGPU実践プログラミング 第14回 N体問題2015年度GPGPU実践プログラミング 第14回 N体問題
2015年度GPGPU実践プログラミング 第14回 N体問題
 
2015年度GPGPU実践プログラミング 第7回 総和計算
2015年度GPGPU実践プログラミング 第7回 総和計算2015年度GPGPU実践プログラミング 第7回 総和計算
2015年度GPGPU実践プログラミング 第7回 総和計算
 
2015年度GPGPU実践プログラミング 第8回 総和計算(高度な最適化)
2015年度GPGPU実践プログラミング 第8回 総和計算(高度な最適化)2015年度GPGPU実践プログラミング 第8回 総和計算(高度な最適化)
2015年度GPGPU実践プログラミング 第8回 総和計算(高度な最適化)
 
2015年度GPGPU実践プログラミング 第9回 行列計算(行列-行列積)
2015年度GPGPU実践プログラミング 第9回 行列計算(行列-行列積)2015年度GPGPU実践プログラミング 第9回 行列計算(行列-行列積)
2015年度GPGPU実践プログラミング 第9回 行列計算(行列-行列積)
 
2015年度GPGPU実践プログラミング 第12回 偏微分方程式の差分計算
2015年度GPGPU実践プログラミング 第12回 偏微分方程式の差分計算2015年度GPGPU実践プログラミング 第12回 偏微分方程式の差分計算
2015年度GPGPU実践プログラミング 第12回 偏微分方程式の差分計算
 
2015年度GPGPU実践基礎工学 第9回補足 GROUSEの利用方法
2015年度GPGPU実践基礎工学 第9回補足 GROUSEの利用方法2015年度GPGPU実践基礎工学 第9回補足 GROUSEの利用方法
2015年度GPGPU実践基礎工学 第9回補足 GROUSEの利用方法
 
2015年度GPGPU実践基礎工学 第7回 シングルコアとマルチコア
2015年度GPGPU実践基礎工学 第7回 シングルコアとマルチコア2015年度GPGPU実践基礎工学 第7回 シングルコアとマルチコア
2015年度GPGPU実践基礎工学 第7回 シングルコアとマルチコア
 

Similaire à 2015年度GPGPU実践プログラミング 第3回 GPGPUプログラミング環境

PyOpenCLによるGPGPU入門
PyOpenCLによるGPGPU入門PyOpenCLによるGPGPU入門
PyOpenCLによるGPGPU入門
Yosuke Onoue
 
GPGPU Seminar (GPU Accelerated Libraries, 3 of 3, Thrust)
GPGPU Seminar (GPU Accelerated Libraries, 3 of 3, Thrust) GPGPU Seminar (GPU Accelerated Libraries, 3 of 3, Thrust)
GPGPU Seminar (GPU Accelerated Libraries, 3 of 3, Thrust)
智啓 出川
 
GPGPU Seminar (GPU Accelerated Libraries, 2 of 3, cuSPARSE)
GPGPU Seminar (GPU Accelerated Libraries, 2 of 3, cuSPARSE) GPGPU Seminar (GPU Accelerated Libraries, 2 of 3, cuSPARSE)
GPGPU Seminar (GPU Accelerated Libraries, 2 of 3, cuSPARSE)
智啓 出川
 

Similaire à 2015年度GPGPU実践プログラミング 第3回 GPGPUプログラミング環境 (20)

OpenCLに触れてみよう
OpenCLに触れてみようOpenCLに触れてみよう
OpenCLに触れてみよう
 
Anaconda & NumbaPro 使ってみた
Anaconda & NumbaPro 使ってみたAnaconda & NumbaPro 使ってみた
Anaconda & NumbaPro 使ってみた
 
PyOpenCLによるGPGPU入門
PyOpenCLによるGPGPU入門PyOpenCLによるGPGPU入門
PyOpenCLによるGPGPU入門
 
Singularity Containers for Enterprise Use
Singularity Containers for Enterprise UseSingularity Containers for Enterprise Use
Singularity Containers for Enterprise Use
 
GPU-FPGA協調プログラミングを実現するコンパイラの開発
GPU-FPGA協調プログラミングを実現するコンパイラの開発GPU-FPGA協調プログラミングを実現するコンパイラの開発
GPU-FPGA協調プログラミングを実現するコンパイラの開発
 
[GTCJ2018]CuPy -NumPy互換GPUライブラリによるPythonでの高速計算- PFN奥田遼介
[GTCJ2018]CuPy -NumPy互換GPUライブラリによるPythonでの高速計算- PFN奥田遼介[GTCJ2018]CuPy -NumPy互換GPUライブラリによるPythonでの高速計算- PFN奥田遼介
[GTCJ2018]CuPy -NumPy互換GPUライブラリによるPythonでの高速計算- PFN奥田遼介
 
pkgsrc とは何か? - よもやま話
pkgsrc とは何か? - よもやま話pkgsrc とは何か? - よもやま話
pkgsrc とは何か? - よもやま話
 
GPU-FPGA 協調計算を記述するためのプログラミング環境に関する研究(HPC169 No.10)
GPU-FPGA 協調計算を記述するためのプログラミング環境に関する研究(HPC169 No.10)GPU-FPGA 協調計算を記述するためのプログラミング環境に関する研究(HPC169 No.10)
GPU-FPGA 協調計算を記述するためのプログラミング環境に関する研究(HPC169 No.10)
 
C++ AMPを使ってみよう
C++ AMPを使ってみようC++ AMPを使ってみよう
C++ AMPを使ってみよう
 
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
 
EnrootとPyxisで快適コンテナ生活
EnrootとPyxisで快適コンテナ生活EnrootとPyxisで快適コンテナ生活
EnrootとPyxisで快適コンテナ生活
 
機械学習プロジェクトにおける Cloud AI Platform の使い方 (2018-11-19)
機械学習プロジェクトにおける Cloud AI Platform の使い方 (2018-11-19)機械学習プロジェクトにおける Cloud AI Platform の使い方 (2018-11-19)
機械学習プロジェクトにおける Cloud AI Platform の使い方 (2018-11-19)
 
研究生のためのC++ no.7
研究生のためのC++ no.7研究生のためのC++ no.7
研究生のためのC++ no.7
 
GPGPU Seminar (GPU Accelerated Libraries, 3 of 3, Thrust)
GPGPU Seminar (GPU Accelerated Libraries, 3 of 3, Thrust) GPGPU Seminar (GPU Accelerated Libraries, 3 of 3, Thrust)
GPGPU Seminar (GPU Accelerated Libraries, 3 of 3, Thrust)
 
GTC Japan 2017
GTC Japan 2017GTC Japan 2017
GTC Japan 2017
 
PEZY-SC programming overview
PEZY-SC programming overviewPEZY-SC programming overview
PEZY-SC programming overview
 
ディープラーニングイメージで構築する快適・高速な機械学習環境
ディープラーニングイメージで構築する快適・高速な機械学習環境ディープラーニングイメージで構築する快適・高速な機械学習環境
ディープラーニングイメージで構築する快適・高速な機械学習環境
 
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正前 typoあり)」
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正前 typoあり)」「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正前 typoあり)」
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正前 typoあり)」
 
Windows HPC Server 講習会 第2回 開発編
Windows HPC Server 講習会 第2回 開発編Windows HPC Server 講習会 第2回 開発編
Windows HPC Server 講習会 第2回 開発編
 
GPGPU Seminar (GPU Accelerated Libraries, 2 of 3, cuSPARSE)
GPGPU Seminar (GPU Accelerated Libraries, 2 of 3, cuSPARSE) GPGPU Seminar (GPU Accelerated Libraries, 2 of 3, cuSPARSE)
GPGPU Seminar (GPU Accelerated Libraries, 2 of 3, cuSPARSE)
 

Plus de 智啓 出川

GPGPU Seminar (GPU Accelerated Libraries, 1 of 3, cuBLAS)
GPGPU Seminar (GPU Accelerated Libraries, 1 of 3, cuBLAS) GPGPU Seminar (GPU Accelerated Libraries, 1 of 3, cuBLAS)
GPGPU Seminar (GPU Accelerated Libraries, 1 of 3, cuBLAS)
智啓 出川
 
GPGPU Seminar (GPGPU and CUDA Fortran)
GPGPU Seminar (GPGPU and CUDA Fortran)GPGPU Seminar (GPGPU and CUDA Fortran)
GPGPU Seminar (GPGPU and CUDA Fortran)
智啓 出川
 
GPGPU Seminar (PyCUDA)
GPGPU Seminar (PyCUDA)GPGPU Seminar (PyCUDA)
GPGPU Seminar (PyCUDA)
智啓 出川
 
2015年度先端GPGPUシミュレーション工学特論 第15回 CPUとGPUの協調
2015年度先端GPGPUシミュレーション工学特論 第15回 CPUとGPUの協調2015年度先端GPGPUシミュレーション工学特論 第15回 CPUとGPUの協調
2015年度先端GPGPUシミュレーション工学特論 第15回 CPUとGPUの協調
智啓 出川
 
2015年度先端GPGPUシミュレーション工学特論 第13回 数値流体力学への応用 (高度な最適化)
2015年度先端GPGPUシミュレーション工学特論 第13回 数値流体力学への応用(高度な最適化)2015年度先端GPGPUシミュレーション工学特論 第13回 数値流体力学への応用(高度な最適化)
2015年度先端GPGPUシミュレーション工学特論 第13回 数値流体力学への応用 (高度な最適化)
智啓 出川
 
2015年度先端GPGPUシミュレーション工学特論 第11回 数値流体力学への応用 (支配方程式,CPUプログラム)
2015年度先端GPGPUシミュレーション工学特論 第11回 数値流体力学への応用(支配方程式,CPUプログラム)2015年度先端GPGPUシミュレーション工学特論 第11回 数値流体力学への応用(支配方程式,CPUプログラム)
2015年度先端GPGPUシミュレーション工学特論 第11回 数値流体力学への応用 (支配方程式,CPUプログラム)
智啓 出川
 
2015年度先端GPGPUシミュレーション工学特論 第10回 Poisson方程式の求解 (線形連立一次方程式)
2015年度先端GPGPUシミュレーション工学特論 第10回 Poisson方程式の求解(線形連立一次方程式)2015年度先端GPGPUシミュレーション工学特論 第10回 Poisson方程式の求解(線形連立一次方程式)
2015年度先端GPGPUシミュレーション工学特論 第10回 Poisson方程式の求解 (線形連立一次方程式)
智啓 出川
 
2015年度先端GPGPUシミュレーション工学特論 第9回 偏微分方程式の差分計算 (移流方程式)
2015年度先端GPGPUシミュレーション工学特論 第9回 偏微分方程式の差分計算(移流方程式)2015年度先端GPGPUシミュレーション工学特論 第9回 偏微分方程式の差分計算(移流方程式)
2015年度先端GPGPUシミュレーション工学特論 第9回 偏微分方程式の差分計算 (移流方程式)
智啓 出川
 
2015年度先端GPGPUシミュレーション工学特論 第8回 偏微分方程式の差分計算 (拡散方程式)
2015年度先端GPGPUシミュレーション工学特論 第8回 偏微分方程式の差分計算(拡散方程式)2015年度先端GPGPUシミュレーション工学特論 第8回 偏微分方程式の差分計算(拡散方程式)
2015年度先端GPGPUシミュレーション工学特論 第8回 偏微分方程式の差分計算 (拡散方程式)
智啓 出川
 
2015年度先端GPGPUシミュレーション工学特論 第7回 総和計算(Atomic演算)
2015年度先端GPGPUシミュレーション工学特論 第7回 総和計算(Atomic演算)2015年度先端GPGPUシミュレーション工学特論 第7回 総和計算(Atomic演算)
2015年度先端GPGPUシミュレーション工学特論 第7回 総和計算(Atomic演算)
智啓 出川
 

Plus de 智啓 出川 (20)

Fortranが拓く世界、VSCodeが架ける橋
Fortranが拓く世界、VSCodeが架ける橋Fortranが拓く世界、VSCodeが架ける橋
Fortranが拓く世界、VSCodeが架ける橋
 
Very helpful python code to find coefficients of the finite difference method
Very helpful python code to find coefficients of the finite difference methodVery helpful python code to find coefficients of the finite difference method
Very helpful python code to find coefficients of the finite difference method
 
Why do we confuse String and Array of Characters in Fortran?
Why do we confuse String and Array of Characters in Fortran?Why do we confuse String and Array of Characters in Fortran?
Why do we confuse String and Array of Characters in Fortran?
 
Pythonによる累乗近似
Pythonによる累乗近似Pythonによる累乗近似
Pythonによる累乗近似
 
数値計算結果のPythonによる後処理について(1次元データのピーク値およびその位置の推定)
数値計算結果のPythonによる後処理について(1次元データのピーク値およびその位置の推定)数値計算結果のPythonによる後処理について(1次元データのピーク値およびその位置の推定)
数値計算結果のPythonによる後処理について(1次元データのピーク値およびその位置の推定)
 
オブジェクト指向Fortranが拓く(はずだった)新しい世界
オブジェクト指向Fortranが拓く(はずだった)新しい世界オブジェクト指向Fortranが拓く(はずだった)新しい世界
オブジェクト指向Fortranが拓く(はずだった)新しい世界
 
Schematic diagrams of GPUs' architecture and Time evolution of theoretical FL...
Schematic diagrams of GPUs' architecture and Time evolution of theoretical FL...Schematic diagrams of GPUs' architecture and Time evolution of theoretical FL...
Schematic diagrams of GPUs' architecture and Time evolution of theoretical FL...
 
GPGPU Seminar (GPU Accelerated Libraries, 1 of 3, cuBLAS)
GPGPU Seminar (GPU Accelerated Libraries, 1 of 3, cuBLAS) GPGPU Seminar (GPU Accelerated Libraries, 1 of 3, cuBLAS)
GPGPU Seminar (GPU Accelerated Libraries, 1 of 3, cuBLAS)
 
Cuda fortranの利便性を高めるfortran言語の機能
Cuda fortranの利便性を高めるfortran言語の機能Cuda fortranの利便性を高めるfortran言語の機能
Cuda fortranの利便性を高めるfortran言語の機能
 
PGI CUDA FortranとGPU最適化ライブラリの一連携法
PGI CUDA FortranとGPU最適化ライブラリの一連携法PGI CUDA FortranとGPU最適化ライブラリの一連携法
PGI CUDA FortranとGPU最適化ライブラリの一連携法
 
教育機関でのJetsonの活用の可能性
教育機関でのJetsonの活用の可能性教育機関でのJetsonの活用の可能性
教育機関でのJetsonの活用の可能性
 
GPGPU Seminar (GPGPU and CUDA Fortran)
GPGPU Seminar (GPGPU and CUDA Fortran)GPGPU Seminar (GPGPU and CUDA Fortran)
GPGPU Seminar (GPGPU and CUDA Fortran)
 
GPGPU Seminar (PyCUDA)
GPGPU Seminar (PyCUDA)GPGPU Seminar (PyCUDA)
GPGPU Seminar (PyCUDA)
 
2015年度先端GPGPUシミュレーション工学特論 第15回 CPUとGPUの協調
2015年度先端GPGPUシミュレーション工学特論 第15回 CPUとGPUの協調2015年度先端GPGPUシミュレーション工学特論 第15回 CPUとGPUの協調
2015年度先端GPGPUシミュレーション工学特論 第15回 CPUとGPUの協調
 
2015年度先端GPGPUシミュレーション工学特論 第13回 数値流体力学への応用 (高度な最適化)
2015年度先端GPGPUシミュレーション工学特論 第13回 数値流体力学への応用(高度な最適化)2015年度先端GPGPUシミュレーション工学特論 第13回 数値流体力学への応用(高度な最適化)
2015年度先端GPGPUシミュレーション工学特論 第13回 数値流体力学への応用 (高度な最適化)
 
2015年度先端GPGPUシミュレーション工学特論 第11回 数値流体力学への応用 (支配方程式,CPUプログラム)
2015年度先端GPGPUシミュレーション工学特論 第11回 数値流体力学への応用(支配方程式,CPUプログラム)2015年度先端GPGPUシミュレーション工学特論 第11回 数値流体力学への応用(支配方程式,CPUプログラム)
2015年度先端GPGPUシミュレーション工学特論 第11回 数値流体力学への応用 (支配方程式,CPUプログラム)
 
2015年度先端GPGPUシミュレーション工学特論 第10回 Poisson方程式の求解 (線形連立一次方程式)
2015年度先端GPGPUシミュレーション工学特論 第10回 Poisson方程式の求解(線形連立一次方程式)2015年度先端GPGPUシミュレーション工学特論 第10回 Poisson方程式の求解(線形連立一次方程式)
2015年度先端GPGPUシミュレーション工学特論 第10回 Poisson方程式の求解 (線形連立一次方程式)
 
2015年度先端GPGPUシミュレーション工学特論 第9回 偏微分方程式の差分計算 (移流方程式)
2015年度先端GPGPUシミュレーション工学特論 第9回 偏微分方程式の差分計算(移流方程式)2015年度先端GPGPUシミュレーション工学特論 第9回 偏微分方程式の差分計算(移流方程式)
2015年度先端GPGPUシミュレーション工学特論 第9回 偏微分方程式の差分計算 (移流方程式)
 
2015年度先端GPGPUシミュレーション工学特論 第8回 偏微分方程式の差分計算 (拡散方程式)
2015年度先端GPGPUシミュレーション工学特論 第8回 偏微分方程式の差分計算(拡散方程式)2015年度先端GPGPUシミュレーション工学特論 第8回 偏微分方程式の差分計算(拡散方程式)
2015年度先端GPGPUシミュレーション工学特論 第8回 偏微分方程式の差分計算 (拡散方程式)
 
2015年度先端GPGPUシミュレーション工学特論 第7回 総和計算(Atomic演算)
2015年度先端GPGPUシミュレーション工学特論 第7回 総和計算(Atomic演算)2015年度先端GPGPUシミュレーション工学特論 第7回 総和計算(Atomic演算)
2015年度先端GPGPUシミュレーション工学特論 第7回 総和計算(Atomic演算)
 

2015年度GPGPU実践プログラミング 第3回 GPGPUプログラミング環境