前回ホストコードをC++で書いたが、CのAPIを使っていたためC++らしさはあまり表現出来ていなかった。
あれから、OpenCL APIのC++ Wrapper(OpenCL C++ Bindings)というものの存在を知ったので、それを使って前回のホストコードをさらにC++っぽく書き換えてみた。
ソース(ホストコードのみ)はこの記事の最後に載せてある。
続きを読む
前回ホストコードをC++で書いたが、CのAPIを使っていたためC++らしさはあまり表現出来ていなかった。
あれから、OpenCL APIのC++ Wrapper(OpenCL C++ Bindings)というものの存在を知ったので、それを使って前回のホストコードをさらにC++っぽく書き換えてみた。
ソース(ホストコードのみ)はこの記事の最後に載せてある。
続きを読む
以前書いたCUDAの記事のOpenCL版。
こちらも、いちばん簡単なんてタイトル付けてるけど実は他のやり方をあまり調べてないというか、OpenCLはじめて数時間の初心者なので、もっといい方法があれば教えてください。
続きを読む
MacでCUDAを使ってきたけど、GPUが古めのGeforce 9400Mだから新しいGPUドライバが配布されていない。(Appleがんばれ)
CUDAドライバは最新のものを入れてるけどGPUドライバが古いからCUDAで微妙な不具合が出てたんだと思う。
続きを読む
Shadow caster mapのときに、やっぱガチのGPUレイトレじゃないとだめかも。って書いたのでとりあえず試しにCUDAでレイとシーンのポリゴンとの交差判定をするコードを書いてみた。
(メインの部分だけだけどカーネルのコードを最後の方に載せる。)
続きを読む
今までほとんど確認用のレンダリングのためだけにしか使ってなかったので、OpenGL 2.1(GLSL 1.20)のままでやってきたけど、GPGPU的に使うようになったのでOpenGL 3.2で実行するように変更した。
やっぱ少しでも柔軟性は高いほうがいいだろうし、今のところ全くアイデアはないけどジオメトリシェーダでなにか出来るかもしれないし。
続きを読む
とりあえず実装した。
上が影なし、下が影あり。
(最初にこの記事をアップしたとき、影の計算を微妙に間違ってる部分があったので修正して画像もアップしなおした。)
今までtime.hのclock関数で処理時間を計測してたので、CPU時間を計測してたことになる。(Macなので。)
GPUを汎用計算に使うようになり、CPU時間の計測じゃまずいんじゃないかと思ったので、今回からtime関数による実時間の計測に切り替えた。
1秒単位でしか測れない点と、CPU時間は実時間より短めになってた点に注意が必要。
続きを読む
最近のコメント
名前
しゅごい
Jane Doe
FYI Avoid Annoying Unexpe…
Jane Doe
ご存じとは思いますが、whileには、”~の間”と…
peta_okechan
針金みたいなパーツを引っ張ると外れます。 他の方の…
虎徹ファン交換
虎徹の標準ファンを外す際に、どのようにして外されま…
花粉症対策2019 – 日曜研究室
[…] 花粉症対策についてはこれまで次の記事を書いてきました。https://…
花粉症対策2019 – 日曜研究室
[…] 花粉症対策についてはこれまで次の記事を書いてきました。https://…
花粉症対策2019 – 日曜研究室
[…] 花粉症対策についてはこれまで次の記事を書いてきました。https://…
花粉症対策2019 – 日曜研究室
[…] 花粉症対策についてはこれまで次の記事を書いてきました。https://…
花粉症対策2019 – 日曜研究室
[…] 花粉症対策についてはこれまで次の記事を書いてきました。https://…