アーカイブ

2013年5月

cu.hppが一応Windowsでも使えた

この前公開したcu.hppをWindowsでも試してみたら使えた。
といっても確認したコンパイラはVC++ではなくてclang++。

続きを読む

nvccでアーキテクチャの設定は出来るだけ下げた方が速い?

自分とこのGTX 460(Ubuntu)でしか確認してないので全然確信は持てないんだけど、カーネルのコンパイルを

続きを読む

tex1D と tex1Dfetch の使い分け

私が思うCUDAの微妙な点の一つとして、tex1D と tex1Dfetchという2つのテクセルフェッチ関数の存在がある。

続きを読む

CUDAでatomicAddを減らして高速化

この記事には誤りがあります。それについて最後のほうに追記があります。

続きを読む

CUDAにおけるテクスチャリファレンスとテクスチャオブジェクトの違い

どちらもGPUのテクスチャフェッチ機能を利用してデータにアクセスするためのもので、概念的には同じものと言える。
しかし詳細に踏み込むとかなり違いがある。
(以下はDriver APIの利用を想定したものだけど、Runtime APIでも大部分はそのまま当てはまると思う。)

続きを読む

CUDAにおける線形メモリ(linear memory)とArray(CUarray)の違い

この記事は普段にも増して思い込みで書いてる度合いが高めなので注意が必要です。間違いがあれば指摘していただけるとありがたいです。

続きを読む

CUDA Driver APIのC++ラッパーを作った

OpenCLのC++ラッパーであるcl.cppの便利さに感銘を受けたので、CUDA Driver API向けにC++ラッパーを作った。

続きを読む

clCreateImageがCL_INVALID_VALUEを返す問題の回避方法

Mac(OSX 10.8.3、GPU Geforce 9400M)のclCreateImageがおかしいという記事を書いたが、さすがにclCreateImage程度の基本的な関数がまともに動かないってのはおかしいと思ったので少し詳しく調べてたら回避方法みたいなものが分かった。

続きを読む