さてついにOpenCLの仕様が公開されました。
http://www.khronos.org/opencl/
公式ページにはAPIのヘッダファイルが公開されており、
まだ実際に動かす事はできないもののプログラミングすることは可能となっています。
ということで、公開に先んじてプログラミングを始めてしまいましょう。
探検
OpenCLプログラミング#1
■ このスレッドは過去ログ倉庫に格納されています
1a36 ◆K0BqlCB3.k
2008/12/10(水) 15:38:25590デフォルトの名無しさん
2012/04/13(金) 03:29:06.78591デフォルトの名無しさん
2012/04/29(日) 15:57:09.88 Intel OpenCL SDKを使って開発をしようとしているのですが、CPUとGPUを非同期で
走らせる方法が分かりません。
サンプルなどないでしょうか?
走らせる方法が分かりません。
サンプルなどないでしょうか?
592デフォルトの名無しさん
2012/04/29(日) 20:57:55.38 >>587
必ずしもそうでもない。もちろん限られたケースだが、空間ごとに時間刻みを変えたい場合とか、ツリー方とかだと複雑になりすぎてまだまだ難しい場合も多い。
そもそも、ツリーやFMMでも近傍場の計算は直接法だし、サンプルコードとして無意味ではない。
必ずしもそうでもない。もちろん限られたケースだが、空間ごとに時間刻みを変えたい場合とか、ツリー方とかだと複雑になりすぎてまだまだ難しい場合も多い。
そもそも、ツリーやFMMでも近傍場の計算は直接法だし、サンプルコードとして無意味ではない。
593デフォルトの名無しさん
2012/05/02(水) 10:33:58.88594デフォルトの名無しさん
2012/06/27(水) 01:05:42.85 質問なんだけど今はAMD/nVidia/IntelどのSDKでビルドしても
AMD/nVidiaのドライバが入っている環境ならGPUが利用できるって理解でok?
AMD/nVidiaのドライバが入っている環境ならGPUが利用できるって理解でok?
595デフォルトの名無しさん
2012/06/27(水) 21:29:31.15 >>594
違うというか、根本的に違う
違うというか、根本的に違う
596デフォルトの名無しさん
2012/06/30(土) 22:46:38.04597デフォルトの名無しさん
2012/07/01(日) 01:24:59.44598デフォルトの名無しさん
2012/07/01(日) 12:56:18.02599デフォルトの名無しさん
2012/07/05(木) 01:16:06.38 GT440でclinfoしたら
Max compute units: 2
と出たんだけど、この2とGT440のCUDAコア96とはどういう関係にあるの?
Max compute units: 2
と出たんだけど、この2とGT440のCUDAコア96とはどういう関係にあるの?
600デフォルトの名無しさん
2012/07/05(木) 12:03:19.25 NVIDIAの場合
Max Compute unit = Streaming Multiprocessor(SM) = Streaming Multiprocessor eXtreme(SMX)
Max Compute unit = Streaming Multiprocessor(SM) = Streaming Multiprocessor eXtreme(SMX)
601デフォルトの名無しさん
2012/07/27(金) 10:28:17.75 CPUデバイスのランタイムを有効にするにはAMDかインテルのSDKをインストールしてもらうしかないの?
ランタイムだけのパッケージってある?
ランタイムだけのパッケージってある?
602デフォルトの名無しさん
2012/07/27(金) 11:10:16.02603デフォルトの名無しさん
2012/07/28(土) 14:23:52.35 http://software.intel.com/en-us/articles/vcsource-tools-opencl-sdk/
のダウンロードリストボックスのOpenCL CPU only runtime(Windows* OS)ってやつか。
見落としてた。ありがとう。
のダウンロードリストボックスのOpenCL CPU only runtime(Windows* OS)ってやつか。
見落としてた。ありがとう。
604デフォルトの名無しさん
2012/07/30(月) 20:27:19.07 CPUでCLやっても遅いだけで意味無いなぁ
605デフォルトの名無しさん
2012/07/30(月) 22:03:29.12606デフォルトの名無しさん
2012/07/30(月) 22:41:12.50 CPUでOpenCL使うとお手軽にSIMD+マルチコア使えるな。
607デフォルトの名無しさん
2012/07/30(月) 22:48:37.20 ベンチも取らずに知ったか
608デフォルトの名無しさん
2012/07/31(火) 00:12:55.35 ベンチと言えば Intel と AMD で比べてみたら、Intel のほうがかなり速かった。
いやまあ、その PC の CPU は Intel だったんだけど。w
AMD な CPU だと逆転したりするのかなぁ。
いやまあ、その PC の CPU は Intel だったんだけど。w
AMD な CPU だと逆転したりするのかなぁ。
609デフォルトの名無しさん
2012/07/31(火) 07:48:58.72610デフォルトの名無しさん
2012/07/31(火) 10:50:46.32 phoronixのベンチ見る限りだとAMDのSDKの方が速そうだったけど
611デフォルトの名無しさん
2012/07/31(火) 18:30:47.41 少なくともカーネル部分はお手軽だよ。
素のCで使うと準備が面倒だが
C++のラッパーなら大した事は無い。
素のCで使うと準備が面倒だが
C++のラッパーなら大した事は無い。
612デフォルトの名無しさん
2012/07/31(火) 22:46:48.26 OpenCL以外でSIMDに自動で対応してくれるのってなにかあるの?
613デフォルトの名無しさん
2012/08/01(水) 06:14:34.83 インテルコンパイラ使っとけ。
それかFortranだな。
それかFortranだな。
614デフォルトの名無しさん
2012/08/01(水) 13:12:30.64 simdと言っているのがSSEのパックドなインストラクションのことでいいならgccでもOK。
615デフォルトの名無しさん
2012/08/01(水) 22:34:10.47 gccじゃ自動ベクトル化は皆無に等しいだろ。
616デフォルトの名無しさん
2012/08/01(水) 22:54:07.37 ちょっと前までSSEwとか思ってたけど
これだけ並列プログラミングが普及してきてAVX2とかみると考え変わる
これだけ並列プログラミングが普及してきてAVX2とかみると考え変わる
617デフォルトの名無しさん
2012/08/01(水) 23:22:54.44618デフォルトの名無しさん
2012/08/02(木) 00:32:11.20 >>617
なんか解釈に誤解があるようだが。
マルチコアのどんなプログラムでもOpenCLで書けという話ではない。
OpenCLのカーネルとして記述できるような問題に
適用すれば、なんも考えずにSIMDもマルチコアも
使えるようになるし、そういう用途に限れば
OpenMPやMPIもしくはPOSIX threadとかで
真面目に書くよりお手軽だし、余程の玄人が
書くのでない限り素早く、速いコードが書ける。
CL用のメモリ云々言っておきながら、速度面で
マルチスレッドなOpenMPでなくマルチプロセスになる
MPIをすすめるあたり根本的に理解に問題があるような。
まあ、通信部分はintel MPIとかなら共有メモリ使うから
極端に不利にはならないけど、少なくともこれが最速とは行かない。
なんか解釈に誤解があるようだが。
マルチコアのどんなプログラムでもOpenCLで書けという話ではない。
OpenCLのカーネルとして記述できるような問題に
適用すれば、なんも考えずにSIMDもマルチコアも
使えるようになるし、そういう用途に限れば
OpenMPやMPIもしくはPOSIX threadとかで
真面目に書くよりお手軽だし、余程の玄人が
書くのでない限り素早く、速いコードが書ける。
CL用のメモリ云々言っておきながら、速度面で
マルチスレッドなOpenMPでなくマルチプロセスになる
MPIをすすめるあたり根本的に理解に問題があるような。
まあ、通信部分はintel MPIとかなら共有メモリ使うから
極端に不利にはならないけど、少なくともこれが最速とは行かない。
619デフォルトの名無しさん
2012/08/02(木) 00:45:08.79 てかさ、CL 用のメモリとのやりとりなんかしないよね?
いや、しないようにつくるよね????
>CPUでSIMDとマルチコアを使いたいためだけにOpenCLを使つかうならアホだわ。
うわ、アホって言われちゃった。てへ。
いや、しないようにつくるよね????
>CPUでSIMDとマルチコアを使いたいためだけにOpenCLを使つかうならアホだわ。
うわ、アホって言われちゃった。てへ。
620デフォルトの名無しさん
2012/08/02(木) 01:31:56.84 OpenCLとMPIの並列化は全く別もんだし、
OpenCLとOpenMPの並列化もちょっと違う。
正直OpenCLのカーネルを書くくらいなら、
OpenMPを使った並列化の方が圧倒的に楽だわ。
OpenCLを使うメリットは複数のプラットフォームで動かすためだけだろ。
OpenCLとOpenMPの並列化もちょっと違う。
正直OpenCLのカーネルを書くくらいなら、
OpenMPを使った並列化の方が圧倒的に楽だわ。
OpenCLを使うメリットは複数のプラットフォームで動かすためだけだろ。
621デフォルトの名無しさん
2012/08/02(木) 06:37:43.98 無脳をさらすスレですか?
622デフォルトの名無しさん
2012/08/02(木) 07:45:55.61623デフォルトの名無しさん
2012/08/02(木) 08:05:46.59624デフォルトの名無しさん
2012/08/02(木) 08:07:44.71 >>623
GPUがあればそっちをつかいたいのならCLを書くこと自体が手間とか言ってる場合じゃないだろ。
それ一本で済まそうというのが手抜きだっての。
CPUでCLつかっても無駄なオーバーヘッドが出るだけだし
GPUがあればそっちをつかいたいのならCLを書くこと自体が手間とか言ってる場合じゃないだろ。
それ一本で済まそうというのが手抜きだっての。
CPUでCLつかっても無駄なオーバーヘッドが出るだけだし
625デフォルトの名無しさん
2012/08/02(木) 08:13:47.37 論理的に別なのはわかるけど
対象がCPUの時にはメモリコピーしないような実装になっててもおかしくないような気もする
対象がCPUの時にはメモリコピーしないような実装になっててもおかしくないような気もする
626デフォルトの名無しさん
2012/08/02(木) 08:14:10.39 まあ、小さい規模のコードしか書いてない奴には分からんかもしれんが、
複数のハードウェアプラットフォームをそれぞれメンテしないといけなのは、
かなりの工数がかかるからな。
多少のパフォーマンスを犠牲にしても良いことなんて沢山あるんだよ。
複数のハードウェアプラットフォームをそれぞれメンテしないといけなのは、
かなりの工数がかかるからな。
多少のパフォーマンスを犠牲にしても良いことなんて沢山あるんだよ。
627デフォルトの名無しさん
2012/08/02(木) 09:23:17.69 えぇ〜・・・・・・。
キミタチは実際につかったことないんだね?
ttp://software.intel.com/sites/landingpage/opencl/optimization-guide/index.htm
の Sharing Resources Efficiently とか読んでごらんよ。
キミタチは実際につかったことないんだね?
ttp://software.intel.com/sites/landingpage/opencl/optimization-guide/index.htm
の Sharing Resources Efficiently とか読んでごらんよ。
628デフォルトの名無しさん
2012/08/02(木) 23:04:54.27 これは恥ずかしいw
629デフォルトの名無しさん
2012/08/03(金) 00:10:12.73 どれにレスしてんだか分からんレスがおおいな。
630デフォルトの名無しさん
2012/08/03(金) 00:34:42.14 このスレ、99割が誤爆レスだからな。
631デフォルトの名無しさん
2012/08/03(金) 19:43:05.27632デフォルトの名無しさん
2012/08/04(土) 01:06:20.28 だ ー か ー ら ー ぁ 誤 爆 で し ょ
633デフォルトの名無しさん
2012/08/08(水) 17:52:37.24 なんでこのスレこの板にあるんだ?
634デフォルトの名無しさん
2012/08/09(木) 01:30:40.64 OpenCLハードル高いなぁ
どの機材構成でどのプラットフォームでどう書けば速くなるか
検証すべき項目が多すぎる
どの機材構成でどのプラットフォームでどう書けば速くなるか
検証すべき項目が多すぎる
635デフォルトの名無しさん
2012/08/09(木) 02:10:21.89 逆に考えるんだ
速さをあきらめればすべて解決する
速さをあきらめればすべて解決する
636デフォルトの名無しさん
2012/08/09(木) 02:22:49.56 あちらを立てればこちらが立たずですなぁ
637デフォルトの名無しさん
2012/08/10(金) 17:37:54.94 週あすwでAPUの記事載ってて、OpenCLで何でも高速に出来るように書いてたなぁw
638デフォルトの名無しさん
2012/08/10(金) 23:05:10.52 write once, tune everywhere
639デフォルトの名無しさん
2012/08/10(金) 23:06:13.71 anywhereだったか
640デフォルトの名無しさん
2012/08/16(木) 08:59:47.91 OpenCL1.2ではデバイス分割ができるみたいだけど
それまでってどうやって並列化してたの?
コマンドキューをCompute Unit分生成してたの?
それともclEnqueueNDRangeKernelがいい感じに並列化してくれてたの?
それまでってどうやって並列化してたの?
コマンドキューをCompute Unit分生成してたの?
それともclEnqueueNDRangeKernelがいい感じに並列化してくれてたの?
641デフォルトの名無しさん
2012/08/17(金) 04:01:39.09 でっかく突っ込んだら普通にデスクトップがフリーズしてた。
642デフォルトの名無しさん
2012/08/21(火) 22:38:27.42 OpenCLで最速の構成教えて
643デフォルトの名無しさん
2012/08/22(水) 00:38:21.46 素晴らしいプログラマ
これに尽きるw
これに尽きるw
644デフォルトの名無しさん
2012/08/22(水) 09:45:30.14 >>642
Radeon の一番高いヤツをさせるだけさす。w
Radeon の一番高いヤツをさせるだけさす。w
645デフォルトの名無しさん
2012/08/31(金) 15:37:24.77 APUより速いん?
646デフォルトの名無しさん
2012/09/06(木) 03:18:56.29 だれかOpenCLでOpenGL実装してくれ
647デフォルトの名無しさん
2012/09/08(土) 00:09:32.81 むしろOpenManko実装してくれ
648デフォルトの名無しさん
2012/09/08(土) 01:20:37.10 プロプライエタリですので
649デフォルトの名無しさん
2012/09/08(土) 18:07:21.58 OpenMankoはよ
650デフォルトの名無しさん
2012/09/08(土) 22:36:50.84 互換フリー0実装のKuperで我慢しとけ。
651デフォルトの名無しさん
2012/09/09(日) 23:25:50.57 Mankoは商用製品で我慢しろよ
652デフォルトの名無しさん
2012/09/20(木) 15:05:43.24 昔の日本はOpenだろ
653デフォルトの名無しさん
2012/09/27(木) 04:12:39.50 AMD Releases CodeXL Public Beta | SemiAccurate
http://semiaccurate.com/2012/09/25/amd-releases-codexl-public-beta/
http://semiaccurate.com/2012/09/25/amd-releases-codexl-public-beta/
654デフォルトの名無しさん
2012/10/05(金) 01:09:53.66655デフォルトの名無しさん
2012/10/05(金) 01:15:43.73656デフォルトの名無しさん
2012/10/05(金) 01:16:52.94657デフォルトの名無しさん
2012/10/28(日) 20:13:53.12 意外と
658デフォルトの名無しさん
2012/11/30(金) 23:33:09.24 Khronos Releases Significant OpenCL 1.2 Specification Update | techPowerUp
http://www.techpowerup.com/176413/Khronos-Releases-Significant-OpenCL-1.2-Specification-Update.html
http://www.techpowerup.com/176413/Khronos-Releases-Significant-OpenCL-1.2-Specification-Update.html
659デフォルトの名無しさん
2012/12/07(金) 11:27:13.90660デフォルトの名無しさん
2012/12/20(木) 01:25:19.05661デフォルトの名無しさん
2012/12/21(金) 09:03:58.99 最近OpenCLを本格的に始めたんだが、
OpenCLのいいところは、コンパイラを選ばない、
カーネル以外はC++で書けるといところかな。
CUDAだと同じことができるけど、ホスト側でNVCC以外使おうとするとちょっと面倒だ。
ただ、カーネルの最適化がコンパイラでもできるから、
パフォーマンスは出やすいな。
LLVMで最適化レベルって設定ができるのかな?
OpenCLのいいところは、コンパイラを選ばない、
カーネル以外はC++で書けるといところかな。
CUDAだと同じことができるけど、ホスト側でNVCC以外使おうとするとちょっと面倒だ。
ただ、カーネルの最適化がコンパイラでもできるから、
パフォーマンスは出やすいな。
LLVMで最適化レベルって設定ができるのかな?
662デフォルトの名無しさん
2012/12/22(土) 01:07:39.90 >>661
アーキテクチャが何にでも対応できるが、
アーキテクチャによって最適なWARP(に相当するもの)の数が違ったり、
コアレセンスアクセスできる条件が違ったり、キャッシュの有無だったりで
結局はアーキテクチャ依存の最適化をしないと速くならないよ。
アーキテクチャが何にでも対応できるが、
アーキテクチャによって最適なWARP(に相当するもの)の数が違ったり、
コアレセンスアクセスできる条件が違ったり、キャッシュの有無だったりで
結局はアーキテクチャ依存の最適化をしないと速くならないよ。
663デフォルトの名無しさん
2012/12/22(土) 02:28:20.85 場合によってはコンパイラのバージョン依存も。
664デフォルトの名無しさん
2012/12/24(月) 05:32:34.90 やっとCL使うネタが準備できた
楽しみだー
楽しみだー
665デフォルトの名無しさん
2013/01/13(日) 19:49:11.31 Trinity APUで使ったらCPU使用率が50%(2コアなので1コアがフル稼働状態)になったが、こんなもんなの?
GPUで計算してるはずなんだが。
GPUで計算してるはずなんだが。
666デフォルトの名無しさん
2013/01/14(月) 05:46:41.04 ジョブの内容と数によるんでは。
667デフォルトの名無しさん
2013/01/14(月) 21:42:22.31 CUDA見たいに結果出るまでぽーりんぐしてんじゃないの?
668デフォルトの名無しさん
2013/01/14(月) 22:02:09.36 自分のマシンのFLOPS計るのはどのベンチがお勧め?
669デフォルトの名無しさん
2013/01/15(火) 00:36:48.35 クロックとシェーダの数を掛ければ。
670デフォルトの名無しさん
2013/01/15(火) 12:44:28.36 ちゃんとGPUで計算されてないだけじゃね
afterburnerかなんかでGPU側の使用率も見てる?
afterburnerかなんかでGPU側の使用率も見てる?
671665
2013/01/20(日) 11:45:47.76 Catalystのバージョン上げたらCPU使用率下がりました
672デフォルトの名無しさん
2013/01/21(月) 06:12:45.45 AMDのOpenCL SDKはCPU(SSE)デバイスもサポートしてるから
そっちで動いてたってことかな
そっちで動いてたってことかな
673デフォルトの名無しさん
2013/01/22(火) 00:13:17.77 デバイス取得時にGPUを指定すればそんな目に合うはずね〜が
674デフォルトの名無しさん
2013/01/22(火) 23:13:25.92 デバイスにCPU使ってたらCPU使用率100%になるんじゃないの
675デフォルトの名無しさん
2013/01/23(水) 00:21:18.43 >>674
特に設定しないとシングルコアだからならない
特に設定しないとシングルコアだからならない
676デフォルトの名無しさん
2013/01/23(水) 01:32:16.04 CPU版はdevice fissionしないと使えるコア全部使わなかったっけ?
677デフォルトの名無しさん
2013/01/26(土) 18:02:42.38 いくつか本読んで基礎的なことは
わかったんだけど、openclでmpegのエンコーダー
作ってみたいから何か参考になる情報ないかな
わかったんだけど、openclでmpegのエンコーダー
作ってみたいから何か参考になる情報ないかな
678デフォルトの名無しさん
2013/01/26(土) 21:16:57.04 CUDAでこれだからOpenCLはチューニング大変だな
pc.watch.impress.co.jp/img/pcw/docs/584/977/html/7b_prometech_32.jpg.html
pc.watch.impress.co.jp/img/pcw/docs/584/977/html/7b_prometech_32.jpg.html
679デフォルトの名無しさん
2013/01/26(土) 22:38:20.74680デフォルトの名無しさん
2013/01/30(水) 22:41:00.14 試しに↓使ってみたんだがローカルメモリ使ったら速度が3割落ちた。
www.aocplan.com/gpgpu/gpgpu-benchmark
www.aocplan.com/gpgpu/gpgpu-benchmark
681デフォルトの名無しさん
2013/02/05(火) 22:18:38.26 OpenCLってHyper-Qみたいな機能ってあるでしょうか?
682デフォルトの名無しさん
2013/02/05(火) 22:28:21.47 >>678
アーキ毎にカーネルを書きなおさないと性能でないよ。
アーキ毎にカーネルを書きなおさないと性能でないよ。
683デフォルトの名無しさん
2013/02/06(水) 21:46:06.32 各アーキテクチャごとの最適化資料ってある?
684デフォルトの名無しさん
2013/02/07(木) 05:31:00.88 AMDだとこれが詳しい。NVIDIAのだったらCUDAのマニュアルを読めばいい。
http://developer.amd.com/download/AMD_Accelerated_Parallel_Processing_OpenCL_Programming_Guide.pdf
http://developer.amd.com/download/AMD_Accelerated_Parallel_Processing_OpenCL_Programming_Guide.pdf
685デフォルトの名無しさん
2013/02/11(月) 23:11:22.51 標準のC++に替わり今後はOpenCLが標準に確定したな
OpenCLでパフォーマンスが激向上するから当然か
OpenCLでパフォーマンスが激向上するから当然か
686デフォルトの名無しさん
2013/02/12(火) 06:11:15.51 寝言は寝て言え
687デフォルトの名無しさん
2013/02/17(日) 21:21:57.05 >>684
ありがとう。VLIW4だとスレッド数1/4にして、1スレッドで4つずつ処理するようにしたら倍速になった。
ありがとう。VLIW4だとスレッド数1/4にして、1スレッドで4つずつ処理するようにしたら倍速になった。
688デフォルトの名無しさん
2013/02/18(月) 04:23:25.11 R600のISA解説したpdfもどっかにあって、あれ読むとKernel Analyzerの右側の命令が読めるようになって捗るぞ。
689デフォルトの名無しさん
2013/05/09(木) 04:25:55.54 Intel Releases SDK with OpenCL 1.2 Support for Intel Xeon Phi Coprocessors | techPowerUp
http://www.techpowerup.com/183718/intel-releases-sdk-with-opencl-1-2-support-for-intel-xeon-phi-coprocessors.html
http://www.techpowerup.com/183718/intel-releases-sdk-with-opencl-1-2-support-for-intel-xeon-phi-coprocessors.html
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 国会が「238秒停止」「3連続音声オフ」 代打・小泉大臣にも大音量ヤジ 起立する議員続出…高市総理の発言めぐり紛糾 [♪♪♪★]
- 【東京】赤坂サウナ火事2人死亡 サウナ室のドアノブ外れ閉じ込められた可能性 ★4 [nita★]
- 「こども2万円給付」は“ずるい”?「子持ちだけ優遇されてる」「来年から独身税もあるのに」…子育て世帯への支援は“不公平”なのか [♪♪♪★]
- 「PC買うなら急げ」は本当だった。マウスが一部販売停止&1月値上げを発表 [♪♪♪★]
- 【速報】 ロシア潜水艦が攻撃されて巨大水柱 [お断り★]
- “つり目”騒動の中…駐日フィンランド大使館が声明「人種差別と闘う」「数多くの意見や質問が」 [少考さん★]
- 鶏卵、1パック308円に。平年に比べ27%高くなる。農水省が調査開始して以来の最高値 [663766621]
- 野党「台湾を国と認めてるの?」高市「◯☓※▲😤」野党「いや答えて」高市「◯☓~」野党「速記止めろぉ!」 [359965264]
- すいません32GBのメモリをくださいDDR5です
- フィフィ「中国に頭下げてまで日本でパンダが見たいか?」「見たい人は中国行けば?」高市正論 [153490809]
- 3時のおやつ🧁はふなキャンディー🍬🏡
- 【悲報】高市(おサナ)、過去最大120兆円の予算を組もうとしていると判明😰 [359965264]
