さてついにOpenCLの仕様が公開されました。
http://www.khronos.org/opencl/
公式ページにはAPIのヘッダファイルが公開されており、
まだ実際に動かす事はできないもののプログラミングすることは可能となっています。
ということで、公開に先んじてプログラミングを始めてしまいましょう。
OpenCLプログラミング#1
■ このスレッドは過去ログ倉庫に格納されています
1a36 ◆K0BqlCB3.k
2008/12/10(水) 15:38:25238デフォルトの名無しさん
2009/12/17(木) 16:18:02 質問です
OpenCLを使ったプログラムのバイナリはRadeonでもGeForceでも使えますか?
OpenCLを使ったプログラムのバイナリはRadeonでもGeForceでも使えますか?
239デフォルトの名無しさん
2009/12/17(木) 17:35:20 まずは実際にやる事だ
240デフォルトの名無しさん
2009/12/18(金) 00:39:28 ソースでも中間コードでもない、ただのバイナリをなんだと思っているんだ
241デフォルトの名無しさん
2009/12/23(水) 20:27:30 フィックスターズから本出るよ
http://www.amazon.co.jp/dp/484432814X
http://www.amazon.co.jp/dp/484432814X
2009/12/23(水) 20:55:25
三木聡しゃちょはんて何処担当してるの?
243デフォルトの名無しさん
2009/12/24(木) 20:20:23244デフォルトの名無しさん
2009/12/26(土) 01:03:24 >>238
ソースレベルの互換性しかないので、バイナリは非互換。
ただしランタイムにカーネルのソースをコンパイル出来るので、恰もバイナリ互換があるかのようにコーディング出来る。
とはいえ、そうするとCELLみたいに特殊な構造だとパフォーマンスを発揮するようにコードを書くのがたいへんだろうけど。
ソースレベルの互換性しかないので、バイナリは非互換。
ただしランタイムにカーネルのソースをコンパイル出来るので、恰もバイナリ互換があるかのようにコーディング出来る。
とはいえ、そうするとCELLみたいに特殊な構造だとパフォーマンスを発揮するようにコードを書くのがたいへんだろうけど。
245デフォルトの名無しさん
2009/12/26(土) 13:46:36 Radeonの4650で遊んだ感じでいうとCellのが楽だな
246デフォルトの名無しさん
2009/12/28(月) 09:34:55 >>242
そこには触れてやるな。みんなおかしいとは思っているがしゃちょーには逆らえない
そこには触れてやるな。みんなおかしいとは思っているがしゃちょーには逆らえない
247デフォルトの名無しさん
2009/12/28(月) 19:37:202009/12/30(水) 03:30:14
今年(来年?)はプログラミングコンテスト開かないの?
249デフォルトの名無しさん
2010/01/01(金) 10:53:23 うっせー糞して寝ろ
250デフォルトの名無しさん
2010/01/05(火) 20:45:23 どっちかっていうと、OpenGL内部のメモリ内容を直接書き換えれるのが大きいな。
描画内容に変更加えて再描画とか、データの高速可視化とか。
個人的にCPUに付加かけずにリアルタイム可視化ができるのがいいな。
描画内容に変更加えて再描画とか、データの高速可視化とか。
個人的にCPUに付加かけずにリアルタイム可視化ができるのがいいな。
251デフォルトの名無しさん
2010/01/18(月) 19:22:26 OpenCL並列プログラミングって本が25日に出るみたい。
252デフォルトの名無しさん
2010/01/18(月) 22:04:56 しってるしってる、と思ったらフィクスターズのやつとは別か
ソースキボンヌ
ソースキボンヌ
253デフォルトの名無しさん
2010/01/18(月) 22:14:14 >>252
今日の日経の朝刊1面下の広告
今日の日経の朝刊1面下の広告
254デフォルトの名無しさん
2010/01/18(月) 22:18:22255デフォルトの名無しさん
2010/01/18(月) 22:19:55 JAL株5円まで来たか
いよいよ明日はクライマックス
いよいよ明日はクライマックス
256デフォルトの名無しさん
2010/01/18(月) 23:48:45 うっせー糞して寝ろ
257デフォルトの名無しさん
2010/01/19(火) 00:15:14 便秘で出ないっす
258デフォルトの名無しさん
2010/01/19(火) 20:00:15 ケツに目薬をさすと便秘が治るという噂を聞いたことがある
259デフォルトの名無しさん
2010/01/21(木) 15:08:18 最近GPGPUを始めようと調べ始めたのですが、
cudaとCLの違いって、CUDAはCPU部分もカーネル部分も混在したプログラムを書いてnvccが両者を分離してくれる、
CLはプログラマ自身が最初からCPU用とカーネル用とを分けてプログラムを書く
という認識でよいですか。
カーネルとかグローバルメモリとかの概念はほぼ一緒と考えてよいのでしょうか。
CLの方が拡張言語っぽくないのと共通規格な分気持ちがいいですが、カーネルのコンパイルとか引数設定を明示的にしないといけない分どんくさい感じですね。
cudaとCLの違いって、CUDAはCPU部分もカーネル部分も混在したプログラムを書いてnvccが両者を分離してくれる、
CLはプログラマ自身が最初からCPU用とカーネル用とを分けてプログラムを書く
という認識でよいですか。
カーネルとかグローバルメモリとかの概念はほぼ一緒と考えてよいのでしょうか。
CLの方が拡張言語っぽくないのと共通規格な分気持ちがいいですが、カーネルのコンパイルとか引数設定を明示的にしないといけない分どんくさい感じですね。
260デフォルトの名無しさん
2010/01/21(木) 15:14:41 OpenCLはまだまともに動かないからCUDAにしとけ
261250
2010/01/21(木) 18:20:06 cudaとopenclの決定的な違い?
cudaはGPGPU
openclは計算機資源API
GPUに限らず、CPU,(故)Cell/BE,DSPチップ等の演算装置を汎用的な計算機資源として使うためのAPIがCL
GPUを使うならメモリ概念はCUDAとだいたい同じ。
完全にホストプログラムとカーネルプログラムおよび両者間通信を手作業で作らないといけないどんくささ(?)はあるものの
「メインプログラムはホスト実行で,計算機資源だけ別のハードウェアを使う」設計APIなので自由度はかなり高い
ただOpen○○のくせにMac10.6以外はまともに動く環境が少ないとか
JITコンパイルなので実行するまでソースのバグがわからない上に資料がまだ充実してないとか、
けっこうまだまだ問題も多い。
>>260の言う通り今やるならCUDAが良いと思うぞ。
cudaはGPGPU
openclは計算機資源API
GPUに限らず、CPU,(故)Cell/BE,DSPチップ等の演算装置を汎用的な計算機資源として使うためのAPIがCL
GPUを使うならメモリ概念はCUDAとだいたい同じ。
完全にホストプログラムとカーネルプログラムおよび両者間通信を手作業で作らないといけないどんくささ(?)はあるものの
「メインプログラムはホスト実行で,計算機資源だけ別のハードウェアを使う」設計APIなので自由度はかなり高い
ただOpen○○のくせにMac10.6以外はまともに動く環境が少ないとか
JITコンパイルなので実行するまでソースのバグがわからない上に資料がまだ充実してないとか、
けっこうまだまだ問題も多い。
>>260の言う通り今やるならCUDAが良いと思うぞ。
262259
2010/01/21(木) 18:49:08 セルとかララビーとかアムドが本気を出すとか色々可能性があるからCLの方がいいかなと思ってたけど
CUDAの方がいいのかな。
拡張言語ってのが言語仕様的にOpenMPあたりと干渉しそうなのもCLを考えていた要素なんだけど。
CUDAの方がいいのかな。
拡張言語ってのが言語仕様的にOpenMPあたりと干渉しそうなのもCLを考えていた要素なんだけど。
263デフォルトの名無しさん
2010/01/21(木) 22:57:22 どっちもたいして変わらん どっちもやれ
264デフォルトの名無しさん
2010/01/22(金) 18:58:59 OpenMPとOpenCLが干渉?
ホスト管理スケジューリングぐらいじゃねーの?
ホスト管理スケジューリングぐらいじゃねーの?
265デフォルトの名無しさん
2010/01/22(金) 23:44:42 radeonでCUDAって出来ないの?
266デフォルトの名無しさん
2010/01/23(土) 01:25:03 無理。Stream使え。
でも、技術デモ程度ではなく実用したいならゲフォ使え。
でも、技術デモ程度ではなく実用したいならゲフォ使え。
267デフォルトの名無しさん
2010/01/23(土) 10:59:33 スレ違い
268デフォルトの名無しさん
2010/01/26(火) 01:24:10 ふぃくすたのOpenCL入門買ったぞ、LinuxでSDKについてきたサンプルコードがコンパイルできなくて死んだ
っていうか普通にアルゴリズムの勉強してからやれクズ
っていうか普通にアルゴリズムの勉強してからやれクズ
269デフォルトの名無しさん
2010/01/26(火) 01:27:54 二行目どういう意味?
270デフォルトの名無しさん
2010/01/26(火) 05:29:18 268 said s/he was kuzu.
271デフォルトの名無しさん
2010/03/10(水) 22:33:57 >>266
GPGPU目的だと、ATI<nVidiaなの?
GPGPU目的だと、ATI<nVidiaなの?
272デフォルトの名無しさん
2010/03/10(水) 22:52:32 ?
273デフォルトの名無しさん
2010/03/11(木) 20:16:16 CUDA(nVIDIA)/Stream(AMD) = GPGPU環境
OpenCL = 計算資源利用API ≠ GPGPU
GPGPUのみのなら別スレへ。
とりあえずOpenCL<CUDA(nVIDIA)/Stream(AMD)
かつ開発環境の整備具や資料面ではGPGPUでもnVIDIAに軍配が上がるのが一般論
OpenCL = 計算資源利用API ≠ GPGPU
GPGPUのみのなら別スレへ。
とりあえずOpenCL<CUDA(nVIDIA)/Stream(AMD)
かつ開発環境の整備具や資料面ではGPGPUでもnVIDIAに軍配が上がるのが一般論
274デフォルトの名無しさん
2010/03/12(金) 01:13:55 CUDAを使った実績はかなりあるけど、
OpenCLをつかってパフォーマンスが上がるって結果はあるのか?
OpenCLをつかってパフォーマンスが上がるって結果はあるのか?
275デフォルトの名無しさん
2010/03/12(金) 13:56:03 FLOPSのベンチとか調べればちらほら(程度は)ある。ただFLOPSが高くても転送コストが重かったりする。
実行結果をそのままOpenGLとかで可視化するとか転送コストを挟まない場合には向いてる。レイトレとか。
ただ開発/デバグにかかる時間と労力はCUDAと比較にならないと思うぐらい悪い。慣れれば別。
俺はOpenCL好きだけどね。
実行結果をそのままOpenGLとかで可視化するとか転送コストを挟まない場合には向いてる。レイトレとか。
ただ開発/デバグにかかる時間と労力はCUDAと比較にならないと思うぐらい悪い。慣れれば別。
俺はOpenCL好きだけどね。
276デフォルトの名無しさん
2010/03/13(土) 13:19:47 昔の超不安定なRadeonのせいでRadeonを買うことにトラウマがあるから
GPGPUもGeForceしかしたくない
GPGPUもGeForceしかしたくない
277デフォルトの名無しさん
2010/03/13(土) 21:40:13 いまノートPCでRadeonHD3200
OpenCL使ってみたいけど、使える環境にするにはPC一式を新しく買うしかないよね?orz
OpenCL使ってみたいけど、使える環境にするにはPC一式を新しく買うしかないよね?orz
278デフォルトの名無しさん
2010/03/13(土) 22:12:04 ATIStream版OpenCLのCPUデバイスで我慢すれば
279デフォルトの名無しさん
2010/03/14(日) 04:36:42 ATI、各GPUのドライバまで手が廻らな過ぎ。
280デフォルトの名無しさん
2010/03/14(日) 10:20:38 正直どこのベンダもOpenCLにそんなに力入れてない気がしてきた。。。
281デフォルトの名無しさん
2010/03/14(日) 12:58:43 いつまでnVidiaに夢見てんだよ
282デフォルトの名無しさん
2010/03/14(日) 15:29:40 GeForce GT 240 でOpenCL SDK V2.3のサンプルが動かない。
というかSDKでビルドは成功するが全然動かない。
ドラバは最新の 196.21
GPU-Z.0.3.9で確認するとOpenCLはチェックが入っている。
というかSDKでビルドは成功するが全然動かない。
ドラバは最新の 196.21
GPU-Z.0.3.9で確認するとOpenCLはチェックが入っている。
283デフォルトの名無しさん
2010/03/14(日) 15:41:44 現状CUDAで十分な気がする
284デフォルトの名無しさん
2010/03/14(日) 18:08:04 CUDAもOpenCLもこのまま消えそうだね
285デフォルトの名無しさん
2010/03/14(日) 21:15:50 ほかで何が残りそうなの
286デフォルトの名無しさん
2010/03/14(日) 23:21:11 調べてないけど、OpenGL 4は、OpenCLと連携するようになってるらしいから
徐々にOpenCLも使われるようになっていくんじゃない
徐々にOpenCLも使われるようになっていくんじゃない
287デフォルトの名無しさん
2010/03/15(月) 18:48:08 POWERVR SGX545を採用したモバイル機器での普及の方が先かも知れない。
288デフォルトの名無しさん
2010/03/15(月) 20:09:26 >>286
既にOpenGLと連携できるよ。頂点バッファとかテクスチャとかだからGL2.x以降とかな?
既にOpenGLと連携できるよ。頂点バッファとかテクスチャとかだからGL2.x以降とかな?
289デフォルトの名無しさん
2010/03/18(木) 17:36:26 NVIDIAのOpenCLのダウンロードから一通りダウンロードしてきたけど、
コンパイルとかは、どのコマンドを使うの?
OSはLinuxです。
コンパイルとかは、どのコマンドを使うの?
OSはLinuxです。
290デフォルトの名無しさん
2010/03/18(木) 19:40:13 何のコンパイル?
291デフォルトの名無しさん
2010/03/20(土) 03:12:14 >>290
OpenCL file
OpenCL file
292デフォルトの名無しさん
2010/03/20(土) 05:50:48 nvcc
293290
2010/03/20(土) 08:02:27 fileてのが何かよくわからんが
NVIDIAサンプルに含まれるホスト側のCソースなら/OpenCL/makeでいけるかと。
カーネル用のCLソースならclBuildProgram()関数でどうぞ。
NVIDIAサンプルに含まれるホスト側のCソースなら/OpenCL/makeでいけるかと。
カーネル用のCLソースならclBuildProgram()関数でどうぞ。
294デフォルトの名無しさん
2010/03/20(土) 17:29:53295デフォルトの名無しさん
2010/03/20(土) 18:17:46 Mac OS X 10.6を手に入れたんだけど、OpenCLの使い方を教えてください
とりあえず、ドライバだけは入れました。
とりあえず、ドライバだけは入れました。
296デフォルトの名無しさん
2010/03/20(土) 19:11:03 ソース書く→コンパイル→実行→happy
297デフォルトの名無しさん
2010/03/20(土) 20:03:11 >>295
ttp://developer.apple.com/
ttp://developer.apple.com/
298デフォルトの名無しさん
2010/03/20(土) 20:08:14 あと
ttp://developer.apple.com/mac/library/navigation/index.html?section=Resource+Types&topic=Sample+Code#section=Frameworks&topic=OpenCL
ttp://developer.apple.com/mac/library/navigation/index.html?section=Resource+Types&topic=Sample+Code#section=Frameworks&topic=OpenCL
299デフォルトの名無しさん
2010/03/21(日) 13:14:54 LinuxでOpenCLやってるんだけど、倍精度は使えへんの?
300デフォルトの名無しさん
2010/03/21(日) 14:28:18 282だけど
CUDA 3.0 Downloads
で上手くいきました。
ありがとう。>294
CUDA 3.0 Downloads
で上手くいきました。
ありがとう。>294
301デフォルトの名無しさん
2010/03/22(月) 12:45:47 Linuxと倍精度になんの関係が
302デフォルトの名無しさん
2010/03/22(月) 13:16:38 CL C言語での倍精度浮動小数点はGPUベンダーにより任意サポート
303デフォルトの名無しさん
2010/03/26(金) 00:59:44 よくわからんけど、倍精度を有効にするスイッチとかあるの?
CUDAだとsm13だけど
CUDAだとsm13だけど
304デフォルトの名無しさん
2010/03/26(金) 08:06:27305デフォルトの名無しさん
2010/04/01(木) 22:53:00 struct {
int I;
} tA;
struct {
tA * pa;
} tB;
__kernel void Func (__global tB *b) {
int idx = get_global_id(0);
int B = b[idx].a->I;
}
みたいにすると、int B に値が入らないのってなんで?
書き方が悪いのかな?
教えてエロい人。
int I;
} tA;
struct {
tA * pa;
} tB;
__kernel void Func (__global tB *b) {
int idx = get_global_id(0);
int B = b[idx].a->I;
}
みたいにすると、int B に値が入らないのってなんで?
書き方が悪いのかな?
教えてエロい人。
306デフォルトの名無しさん
2010/04/02(金) 00:52:35307デフォルトの名無しさん
2010/04/02(金) 01:07:15 これはコンパイル通るのか?
308デフォルトの名無しさん
2010/04/02(金) 02:12:02 tAの実体はいずこ?
tBのメンバpaはポインタだぞ。
ポインタは実体ではないぞ。
やるなら、
__kernel void Func (__global tB *b) {
int idx = get_global_id(0);
tA C;
C.I = 1;
b[idx].pa = (tA *)(&C);
int B = b[idx].pa->C;
}
じゃないか?
OpenCLより、ポインタを先に勉強した方がいいぞ。
tBのメンバpaはポインタだぞ。
ポインタは実体ではないぞ。
やるなら、
__kernel void Func (__global tB *b) {
int idx = get_global_id(0);
tA C;
C.I = 1;
b[idx].pa = (tA *)(&C);
int B = b[idx].pa->C;
}
じゃないか?
OpenCLより、ポインタを先に勉強した方がいいぞ。
309デフォルトの名無しさん
2010/04/02(金) 02:33:18310デフォルトの名無しさん
2010/04/02(金) 08:10:34 305だけど、306の話で知りたいことはわかった。
変な質問でごめんね。みんなありがとう。
変な質問でごめんね。みんなありがとう。
311デフォルトの名無しさん
2010/04/23(金) 01:47:27 ラデですまんが、vista64でATI Stream 2.01にしたらopen CLのサンプルがVC++ Expressでコンパイルできても動かない(clGetPlatformIDsが-1001を返す)んだけど、こんなことなた人います?
2.0bだと動いたのだが。
Platform SDKの64bitコンパイラを使えばちゃんとサンプルも動かせるけど、MS流儀のコンパイルオプションやmakefileの書式が面倒くさい・・・
LinuxのCUDA機を購入する前にPCでOpen CLのお勉強をしようと思ったのにつまらんところで時間をくってしまった。
2.0bだと動いたのだが。
Platform SDKの64bitコンパイラを使えばちゃんとサンプルも動かせるけど、MS流儀のコンパイルオプションやmakefileの書式が面倒くさい・・・
LinuxのCUDA機を購入する前にPCでOpen CLのお勉強をしようと思ったのにつまらんところで時間をくってしまった。
312デフォルトの名無しさん
2010/04/23(金) 11:34:25 SDKサンプルのoclBandWidthTestやったらホスト・デバイス間で5300MB/sくらいだったんだけど
この数値ってグラボだけじゃなくマザーとメインメモリも影響するよね?
GPGPUの処理がハードウェア的にどう依存してるのか良くイメージ出来てないんだけど
i7のQPIとかは影響するの?
この数値ってグラボだけじゃなくマザーとメインメモリも影響するよね?
GPGPUの処理がハードウェア的にどう依存してるのか良くイメージ出来てないんだけど
i7のQPIとかは影響するの?
313デフォルトの名無しさん
2010/04/23(金) 12:28:21314デフォルトの名無しさん
2010/04/24(土) 00:44:55 >>313
そこを読んだけど、それにはデフォルトを呼び出すんじゃなくてclGetPlatformIDsを呼び出してセレクトしろってことでしょ。
で、2.01の64bit版にはちゃんと32bit版のOpenCL.dllが入っているのに、32bitでコンパイルしたらclGetPlatformIDsがなにやら不明なエラーを返してしまうことが問題で・・・
そこを読んだけど、それにはデフォルトを呼び出すんじゃなくてclGetPlatformIDsを呼び出してセレクトしろってことでしょ。
で、2.01の64bit版にはちゃんと32bit版のOpenCL.dllが入っているのに、32bitでコンパイルしたらclGetPlatformIDsがなにやら不明なエラーを返してしまうことが問題で・・・
315デフォルトの名無しさん
2010/04/24(土) 01:01:40 SDKを削除>再インストールしてみたらどう?
こんな話があるし↓
ttp://absolutearea.blogspot.com/2010/04/opencl-ati-stream-sdk_05.html
こんな話があるし↓
ttp://absolutearea.blogspot.com/2010/04/opencl-ati-stream-sdk_05.html
316デフォルトの名無しさん
2010/04/24(土) 01:06:52 >>315
それはビルドができないってことでしょ。
ビルドはできるんだよねぇ。実行もできる。ただOpenCLの関数が怪しい物を返すので。
OpenCL.dllの日付は32bit版と64bit版も同じだからバージョン違いが残ってるわけでもないしなぁ。
それはビルドができないってことでしょ。
ビルドはできるんだよねぇ。実行もできる。ただOpenCLの関数が怪しい物を返すので。
OpenCL.dllの日付は32bit版と64bit版も同じだからバージョン違いが残ってるわけでもないしなぁ。
317デフォルトの名無しさん
2010/04/24(土) 03:20:56 >>316
中身読んでくれてないのね…
この人も-1001 返ってるって書いてあるし、
貴方とおんなじかなって思ったんだけど
> 「デバッグ」メニューから「デバッグなしで開始」を選択
> HelloCL!
> Getting Platform Information
> Platform::get() failed (-1001)
> 続行するには何かキーを押してください . . .
> ありゃ?なんでじゃ?
>
> ATI Stream SDK をインストーラでリペアしてもだめだった。
> しかたがないので、ATI Stream SDK をアンインストール後、再びインストールした。
> サンプルをコンパイルして動作確認。うまくいった。
中身読んでくれてないのね…
この人も-1001 返ってるって書いてあるし、
貴方とおんなじかなって思ったんだけど
> 「デバッグ」メニューから「デバッグなしで開始」を選択
> HelloCL!
> Getting Platform Information
> Platform::get() failed (-1001)
> 続行するには何かキーを押してください . . .
> ありゃ?なんでじゃ?
>
> ATI Stream SDK をインストーラでリペアしてもだめだった。
> しかたがないので、ATI Stream SDK をアンインストール後、再びインストールした。
> サンプルをコンパイルして動作確認。うまくいった。
318デフォルトの名無しさん
2010/04/24(土) 03:37:42319デフォルトの名無しさん
2010/04/24(土) 10:55:01 wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
320デフォルトの名無しさん
2010/04/24(土) 15:07:22 そんなwwwとか書くなよ・・・実際のところ既にアンインストール後再インストールは試してるしなぁ。
321デフォルトの名無しさん
2010/04/24(土) 17:53:49 なんで出されたもの読まずにコメント出来るのか理解不能ではある
322デフォルトの名無しさん
2010/04/25(日) 01:04:34 >>320
後だし情報で言い訳wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
後だし情報で言い訳wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
323デフォルトの名無しさん
2010/05/09(日) 03:00:01324デフォルトの名無しさん
2010/05/09(日) 09:39:11 ヤギだからじゃないのか?
325デフォルトの名無しさん
2010/05/14(金) 23:31:43 GF9400 (CUDA 3.0)のマシンとHD4850 (ATI Stream 2.1)のマシン両方で起こっているのだけれど、
clEnqueueNDRangeKernelで実行したカーネルのイベントがclGetEventInfoで状態を見るとCL_QUEUEDのまま変わりません(queueはインオーダー実行にしてあります)。
kernel自体はきちんと実行終了して希望の結果が得られて、clEnqueueWaitForEventsにイベントを入れて待ってもきちんとCL_SUCCESSで戻ってくるのに、そのイベントの状態を見るとCL_QUEUEDのまま。
そのために、clGetEventProfilingInfoでカーネルの実行時間を調べようとしてもCL_PROFILING_INFO_NOT_AVAILABLEが返ってきて調べられない始末(CL_COMPLETEになっていない証拠)。
clEnqueueWriteBufferなどのイベントはちゃんとCL_COMPLETEになっている。
なんか再現する簡単なプログラムを付けたいけれど、OpenCLはカーネル動く例を書こうとしてもオマジナイが多すぎて改行多すぎで載せられないし・・・
・kernelは正しく実行されている
・WaitForEventも正しく戻る
・でもイベントはqueuedのまま
clEnqueueNDRangeKernelで実行したカーネルのイベントがclGetEventInfoで状態を見るとCL_QUEUEDのまま変わりません(queueはインオーダー実行にしてあります)。
kernel自体はきちんと実行終了して希望の結果が得られて、clEnqueueWaitForEventsにイベントを入れて待ってもきちんとCL_SUCCESSで戻ってくるのに、そのイベントの状態を見るとCL_QUEUEDのまま。
そのために、clGetEventProfilingInfoでカーネルの実行時間を調べようとしてもCL_PROFILING_INFO_NOT_AVAILABLEが返ってきて調べられない始末(CL_COMPLETEになっていない証拠)。
clEnqueueWriteBufferなどのイベントはちゃんとCL_COMPLETEになっている。
なんか再現する簡単なプログラムを付けたいけれど、OpenCLはカーネル動く例を書こうとしてもオマジナイが多すぎて改行多すぎで載せられないし・・・
・kernelは正しく実行されている
・WaitForEventも正しく戻る
・でもイベントはqueuedのまま
326デフォルトの名無しさん
2010/05/14(金) 23:59:03 うpろだに上げればよかろうよ
327デフォルトの名無しさん
2010/05/16(日) 13:46:46 並列処理の基本であるキューにためつつキューの中身を取り出して処理するみたいなことは出来るの?
328デフォルトの名無しさん
2010/05/16(日) 21:32:19 えっ
329デフォルトの名無しさん
2010/05/16(日) 22:10:17 そのためのキューです
330デフォルトの名無しさん
2010/05/17(月) 00:17:50 キューはCPU側で実装すればいいのか
331325
2010/05/17(月) 10:55:56 clEnqueueWaitForEventなんか使ってちゃダメだな。
clWaitForEventで待機したらeventがCL_COMPLETEになりました。
queueのインオーダーだと勝手にブロッキングになると勘違いしていてwaitなんて入れても入れんでも一緒ダロとか思ってました。
ところで、アウトオブオーダーの時にclEnqueueWaitForEventなんか使ったらqueue内の順序無視してwaitを先にやっちゃって止まるなんてことにはならんのだろうか・・・
clWaitForEventで待機したらeventがCL_COMPLETEになりました。
queueのインオーダーだと勝手にブロッキングになると勘違いしていてwaitなんて入れても入れんでも一緒ダロとか思ってました。
ところで、アウトオブオーダーの時にclEnqueueWaitForEventなんか使ったらqueue内の順序無視してwaitを先にやっちゃって止まるなんてことにはならんのだろうか・・・
332デフォルトの名無しさん
2010/05/17(月) 23:56:26 windowsのリモートデスクトップ経由でOpenCLのプログラムを実行するとplatformの取得に失敗するのな。
びっくりした。windows使えねぇw
びっくりした。windows使えねぇw
333デフォルトの名無しさん
2010/05/18(火) 00:18:59 それはNVIDIAのドライバのせいでは?
ATIのOpenCLでもそうなる?
ATIのOpenCLでもそうなる?
334デフォルトの名無しさん
2010/05/18(火) 00:39:34 そうなる。Windowsの仕様。
公式でもVNC使えって言ってる。
ttp://developer.amd.com/gpu_assets/App_Note-Running_ATI_Stream_Apps_Remotely.pdf
公式でもVNC使えって言ってる。
ttp://developer.amd.com/gpu_assets/App_Note-Running_ATI_Stream_Apps_Remotely.pdf
335デフォルトの名無しさん
2010/05/18(火) 05:11:24 NVIDIAのドライバのせいだなw
336デフォルトの名無しさん
2010/05/18(火) 09:44:11 VNCは遅い上にリモートの画面のロックは解除されたりキーボードやマウスでいじり放題になるので目の届かないコンピュータをいじるもんじゃないわな。
迂闊にエロサイトなんて見てしまったら・・・
迂闊にエロサイトなんて見てしまったら・・・
337デフォルトの名無しさん
2010/05/18(火) 10:36:11 cygwinでsshdを起動してssh経由でやっても動かないぜ。
mpiでやっても当然ダメなんだろうな。
こんな状態でHPC市場を狙ってるんですかねマクソさんは。
mpiでやっても当然ダメなんだろうな。
こんな状態でHPC市場を狙ってるんですかねマクソさんは。
338デフォルトの名無しさん
2010/05/19(水) 13:04:33 スクリーンセーバーにしてしまおうかと真剣に考えたw
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 上野動物園の双子パンダ、1月末に中国に返還へ 国内でパンダ不在に [蚤の市★]
- 「婚活中の男女の8割以上が婚活疲れ」続ければ続けるほど蟻地獄にハマる必然とは? ★2 [ぐれ★]
- フジ、元日夜に『なるほど!ザ・ワールド』6年ぶり復活 MCは有吉弘行&指原莉乃「衝撃的」「ビックリ」予告 [征夷大将軍★]
- 【福岡】男女2人刺傷事件、関与ほのめかす30代男を確保 刃物も発見 [ぐれ★]
- 中国軍機のレーダー照射1週間 駆け引き続く 中国、米のレッドライン模索 日本、米以外の同志国とも連携探る 米は対立から距離置く★3 [ぐれ★]
- ゼレンスキー氏、NATO加盟断念に言及 ドイツで米代表団と [蚤の市★]
- 【悲報】花王、女性用品だけ量を少なくしてることがバレ大炎上中wwwwwwwwwwwwwwwwwwww [802034645]
- パナソニック、ほぼ全て20%値上げ… ありがとう高市早苗 働いて働いて働いてまいります [667744927]
- 高市早苗、病気か?ろれつ回らず上手く喋れずwwwwww [153490809]
- 🏡すこふさん、とうだ…w🏡
- 世界『日本人男性は女性にモテナイ』 女性が国際ロマンス詐欺に騙されるのは、幼く振る舞いに問題のある日本人男性が原因 [932029429]
- ローソンのセルフレジに不満が続出!「わかりづらい」「操作ミスした」 [769050516]
