[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2ch.scのread.cgiへ]
Update time : 09/30 15:14 / Filesize : 179 KB / Number-of Response : 910
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

OpenCLプログラミング#1



1 名前:a36 ◆K0BqlCB3.k [2008/12/10(水) 15:38:25 .net]
さてついにOpenCLの仕様が公開されました。

www.khronos.org/opencl/

公式ページにはAPIのヘッダファイルが公開されており、
まだ実際に動かす事はできないもののプログラミングすることは可能となっています。
ということで、公開に先んじてプログラミングを始めてしまいましょう。

413 名前:デフォルトの名無しさん mailto:sage [2011/01/26(水) 12:09:39 .net]
AMDからメール来た

AMD Accelerated Parallel Processing (APP) SDK | AMD Developer Central
developer.amd.com/gpu/AMDAPPSDK/Pages/default.aspx
OpenCL? H.264/AVC: MainConcept
www.mainconcept.com/products/sdks/gpu-acceleration/opencltm-h264avc.html


414 名前:409 mailto:sage [2011/01/28(金) 13:15:14 .net]
OpenMP使えばいいんですね.自己解決しましたw

415 名前:デフォルトの名無しさん mailto:sage [2011/01/28(金) 18:00:42 .net]
OpenCLはCUDAやTBBのラッパーという理解で宜しいか?

416 名前:デフォルトの名無しさん mailto:sage [2011/01/31(月) 10:23:07 .net]
OpenMPはCPUしか並列化できない
GPUも並列化したいならOpenMPじゃなくてOpenCL使わなきゃだめだろ

417 名前:デフォルトの名無しさん [2011/01/31(月) 21:48:44 .net]
>>413
レスあざす。
もともとOpenCLで組んでて、OpenCLだけでマルチデバイスで動作しないかなぁと思った悩んでいたもんで。一応ホストのスレッドを二本立てたら並列動作しました!

418 名前:デフォルトの名無しさん mailto:sage [2011/01/31(月) 23:26:33 .net]
AMDのH264のSDKってどうなの?

419 名前:デフォルトの名無しさん mailto:sage [2011/02/01(火) 20:28:57 .net]
>>415
んなもんあったっけ??

420 名前:デフォルトの名無しさん mailto:sage [2011/02/02(水) 01:05:26 .net]
>>416
話解らない奴だな
OpenCL H.264/AVC Encoder SDK Beta

どうなんだって聞いてるんだから答えろやクソが

421 名前:デフォルトの名無しさん mailto:sage [2011/02/02(水) 15:44:26 .net]
>>417
それAMD製じゃないしAMD専用でも無いじゃん

www.mainconcept.com/products/sdks/gpu-acceleration/opencltm-h264avc.html



422 名前:デフォルトの名無しさん mailto:sage [2011/02/02(水) 21:39:51 .net]
>>417
ぷw

423 名前:デフォルトの名無しさん mailto:sage [2011/02/03(木) 00:23:39 .net]
>>414
OpenCLの関数ってほとんどノンブロッキングだから
OpenMP使わなくても並列に動作するんじゃないの?
試したことないからわからんけど

424 名前:デフォルトの名無しさん [2011/02/03(木) 00:34:19 .net]
>>420
と思ったんですよ。とりあえず同じコンテクストにデバイス2つ乗っけて、キューを二本立ててやってみると計算はされるんだけど、プロファイラーで動作みてみると見事に逐次実行されてて。コンテクスト2つ立ててもダメでした。

ヘテロジニアスなんて謳ってるわりに面倒ですよねぇ^^;

425 名前:デフォルトの名無しさん mailto:sage [2011/02/04(金) 03:56:08 .net]
>>421
OpenCLのコマンドキューはインオーダー実行がデフォだから
CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLEやらないと必ず逐次実行されるよ

426 名前:デフォルトの名無しさん mailto:sage [2011/02/04(金) 20:08:07 .net]
>>422
違うんですねー
OpenCLドライバは何故か初期から、OutOfOrderを付けても逐次実行されるんだわ。。。
いつか対応されるだろうと、一年くらい経過したけどまだ対応されてないとは

427 名前:デフォルトの名無しさん mailto:sage [2011/02/09(水) 20:10:42 .net]

428 名前:="../test/read.cgi/tech/1228891105/421" target="_blank">>>421
プロファイラで実行すると逐次実行されるが、プロファイラ上でなければ並列実行される。
ジョブ投入や実行の時間を記録して表示させてみ。

また、同一コンテキストのメモリが二つのデバイスのどちらからでもアクセスできる裏技もあるよ。
最初のアクセスは遅いが、それ以降は早いので、CPU側に読み込んで書き戻すとかしなくてもダミーでメモリをアクセスするジョブを流せばデバイス間のデータ移動ができる。


1年ほど前にデバイス2本同時駆動の実験だけして本チャンの計算プログラムはまだつくってなかったな、そういや。
[]
[ここ壊れてます]

429 名前:デフォルトの名無しさん mailto:sage [2011/03/08(火) 07:32:39.91 .net]
昨日1日使ってボトルネックをOpenCLに移植したけど、
余計遅くなったわ。やれやれ

430 名前:デフォルトの名無しさん mailto:sage [2011/03/08(火) 08:28:07.93 .net]
ボトルネックを移植するんじゃなくてOpenCLに向いている部分を移植しろよ
または並列性を極大化したりif文などの分岐を全部排除するなどアルゴリズム最適化をしてみれば?

431 名前:デフォルトの名無しさん mailto:sage [2011/04/07(木) 03:06:36.77 .net]
VLIW5のtパイプ埋まらん



432 名前:デフォルトの名無しさん mailto:sage [2011/04/13(水) 04:08:44.89 .net]
深く考えずに2^26スレッドenqueueしたらひどいことになった。

433 名前:デフォルトの名無しさん mailto:sage [2011/04/21(木) 23:37:32.85 .net]
なんでこれ有料なんだ?
ttp://web.me.com/cducommun/CLBuilder/Home.html

434 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 00:28:47.04 .net]
Appleが提供しているツールならまだしも第三者が開発しているツールを無料にしろってのは横暴だろ
シェアウェアや市販ソフトを完全否定なお人ですか?

435 名前:デフォルトの名無しさん mailto:sage [2011/04/23(土) 23:18:19.02 .net]
AMD APPのOpenCLについてご存じの方がいたら教えて欲しいんですが、
wavefront=64 って事は、例えばwork_group = 128 の場合 work_itemが64ずつ完全に並列実行って認識で合ってるでしょうか?
(wavefront内のやりとりは同期が必要ないかどうかを知りたいです)

436 名前:デフォルトの名無しさん [2011/04/24(日) 03:56:08.00 .net]
>>431
何の保証もないけど、今のところ大丈夫な気がする。

437 名前:デフォルトの名無しさん mailto:sage [2011/04/24(日) 05:50:16.61 .net]
最大3クロックのタイミング差があると思うんだけど。

438 名前:デフォルトの名無しさん mailto:sage [2011/05/26(木) 04:58:19.55 .net]
XOR_INT*4とMULADD*4が同じ時間食うって納得いかん…

439 名前:デフォルトの名無しさん mailto:sage [2011/06/14(火) 22:58:32.16 .net]
for(d=0;省略){
clSetKernelArg(省略&d);
clEnqueueNDRangekernel(省略);
clEnqueueReadBuffer(省略);
for(省略){読み出したメモリ合算}
}
で1024*dで実行して
読み出して合算して再度実行・・・の形にしてもアドレス違反が起きてしまう・・・
イベントリストもバリア同期も意味なし

GPU実行でアドレス違反は画面だけ真っ黒になってびっくりした
デバックはCPUデバイス使ったほうがいいよ

440 名前:デフォルトの名無しさん mailto:sage [2011/06/26(日) 01:59:15.81 .net]
最近OpenCLに興味もったんですが皆さん楽しいですか?

441 名前:デフォルトの名無しさん mailto:sage [2011/06/26(日) 14:59:58.32 .net]
楽しいとか楽しくないとか問題じゃねえよ



442 名前:デフォルトの名無しさん mailto:sage [2011/06/26(日) 15:03:37.91 .net]
でっかいうんこかどうかだな

443 名前:デフォルトの名無しさん mailto:sage [2011/07/04(月) 00:47:28.82 .net]
AMD gDEBugger
ttp://developer.amd.com/tools/gDEBugger/Pages/default.aspx
いろいろ便利かもな

444 名前:デフォルトの名無しさん mailto:sage [2011/07/04(月) 00:50:00.35 .net]
nsightもOpenCLデバッグ対応してなかったっけ?

445 名前:天使 ◆uL5esZLBSE mailto:sage [2011/07/04(月) 06:50:33.14 .net]
2011年になっても未だにJAVA使い続けてる奴ってさ
仕事で仕方なくならわかるけど

家でもJAVAやってるなら本当にバカだよね。哀れ

ゴミだし

446 名前:デフォルトの名無しさん mailto:sage [2011/07/04(月) 07:59:16.86 .net]
最近みかける天使うぜー死ねと思っていたが
松本龍の阿呆発言と比べると実害無いだけマシだと思った

447 名前:デフォルトの名無しさん mailto:sage [2011/07/05(火) 22:49:02.30 .net]
つまんねー書き込みしてないでとっととNG登録しろよ

448 名前:デフォルトの名無しさん mailto:sage [2011/07/05(火) 22:51:03.29 .net]
このコテハン「天使 ◆uL5esZLBSE」は天才チンパンジー「アイちゃん」が
言語訓練のために使用しているハンドルです。

アイと研究員とのやり取りに利用する書き込みなので、
関係者以外はレスしないで下さい。

                  京都大学霊長類研究所

449 名前:デフォルトの名無しさん mailto:sage [2011/07/06(水) 01:40:07.31 .net]
intelのopencl SDKをlinuxにインスコったけどコンパイルのやり方わからん
gcc使ってどうにかならんの?

450 名前:デフォルトの名無しさん mailto:sage [2011/07/06(水) 09:49:42.54 .net]
OpenCLってもう1年もバージョン変わって無いけど、開発中止したの?

451 名前:デフォルトの名無しさん mailto:sage [2011/07/06(水) 11:06:10.67 .net]
バージョンUPしなくていいほど今の版が完成されたすばらしい出来だという事なんだよ



という事にしておきたい



452 名前:デフォルトの名無しさん mailto:sage [2011/07/06(水) 11:57:01.57 .net]
グラボはどんどん進化してるのに、ライブラリは完成されてるとかねーよ

453 名前:デフォルトの名無しさん mailto:sage [2011/07/06(水) 18:08:10.55 .net]
進化しても演算部分のコンパイラが底まで進化する必要があるか?

MSのCPUコンパイラさえ基本的には10年以上前のCPUでも動くような最適化レベルで止まっているしな。
GPUとして使うならまだしもGPGPUとして処理するならコンパイラは基本部分だけで、あとはドライバの進化で十分かと

454 名前:デフォルトの名無しさん mailto:sage [2011/07/09(土) 07:08:13.67 .net]
>>439
それってGPU1枚だけでも使えるの?
requirementsにはハードウェアのことが書いてない

455 名前:1 [2011/07/26(火) 06:44:48.46 .net]
toki.2ch.net/test/read.cgi/dataroom/1309855042/

456 名前:デフォルトの名無しさん mailto:sage [2011/07/27(水) 23:22:22.79 .net]
HD4850が最新のドライバではOpenCL動かないし、古いドライバでは動くがゲロ遅
アムドはあかんな

457 名前:デフォルトの名無しさん mailto:sage [2011/07/28(木) 01:08:32.77 .net]
>>452
4870 + CCC 11.6 で OpenCL 動いてるけど、
もしかして 11.7 では動かなくなるのかな ?

458 名前:デフォルトの名無しさん mailto:sage [2011/07/28(木) 14:50:27.81 .net]
HD4850, APP 2.4, CCC 11.6で動かず(カーネルコンパイルエラー)。
ググったら4xxxは11.6じゃ動かないから11.5にしろと言うことで11.5にしたら動いた。


459 名前:デフォルトの名無しさん mailto:sage [2011/07/28(木) 15:07:33.48 .net]
アムドとか言ってるあたりでお察し・・・

460 名前:デフォルトの名無しさん mailto:sage [2011/07/28(木) 20:28:57.67 .net]
アムドいうただけでレッテル貼りとかどんだけ・・・
ヌビディアはOpenCL対応あかんね
1.0のくせに1.1用の関数を使ってもコンパイル・リンクが通る
でも、clEnqueueWriteBufferRectとか実行したらセグメンテーション違反
なめとるで

461 名前:デフォルトの名無しさん mailto:sage [2011/07/29(金) 09:43:45.32 .net]
どっちも自社ライブラリ使えってことだよ



462 名前:デフォルトの名無しさん mailto:sage [2011/07/29(金) 12:23:00.19 .net]
data parallelで簡単な2重forならできるけどそれ使って複雑な計算するのが
できぬ・・・CUDAと違って1024が最大なのがネック

463 名前:452 mailto:sage [2011/07/30(土) 22:03:20.57 .net]
職場のC1060に家パソのHD4850が10倍以上の大差で惨敗してムカついたのでHD6950買ってきた。
2倍以上でHD6950の勝利!
アムド最高やで

464 名前:デフォルトの名無しさん mailto:sage [2011/07/30(土) 22:25:54.10 .net]
6970や6990じゃなくて6950なのか。てかC1060はもうどうでもよかろう。

465 名前:デフォルトの名無しさん mailto:sage [2011/07/30(土) 23:10:14.10 .net]
>>460
C1060はどうでもええことないよ。
だって、職場の計算機の貴重な戦力だし。
6950にしたのは家パソ用に高い板を買う気はないから。

466 名前:デフォルトの名無しさん mailto:sage [2011/08/01(月) 20:49:14.86 .net]
いつの間にか WebCL とか出来てて驚いた。
WebGL は色々使い道あるけど、WebCL は需要が分からん。

467 名前:デフォルトの名無しさん mailto:sage [2011/08/01(月) 21:47:49.14 .net]
WebGLについてはこちらでお願いします
【O3D】HTML5用 3D API WebGL 【Canvas:3D】
hibari.2ch.net/test/read.cgi/tech/1308761577/

468 名前:デフォルトの名無しさん mailto:sage [2011/08/01(月) 22:13:20.26 .net]
WebGLの話なんてしてないが

469 名前:デフォルトの名無しさん mailto:sage [2011/08/01(月) 23:26:04.83 .net]
サイトを開くだけで分散コンピューティングに参加…胸熱。

470 名前:デフォルトの名無しさん mailto:sage [2011/08/02(火) 10:29:42.77 .net]
www.infoq.com/jp/news/2011/07/WebCL

これか
確かにブラウザ上で並列処理する必要性がよくわからんな

471 名前:デフォルトの名無しさん mailto:sage [2011/08/02(火) 14:03:26.64 .net]
頻繁にメインメモリと同期するような計算にはJavaScriptが遅くて使い物にならないだろうし
重い処理を単発でやるだけならサーバーでやればいいだけな気がする
わざわざWebで激しく環境依存するようなことをやる意味が分からん



472 名前:デフォルトの名無しさん mailto:sage [2011/08/02(火) 15:29:27.41 .net]
技術というのは、早い者勝ちでなぁ
仕様などをはやめに決めておかないと、特許やらパクリと言われたりとかなんやらで面倒な事になってしまうんだ
あと名を残したい人が作ったりするんだ
役に立つとか使えるとか、そんなの関係無いんだ

473 名前:デフォルトの名無しさん mailto:sage [2011/08/02(火) 16:18:14.25 .net]
それはわかるんだが、特許を取るタイミングとかが難しいよな
取得にも維持費もかかるし、早すぎると普及した一番儲かる時期に特許権が切れて利益にならないとか

まー特許引き延ばしって裏技もあるけど

474 名前:デフォルトの名無しさん mailto:sage [2011/08/02(火) 19:41:55.79 .net]
まあ、あれや
OpenCL CはJITやから、LL言語からでもグルーライブラリを組めば簡単に使える。
そら、試してみたくもなるわな。
しかし、実際はOpenCL Cを使いこなさなあかんわけで、それほどハードルが低いわけやないと。

んで、環境依存しまくりいうけど、マルチコアプロセッサ用のOpenCLライブラリもIntel, AMDから出てるわけで、もはや大概の環境でOpenCLは使えまっせ。

475 名前:デフォルトの名無しさん mailto:sage [2011/08/03(水) 01:09:07.14 .net]
ブラウザで超広大なライフゲーム

476 名前:デフォルトの名無しさん mailto:sage [2011/08/04(木) 04:52:42.94 .net]
APP SDK 2.5 で BFI_INT が使われるようになったけど、
bitselect() 使うとだめで、 (x & 0xf0f0f0f0) | (y & 0x0f0f0f0f) の型だと OK みたい。

477 名前:デフォルトの名無しさん mailto:sage [2011/08/04(木) 18:42:12.38 .net]
CAL ILコンパイラはもう誰もメンテできないんだろうな。BFI_INT を付け足すのがそんなに苦痛かね?
AMDはLLVMのラデバックエンドに挑戦しているようだけど、果たして新アーキに切り替わる前に
モノにできるんだろうか?

478 名前:デフォルトの名無しさん mailto:sage [2011/08/04(木) 23:21:28.44 .net]
OpenCLってCellみたいなプロセッサが普及しないと面白くないよね。
GPU型の抽象化だけじゃ。

479 名前:デフォルトの名無しさん mailto:sage [2011/08/05(金) 09:45:21.35 .net]
そのCellがコケたからなー
発想が速すぎた
今の技術で開発していれば、大人気だったかもしれないのに

480 名前:デフォルトの名無しさん mailto:sage [2011/08/06(土) 00:40:12.65 .net]
i7であえてOpenCL

481 名前:デフォルトの名無しさん mailto:sage [2011/08/06(土) 02:51:44.01 .net]
OpenCLのアプリを配布するときってAMDとnVidiaで別に実行ファイル作らなきゃいけないの?



482 名前:デフォルトの名無しさん mailto:sage [2011/08/06(土) 03:08:35.23 .net]
何でんなこと思った。

483 名前:デフォルトの名無しさん mailto:sage [2011/08/06(土) 03:57:16.00 .net]
今のところ、OpenCLなアプリケーションを"配布"するための良い方法は無い。(除 MacOS X)

484 名前:デフォルトの名無しさん mailto:sage [2011/08/06(土) 07:16:37.83 .net]
*.cl カーネルを露出させるのがそんなに恥ずかしいか!

難読化するだけだったら gzip してバイナリに埋め込んどくのが楽かもね。

485 名前:デフォルトの名無しさん mailto:sage [2011/08/07(日) 08:06:38.42 .net]
nVidiaから最新ドライバでOpenCL1.1対応とかメールきたんだけど、
ドライバとりに行ったらLinux用はまだじゃねーか。
ざけんなー。

486 名前:デフォルトの名無しさん mailto:sage [2011/08/07(日) 08:08:49.28 .net]
>>480
恥ずかしいというよりノウハウの塊だから出したくない人はいるだろう。

487 名前:デフォルトの名無しさん mailto:sage [2011/08/08(月) 05:22:20.10 .net]
Windows用OpenCL1.1ドライバを試してみたが、
どうも上手く動かないのでもう一寸待った方が良いと思う

488 名前:デフォルトの名無しさん mailto:sage [2011/08/09(火) 01:37:46.04 .net]
>>428
門外不出のノウハウ=世間一般には知られていない。
つまり各分野

489 名前:の研究者すら出し抜く大発見ってことだぞw []
[ここ壊れてます]

490 名前:デフォルトの名無しさん mailto:sage [2011/08/11(木) 20:59:03.48 .net]
>>484
ノウハウが全て開示されているとでも思っているのか?

491 名前:デフォルトの名無しさん mailto:sage [2011/08/11(木) 22:05:51.96 .net]
世間一般に知られていなければ十分じゃん



492 名前:デフォルトの名無しさん mailto:sage [2011/08/12(金) 21:31:49.60 .net]
世間一般に知られないようにするためにカーネルを晒したくないわけだろ

493 名前:デフォルトの名無しさん mailto:sage [2011/08/14(日) 01:34:57.52 .net]
>>473
CAL ILコンパイラ自体はいまだに新命令追加されているよ。
64bitINT除算とかはドキュメント化までされている。
ドキュメントにはなっていないけど、wave_idとかは
Appendix Bにはこっそり追加されて、実際テキストで
1OP命令として書けば使える。


でもBFI_INTは置いてけぼり

494 名前:デフォルトの名無しさん mailto:sage [2011/08/14(日) 09:57:57.76 .net]
マスクが定数なら、iand,iand,ior で BFI_INT になるとおもうけど、
そうじゃないときになー。

495 名前:デフォルトの名無しさん mailto:sage [2011/08/31(水) 17:10:54.28 .net]
初心者です。
Cで書かれた演算プログラムを高速化させたいと思っています。
この元のプログラムをホストプログラムとして、OpenCL用に書き換えて、高速化させたい演算部分を引っこ抜いてカーネルプログラムとして書き換えるというやり方でいいのでしょうか?

また、このようなCのプログラムをOpenCL用に書き換える作業を解説しているサイトや書籍はあるのでしょうか?

当方LINUXでのプログラミングをしております。

496 名前:デフォルトの名無しさん mailto:sage [2011/08/31(水) 21:06:58.51 .net]
並列化はアルゴリズムをかなり選ぶよ。GPGPUなんて尚更。
まず普通にマルチスレッドで並列化してみたら?

497 名前:デフォルトの名無しさん mailto:sage [2011/09/15(木) 10:02:24.21 .net]
opencl用の自動並列化コンパイラってある?

498 名前:デフォルトの名無しさん mailto:sage [2011/09/16(金) 05:07:07.00 .net]
>>490
そのやりかたでいいさ。
2重ループを1重ループ2つにわけるとか。
あとはほとんどC言語と同じだから書き換えるところも少ないんじゃないか?


499 名前:デフォルトの名無しさん mailto:sage [2011/09/16(金) 18:41:47.81 .net]
「Ivy Bridge」プロセッサ、「OpenCL 」をサポート

500 名前:デフォルトの名無しさん mailto:sage [2011/09/16(金) 23:43:18.97 .net]
OpenCLを使ったおぉっとなるアプリってありますか?

501 名前:デフォルトの名無しさん mailto:sage [2011/09/17(土) 08:21:50.52 .net]
うわぁってなるあぷりならある



502 名前:デフォルトの名無しさん mailto:sage [2011/09/17(土) 08:36:22.90 .net]
たとえば?

503 名前:デフォルトの名無しさん mailto:sage [2011/09/17(土) 18:08:09.83 .net]
まってて、ちょっと調べてくる

504 名前:デフォルトの名無しさん mailto:sage [2011/09/18(日) 07:57:32.03 .net]
つ「www.geeks3d.com/20110822/webcl-nokia-extension-for-firefox-6-and-kernel-toy/

505 名前:デフォルトの名無しさん mailto:sage [2011/09/23(金) 23:20:48.33 .net]
なんでAMDのOpenCLってこんなにサポートが糞なの?

506 名前:デフォルトの名無しさん mailto:sage [2011/09/24(土) 06:50:26.05 .net]
OpenCLに関しちゃAMDが一番マシじゃね。

507 名前:デフォルトの名無しさん mailto:sage [2011/09/24(土) 15:07:51.08 .net]
>>500
ヒトイネ

508 名前:デフォルトの名無しさん mailto:sage [2011/09/27(火) 22:25:38.34 .net]
>500
バグレポートしたら、ちゃんと対応してもらえたよ?

509 名前:デフォルトの名無しさん mailto:sage [2011/10/03(月) 02:47:52.78 .net]
もしかして関数呼び出しはOpenCL Cで記述出来ない...?
cudaでいう__device__のように記述出来るかと思ったらそんなことはないのかひどいぞこれは

510 名前:デフォルトの名無しさん mailto:sage [2011/10/03(月) 02:54:10.32 .net]
そんなことはなかったすみませんでした

511 名前:デフォルトの名無しさん mailto:sage [2011/10/03(月) 22:18:02.72 .net]
>>503
バグレポートなんか出来るの?



512 名前:デフォルトの名無しさん mailto:sage [2011/10/04(火) 00:03:56.22 .net]
コンパイル時に死ぬバグだけどコンパイラのサポート窓口は分からなかったので
KernelAnalyzerのAboutにあるメアドに「KernelAnalyzerが死ぬんだけど」
って送った。(嘘はついてないつもり)
コンパイラチームに転送してくれて11.10/2.6で直るって連絡来たよ。
実行時に死ぬのとか結果が変なのもForumに書けば結構みてくれるよ。

513 名前:デフォルトの名無しさん mailto:sage [2011/10/05(水) 23:41:21.79 .net]
>>507
Forumに書いても放置が多いみたいで困る。。

514 名前:デフォルトの名無しさん [2011/10/06(木) 05:23:23.41 .net]
俺が今書いてるJavaプログラムの中で
2つのbyte配列に対する100〜5万回くらいの論理積(単にforループで2つの配列の論理積をとる)が頻繁に発生するんだけど
そういうとこでOpenCL使ったら高速化期待できる?
まとめて100万回くらいならGPUが速そうなんだけど
100回で済むとかだとオーバーヘッドがでかいのかなと思って躊躇してる

515 名前:デフォルトの名無しさん mailto:sage [2011/10/06(木) 18:38:50.63 .net]
aparapiでも使ってみたら?


516 名前:デフォルトの名無しさん mailto:sage [2011/10/17(月) 07:38:26.26 .net]
C++のラッパーを最近使い始めたけどかなり使いやすいね。
とくにメモリ解放が楽になった。

517 名前:デフォルトの名無しさん mailto:sage [2011/11/02(水) 21:22:05.07 .net]
OpenCLは構造体のメモリオブジェクトを作成できますか?

CUDAだったら
typedef struct {
float *num;
} DATA;

DATA data;

cudaMalloc( &data.num, sizeof(float) * 1024 );

みたいにできるんですけど

518 名前:デフォルトの名無しさん mailto:sage [2011/11/02(水) 23:38:01.05 .net]
>>512
例が意味不明
それじゃGPU上に単なるfloat型の配列を確保して、
そのdeviceポインタをCPUの構造体メンバに代入しているだけ。

OpenCLでもGPU上にfloat型の配列をbufferとして確保して、
それをCPUの構造体メンバに代入することは出来る。
メンバ変数の型はfloat*では無く、cl_memだけどね。

でも、その配列自体をGPU側にコピーして、
間接アクセスしようとするとCUDAとOpenCLでは全く違う。

OpenCLではGPU上のポインタは1つのカーネル呼び出し内でしか
一貫性が保証されないから、ポインタを保存しておいて
次のカーネル呼び出しで使うという事が不可能
(cl_memはハンドルに過ぎず、OpenCLのランタイムは
GPU上のオブジェクトを再配置する可能性があるから)
まあ、やるとしたら大きなbufferをメモリプールとして生成して、offsetをポインタの代わりに保存
後でアクセスするときにはbufferを引数に渡して、それにoffset足した位置を触るという
形にするしかない。

まあ、CUDAでも実際にはこの方がCPUとGPUで同じデータを扱えるし、
性能面でも悪くないやり方なんだけど。


519 名前:デフォルトの名無しさん mailto:sage [2011/11/03(木) 01:23:08.95 .net]
ラデ外付けGPUに大量にデータを送りたいんだけど、1/4までって制限どうにかならないの?256MBまでしか送れん

520 名前:デフォルトの名無しさん mailto:sage [2011/11/03(木) 10:05:29.53 .net]
いや、1/4なのではなく 256MBまでという制限。
sizeof(float4) * 4096 * 4096.

521 名前:デフォルトの名無しさん mailto:sage [2011/11/03(木) 10:38:23.81 .net]
>>515
これって変えられないの?



522 名前:デフォルトの名無しさん mailto:sage [2011/11/04(金) 11:46:02.78 .net]
馬鹿には無理

523 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 02:56:58.68 .net]
並列化させるのも結構苦労するよね。
簡単な演算ならいいけど、データ依存がちょっとでも複雑になると
動かすカーネルの順番とか数とか
気にしなきゃいけないことイパーイ

524 名前:デフォルトの名無しさん mailto:sage [2011/11/15(火) 23:57:17.03 .net]
OpenCL 1.2
www.khronos.org/news/press/releases/khronos-releases-opencl-1.2-specification

525 名前:デフォルトの名無しさん mailto:sage [2011/11/16(水) 00:44:39.04 .net]
NVIDIAのドライバがカオスになるな
gdgdの果てに漸く1.0対応が落ち着いたと思ったら
28x世代の1.1対応でまたおかしくなってまだ終息してないのに

526 名前:デフォルトの名無しさん mailto:sage [2011/11/16(水) 01:54:02.46 .net]
彼らにはCUDAがあるからなぁ。。
頑張る必要が無いのだろう。

527 名前:デフォルトの名無しさん mailto:sage [2011/11/19(土) 02:59:11.80 .net]
nVidiaはどこに向かっているんだ…

OpenACC : 新しい並列コンピューティングのためのプログラミング環境
www.shader.jp/?p=466

528 名前:デフォルトの名無しさん mailto:sage [2011/11/19(土) 19:26:18.05 .net]
それはOpenMPのGPU版みたいなものなので、CUDAやOpenCLとは衝突しない


529 名前:デフォルトの名無しさん mailto:sage [2011/11/19(土) 20:50:05.10 .net]
AlteraがFPGAでOpenCLを、とか言い出してて面白そうな感じ。

530 名前:デフォルトの名無しさん mailto:sage [2011/11/19(土) 21:07:31.87 .net]
C++AMPのNVIDIA版ぽいね
まぁC++AMPはNVIDIAでも動くけど

インライン記述の世代でどれが主導権を握れるかは気になるところ

531 名前:デフォルトの名無しさん mailto:sage [2011/11/19(土) 23:38:32.61 .net]
MSは最終的にC++AMPをオープンにすると言ってはいるが、結局オプソ系コミュニティがどう動くかだな
CPUの並列ライブラリはMSはOpenMPからPPL推し、オプソ系は主にTBBと別れてしまっているので、
GPUではどうにかして歩調を揃えてもらいたいところ

ただ、一応オープン化を標榜するC++ AMPに介入するわけでもなくかといってCUDAの様に自社GPU専用に囲い込むわけでもなく、
立ち位置の被るオープン規格を立ち上げたNVIDIAの意図が分からんといえば分からん
GPUに全てを賭けるメーカーとしては握れる手綱は全て握っておきたい、という事なのかな



532 名前:デフォルトの名無しさん mailto:sage [2011/11/20(日) 01:50:41.74 .net]
>>523
使う側は思いっきり衝突するだろ

533 名前:デフォルトの名無しさん mailto:sage [2011/11/20(日) 02:32:04.15 .net]
>>522
PGI Accelerator が元になっているのかな?
www.softek.co.jp/SPG/Pgi/Accel/index.html

534 名前:デフォルトの名無しさん mailto:sage [2011/11/22(火) 14:27:24.23 .net]
インタビューで簡単にOpenACCについてふれてる
insidehpc.com/2011/11/21/cuda-reaches-5th-birthday-openacc-ramps-up/

535 名前:デフォルトの名無しさん mailto:sage [2011/11/22(火) 23:50:42.88 .net]
カーネルの実行順位はイベントで指定できる
OpenCLのバイナリコンパイルと読み込みうまくできない・・・

バイナリなしだと環境自由になるけど
ソース丸出しになるから計算高速化くらいしか使い道ないね

536 名前:デフォルトの名無しさん mailto:sage [2011/11/25(金) 00:37:00.99 .net]
1.2の新機能
www.streamcomputing.eu/blog/2011-11-19/difference-between-opencl-1-2-and-1-1/

537 名前:デフォルトの名無しさん mailto:sage [2011/11/25(金) 22:22:16.51 .net]
>>531
ダイナミックに追加が変更があったのって、DirectX関係だけだな。。。

538 名前:デフォルトの名無しさん mailto:sage [2011/11/28(月) 10:27:25.45 .net]
なんかもーGPUメーカーは独自に動いてるし、開発する気無いだろw

539 名前:デフォルトの名無しさん mailto:sage [2011/11/29(火) 19:35:56.69 .net]
intel CPU制限多すぎ・・・SSE4.1対応って書いておいてくれよ・・・
core2 quad全部対応してるかのようなのはやめてほしい・・・
XPで使えないのはちょっと困る・・・

540 名前:デフォルトの名無しさん mailto:sage [2011/11/29(火) 23:11:26.28 .net]
SSE見逃してたごめん

541 名前:デフォルトの名無しさん mailto:sage [2011/11/30(水) 00:12:08.31 .net]
SSEぐらいOpenCL使わなくってもいいじゃん



542 名前:デフォルトの名無しさん mailto:sage [2011/11/30(水) 00:50:42.75 .net]
>>536
OpenCLの機能実現するのに都合がいい命令がSSE4.1にあるからインテルの開発ツールはSSE4.1対応の世代以降でないと使えないんだよ
どうせ普及する頃には古い世代のCPUいなくなってるよねって方針なんだろ

543 名前:デフォルトの名無しさん mailto:sage [2011/11/30(水) 00:58:02.95 .net]
GPUが使えない環境での互換性用と割り切って広くサポートしてくれたほうがまだ有用なのにな

544 名前:デフォルトの名無しさん mailto:sage [2011/12/05(月) 06:55:31.93 .net]
構造体そのままカーネルに放り投げられない・・・
x.yに配列分けなくちゃだめか・・・
GPU正直CUDAのほうが楽だよね・・・
CPUとGPU同時並列に魅力感じてたけど
両方ともスレッドが少なすぎて・・・

545 名前:デフォルトの名無しさん mailto:sage [2011/12/05(月) 09:48:13.49 .net]
なにいってるんだ?

546 名前:デフォルトの名無しさん mailto:sage [2011/12/05(月) 11:51:31.75 .net]
構造体 a
int x;
int y;
の配列をそのままメモリバッファにコピーしても
うまくいかなかったので・・・
AMDのカーネルアナライザーでエラーがでてたんです
if(a[id].x-a[id].y){}
結局配列分割してコピーしました・・・

547 名前:デフォルトの名無しさん mailto:sage [2011/12/05(月) 12:04:37.78 .net]
組み込みのint2でいいじゃない。


548 名前:デフォルトの名無しさん mailto:sage [2011/12/05(月) 16:36:44.62 .net]
そうですね
それで組み込んでみます

549 名前:542 mailto:sage [2011/12/05(月) 21:49:58.78 .net]
>>543
まず無いだろうけど、別スレッドで
同じ添え字のxとyをバラバラに更新すると嵌るよ。


550 名前:543 mailto:sage [2011/12/06(火) 04:05:54.65 .net]
>>544
xを固定してyの値すべて計算して次のxへという
九九を生成するようなマニアックな使い方をしてるんです・・・

551 名前:542 mailto:sage [2011/12/06(火) 07:51:19.62 .net]
それなら分けた方がいいと思う。



552 名前:543 mailto:sage [2011/12/06(火) 09:23:20.52 .net]
そうしてみます!

553 名前:デフォルトの名無しさん mailto:sage [2011/12/07(水) 22:41:57.13 .net]
ふう・・・ついに完成しました
ちまちま25%使うよりフルロードはいいですね
ただ、オーバーヘッドがいくらあるからはわかりませんが・・・

554 名前:デフォルトの名無しさん mailto:sage [2011/12/08(木) 07:31:00.39 .net]
256MBの制限に引っかかって処理が止まるorz
これの上限増やせないのか?

555 名前:デフォルトの名無しさん mailto:sage [2011/12/08(木) 10:09:58.25 .net]
>>549
グローバルメモリが足りない・・・のかな?
ttp://www.ozone3d.net/gpu_caps_viewer/
これで確認してみて

それかワークスレッドの設定が悪いのかも

556 名前:デフォルトの名無しさん mailto:sage [2011/12/08(木) 11:03:39.84 .net]
>>550
なんでダメか分かった、ありがとう
ローカルメモリ32kbしかないのに2mb使おうとしてたwww

557 名前:デフォルトの名無しさん mailto:sage [2011/12/08(木) 14:28:54.91 .net]
>>551
使い捨てる変数の宣言くらいがちょうどいいよ
NVIDIAはローカルメモリ使わないと倍ぐらい遅くなるけど
他はそうでもないから(OpenCL入門に比較があったよ)
グローバルで問題ないと思うよ

558 名前:デフォルトの名無しさん mailto:sage [2011/12/15(木) 20:39:38.90 .net]
www.4gamer.net/games/076/G007660/20111214033/

おまいらこれからもOpenCLにしがみついて行くの?

559 名前:デフォルトの名無しさん mailto:sage [2011/12/15(木) 20:44:38.54 .net]
CUDAはGPUしかできないけど一度により多くの処理ができる
OpenCLはCPUとGPUを同時並列処理ができるのが魅力
どっちにも特化した特性があるからプログラムしだいだよ

560 名前:デフォルトの名無しさん mailto:sage [2011/12/15(木) 22:16:31.17 .net]
GPUには留まらない図が載ってるよ、ヌフォの所に

561 名前:デフォルトの名無しさん mailto:sage [2011/12/15(木) 22:40:09.72 .net]
もうGPU固有じゃなくなってきたのね・・・
カーネル丸出しのCLは論文すら少ない・・・



562 名前:デフォルトの名無しさん mailto:sage [2011/12/26(月) 03:28:48.61 .net]
引数の渡し方が面倒なんだよなー
思わぬところでバグが出たりする

563 名前:デフォルトの名無しさん mailto:sage [2012/01/18(水) 10:01:49.46 .net]
openclを実用的に使うにはどんな環境がおすすめでしょうか

564 名前:デフォルトの名無しさん mailto:sage [2012/01/18(水) 10:11:34.51 .net]
いつでもCUDAに逃げられる環境

565 名前:デフォルトの名無しさん mailto:sage [2012/01/18(水) 22:05:36.88 .net]
nVidiaってこと?

566 名前:デフォルトの名無しさん mailto:sage [2012/01/19(木) 09:51:18.68 .net]
グラフィックボードは倍精度不動小数点数(cl_amd_fp64)が利用可能な
Radeon HD 7900、6900、5900/5800 シリーズがおすすめ

blog.tommy6.net/archives/74


567 名前:デフォルトの名無しさん mailto:sage [2012/01/19(木) 16:52:31.76 .net]
宗教戦争が始まりそうだな

568 名前:デフォルトの名無しさん mailto:sage [2012/01/19(木) 17:05:38.23 .net]
>>561
紹介thx

569 名前:デフォルトの名無しさん mailto:sage [2012/01/19(木) 18:25:09.26 .net]
どうせおまえらめんどくさい組み込み関数なんか使わないだろってことか?

570 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 19:34:34.31 .net]
GCNでアセンブリが変わったのか、動かなくなってしまった・・・

571 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 02:58:13.00 .net]
変わる以前にGCN対応ドライバ&ランタイムまだ出てないでしょ
CCC12.1Previewが出回ってるからそれ付属のSDKランタイムなら動くんじゃないの



572 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 03:08:02.37 .net]
Kernel AnalyzerもTahiti対応版出てないしな

573 名前:デフォルトの名無しさん [2012/02/01(水) 22:06:59.00 .net]
RADEONとGeforce、ガチンコ対決ではごっちが速いの?

574 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 22:33:40.43 .net]
ごっちかな

575 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 23:52:53.73 .net]
そもそもガチンコな応用でOpenCLってまともに実績あるの?

576 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 00:02:24.64 .net]
無ければなんだっての?

577 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 15:35:32.54 .net]
いや別に問題ない

578 名前:デフォルトの名無しさん [2012/02/10(金) 23:47:32.03 .net]
とりあえず齧る分には公式のプログラミングガイド買っとけばおk?

579 名前:デフォルトの名無しさん mailto:sage [2012/02/13(月) 02:50:23.08 .net]
OK
C言語と同じ


580 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 23:40:42.01 .net]
サブルーチンみたいにカーネルに直接引数渡して処理できればなぁ
アドレスを渡す時とかすげえ面倒。

581 名前:デフォルトの名無しさん mailto:sage [2012/02/23(木) 01:38:17.77 .net]
そんな気軽にあちこちで使うようなもんじゃないっしょ



582 名前:デフォルトの名無しさん mailto:sage [2012/03/08(木) 16:45:33.65 .net]
カーネルソース丸出しか
特定デバイス用にコンパイルしておかないと
いけないのがなあ

583 名前:デフォルトの名無しさん mailto:sage [2012/03/08(木) 16:57:57.20 .net]
大したことないやつほど隠したがる銭湯の法則

584 名前:デフォルトの名無しさん mailto:sage [2012/03/08(木) 22:38:56.05 .net]
BOINC的なもので使うと不正対策必要で、既知の答えも一緒に計算させたりして対策するんだけどエコじゃないて悩ましいよ

585 名前:デフォルトの名無しさん mailto:sage [2012/03/11(日) 01:23:31.48 .net]
それなら同じWU他のやつに配って結果一致したやつだけ採用、
合わなかったら更に配布して一致した方採用でいいんでないかね
どのみち普通にやったって計算エラーになるのもいるし

586 名前:デフォルトの名無しさん mailto:sage [2012/03/11(日) 02:45:56.59 .net]
つーかカーネルがソースコードだから
改竄される恐れがなんて懸念するような
プログラムなら、どんな形態で配るにせよ
ディスアセンブルされりゃ同じだって。

587 名前:デフォルトの名無しさん mailto:sage [2012/03/17(土) 16:17:03.96 .net]
個人PCでスパコンの1/1000の計算速度(10テラFLOPS)だってよ。スゲーな。

dualsocketworld.blog134.fc2.com/blog-date-201202.html

588 名前:デフォルトの名無しさん mailto:sage [2012/03/18(日) 17:23:23.96 .net]
10TFLOPSっていうと10年前のスパコンの性能と同じくらいだな

589 名前:デフォルトの名無しさん mailto:sage [2012/03/18(日) 20:53:01.85 .net]
10年後に京の性能がご家庭に来るかというと、さすがにそうでもない感。

590 名前:デフォルトの名無しさん mailto:sage [2012/03/18(日) 21:28:00.64 .net]
物理的限界が近づいてきたからこれまでとは事情が違うよね。
無知な人は技術でなんとかなるって言っちゃうだろうけどw

591 名前:デフォルトの名無しさん mailto:sage [2012/03/18(日) 23:15:06.83 .net]
一般家庭にベクトル演算ってそんなに必要ない気が。。。



592 名前:デフォルトの名無しさん mailto:sage [2012/03/19(月) 10:47:53.21 .net]
O(n^2)の直接法のN体とか本当にベンチマーク以上の意味はないんだがな
実用コードはツリー法やFMM法を使う

593 名前:デフォルトの名無しさん mailto:sage [2012/03/19(月) 17:14:11.16 .net]
O(n^2)がツリー法だとO(n logn)に、FMMだとO(n)になるそうだ

www.kurims.kyoto-u.ac.jp/~kyodo/kokyuroku/contents/pdf/1084-12.pdf

594 名前:デフォルトの名無しさん mailto:sage [2012/04/13(金) 00:11:16.74 .net]
AdobeのCS6でOpenCLが使われているという噂を聞いたんだが、カーネルのソースコードとかどうやってるんだろうか

595 名前:デフォルトの名無しさん mailto:sage [2012/04/13(金) 03:29:06.78 .net]
>>589
Adobeのライセンス認証部分のコードだって、一緒にディスクに入ってるわけですよ。
どうにでもなる。

596 名前:デフォルトの名無しさん [2012/04/29(日) 15:57:09.88 .net]
Intel OpenCL SDKを使って開発をしようとしているのですが、CPUとGPUを非同期で
走らせる方法が分かりません。
サンプルなどないでしょうか?

597 名前:デフォルトの名無しさん mailto:sage [2012/04/29(日) 20:57:55.38 .net]
>>587
必ずしもそうでもない。もちろん限られたケースだが、空間ごとに時間刻みを変えたい場合とか、ツリー方とかだと複雑になりすぎてまだまだ難しい場合も多い。
そもそも、ツリーやFMMでも近傍場の計算は直接法だし、サンプルコードとして無意味ではない。



598 名前:デフォルトの名無しさん [2012/05/02(水) 10:33:58.88 .net]
>>591
CPU側を並列化してGPUを扱うスレッド/プロセスとCPU側の計算をするものに分ける
並列化、同期はお好みの方法で

599 名前:デフォルトの名無しさん mailto:sage [2012/06/27(水) 01:05:42.85 .net]
質問なんだけど今はAMD/nVidia/IntelどのSDKでビルドしても
AMD/nVidiaのドライバが入っている環境ならGPUが利用できるって理解でok?

600 名前:デフォルトの名無しさん mailto:sage [2012/06/27(水) 21:29:31.15 .net]
>>594
違うというか、根本的に違う

601 名前:デフォルトの名無しさん mailto:sage [2012/06/30(土) 22:46:38.04 .net]
>>594
理論上は合っているよ。
まあ、微妙に非互換だったり、ランタイムの
インストール方法など気を使わざるを得ないのが現実だが。



602 名前:デフォルトの名無しさん mailto:sage [2012/07/01(日) 01:24:59.44 .net]
>>595


603 名前:デフォルトの名無しさん mailto:sage [2012/07/01(日) 12:56:18.02 .net]
>>595


604 名前:デフォルトの名無しさん mailto:sage [2012/07/05(木) 01:16:06.38 .net]
GT440でclinfoしたら
Max compute units: 2
と出たんだけど、この2とGT440のCUDAコア96とはどういう関係にあるの?

605 名前:デフォルトの名無しさん mailto:sage [2012/07/05(木) 12:03:19.25 .net]
NVIDIAの場合
Max Compute unit = Streaming Multiprocessor(SM) = Streaming Multiprocessor eXtreme(SMX)

606 名前:デフォルトの名無しさん mailto:sage [2012/07/27(金) 10:28:17.75 .net]
CPUデバイスのランタイムを有効にするにはAMDかインテルのSDKをインストールしてもらうしかないの?
ランタイムだけのパッケージってある?

607 名前:デフォルトの名無しさん mailto:sage [2012/07/27(金) 11:10:16.02 .net]
>>601
Intel の Windows 用ならあるね。
AMD は知らん。

608 名前:デフォルトの名無しさん mailto:sage [2012/07/28(土) 14:23:52.35 .net]
software.intel.com/en-us/articles/vcsource-tools-opencl-sdk/
のダウンロードリストボックスのOpenCL CPU only runtime(Windows* OS)ってやつか。
見落としてた。ありがとう。

609 名前:デフォルトの名無しさん mailto:sage [2012/07/30(月) 20:27:19.07 .net]
CPUでCLやっても遅いだけで意味無いなぁ

610 名前:デフォルトの名無しさん mailto:sage [2012/07/30(月) 22:03:29.12 .net]
>>604
どんなプログラムなのかしらないけど、ボクが試したのは充分速かったけどなぁ。
いやまあ、GPUと絶対値を比べればもちろん遅いけど。w

611 名前:デフォルトの名無しさん mailto:sage [2012/07/30(月) 22:41:12.50 .net]
CPUでOpenCL使うとお手軽にSIMD+マルチコア使えるな。



612 名前:デフォルトの名無しさん mailto:sage [2012/07/30(月) 22:48:37.20 .net]
ベンチも取らずに知ったか

613 名前:デフォルトの名無しさん mailto:sage [2012/07/31(火) 00:12:55.35 .net]
ベンチと言えば Intel と AMD で比べてみたら、Intel のほうがかなり速かった。
いやまあ、その PC の CPU は Intel だったんだけど。w
AMD な CPU だと逆転したりするのかなぁ。

614 名前:デフォルトの名無しさん mailto:sage [2012/07/31(火) 07:48:58.72 .net]
>>606
お手軽じゃねーっつの。
CPUでSIMDとマルチコアを使いたいためだけにOpenCLを使つかうならアホだわ。



615 名前:デフォルトの名無しさん mailto:sage [2012/07/31(火) 10:50:46.32 .net]
phoronixのベンチ見る限りだとAMDのSDKの方が速そうだったけど

616 名前:デフォルトの名無しさん mailto:sage [2012/07/31(火) 18:30:47.41 .net]
少なくともカーネル部分はお手軽だよ。

素のCで使うと準備が面倒だが
C++のラッパーなら大した事は無い。


617 名前:デフォルトの名無しさん mailto:sage [2012/07/31(火) 22:46:48.26 .net]
OpenCL以外でSIMDに自動で対応してくれるのってなにかあるの?

618 名前:デフォルトの名無しさん mailto:sage [2012/08/01(水) 06:14:34.83 .net]
インテルコンパイラ使っとけ。
それかFortranだな。

619 名前:デフォルトの名無しさん mailto:sage [2012/08/01(水) 13:12:30.64 .net]
simdと言っているのがSSEのパックドなインストラクションのことでいいならgccでもOK。

620 名前:デフォルトの名無しさん mailto:sage [2012/08/01(水) 22:34:10.47 .net]
gccじゃ自動ベクトル化は皆無に等しいだろ。

621 名前:デフォルトの名無しさん mailto:sage [2012/08/01(水) 22:54:07.37 .net]
ちょっと前までSSEwとか思ってたけど
これだけ並列プログラミングが普及してきてAVX2とかみると考え変わる



622 名前:デフォルトの名無しさん mailto:sage [2012/08/01(水) 23:22:54.44 .net]
>>611
んなアホな
CL用のメモリとのやり取りが発生するだけ無駄だよ
正直、マルチコアを使いたいならMPIが一番速い。
通信含めても。
OpenMPもなんだかんだであまり速くないな。

>>612
PGI   はあまりコードの品質よくなかったな


623 名前:デフォルトの名無しさん mailto:sage [2012/08/02(木) 00:32:11.20 .net]
>>617
なんか解釈に誤解があるようだが。
マルチコアのどんなプログラムでもOpenCLで書けという話ではない。

OpenCLのカーネルとして記述できるような問題に
適用すれば、なんも考えずにSIMDもマルチコアも
使えるようになるし、そういう用途に限れば
OpenMPやMPIもしくはPOSIX threadとかで
真面目に書くよりお手軽だし、余程の玄人が
書くのでない限り素早く、速いコードが書ける。

CL用のメモリ云々言っておきながら、速度面で
マルチスレッドなOpenMPでなくマルチプロセスになる
MPIをすすめるあたり根本的に理解に問題があるような。
まあ、通信部分はintel MPIとかなら共有メモリ使うから
極端に不利にはならないけど、少なくともこれが最速とは行かない。

624 名前:デフォルトの名無しさん mailto:sage [2012/08/02(木) 00:45:08.79 .net]
てかさ、CL 用のメモリとのやりとりなんかしないよね?
いや、しないようにつくるよね????

>CPUでSIMDとマルチコアを使いたいためだけにOpenCLを使つかうならアホだわ。
うわ、アホって言われちゃった。てへ。

625 名前:デフォルトの名無しさん mailto:sage [2012/08/02(木) 01:31:56.84 .net]
OpenCLとMPIの並列化は全く別もんだし、
OpenCLとOpenMPの並列化もちょっと違う。
正直OpenCLのカーネルを書くくらいなら、
OpenMPを使った並列化の方が圧倒的に楽だわ。
OpenCLを使うメリットは複数のプラットフォームで動かすためだけだろ。


626 名前:デフォルトの名無しさん mailto:sage [2012/08/02(木) 06:37:43.98 .net]
無脳をさらすスレですか?

627 名前:デフォルトの名無しさん mailto:sage [2012/08/02(木) 07:45:55.61 .net]
>>619
CLデバイスとCPUは論理的に別物なんだからメモリ転送はいるだろ。

>>620
GPUがなければOpenMPなりMPIなりで並列動作しているというプログラムを作ればよい。
CPUの並列も面倒くさいのでCLでってのは手抜き杉

628 名前:デフォルトの名無しさん mailto:sage [2012/08/02(木) 08:05:46.59 .net]
>>622
CLで書くほうが手間がかかると思うが。。。
CPU用のコードとNVIDIA用のコード、ATI用のコードを用意するのはかなり大変だし。だからOpenCLが生まれたわけで。


629 名前:デフォルトの名無しさん mailto:sage [2012/08/02(木) 08:07:44.71 .net]
>>623
GPUがあればそっちをつかいたいのならCLを書くこと自体が手間とか言ってる場合じゃないだろ。
それ一本で済まそうというのが手抜きだっての。
CPUでCLつかっても無駄なオーバーヘッドが出るだけだし

630 名前:デフォルトの名無しさん mailto:sage [2012/08/02(木) 08:13:47.37 .net]
論理的に別なのはわかるけど
対象がCPUの時にはメモリコピーしないような実装になっててもおかしくないような気もする

631 名前:デフォルトの名無しさん mailto:sage [2012/08/02(木) 08:14:10.39 .net]
まあ、小さい規模のコードしか書いてない奴には分からんかもしれんが、
複数のハードウェアプラットフォームをそれぞれメンテしないといけなのは、
かなりの工数がかかるからな。
多少のパフォーマンスを犠牲にしても良いことなんて沢山あるんだよ。




632 名前:デフォルトの名無しさん mailto:sage [2012/08/02(木) 09:23:17.69 .net]
えぇ〜・・・・・・。
キミタチは実際につかったことないんだね?

ttp://software.intel.com/sites/landingpage/opencl/optimization-guide/index.htm
の Sharing Resources Efficiently とか読んでごらんよ。

633 名前:デフォルトの名無しさん mailto:sage [2012/08/02(木) 23:04:54.27 .net]
これは恥ずかしいw

634 名前:デフォルトの名無しさん mailto:sage [2012/08/03(金) 00:10:12.73 .net]
どれにレスしてんだか分からんレスがおおいな。

635 名前:デフォルトの名無しさん mailto:sage [2012/08/03(金) 00:34:42.14 .net]
このスレ、99割が誤爆レスだからな。

636 名前:デフォルトの名無しさん mailto:sage [2012/08/03(金) 19:43:05.27 .net]
>>630
> 、99割
0.99 割? 990% ?

どのスレに書こうとしてたの?

637 名前:デフォルトの名無しさん mailto:sage [2012/08/04(土) 01:06:20.28 .net]
だ ー か ー ら ー ぁ 誤 爆 で し ょ

638 名前:デフォルトの名無しさん mailto:sage [2012/08/08(水) 17:52:37.24 .net]
なんでこのスレこの板にあるんだ?

639 名前:デフォルトの名無しさん mailto:sage [2012/08/09(木) 01:30:40.64 .net]
OpenCLハードル高いなぁ
どの機材構成でどのプラットフォームでどう書けば速くなるか
検証すべき項目が多すぎる

640 名前:デフォルトの名無しさん mailto:sage [2012/08/09(木) 02:10:21.89 .net]
逆に考えるんだ
速さをあきらめればすべて解決する

641 名前:デフォルトの名無しさん mailto:sage [2012/08/09(木) 02:22:49.56 .net]
あちらを立てればこちらが立たずですなぁ



642 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 17:37:54.94 .net]
週あすwでAPUの記事載ってて、OpenCLで何でも高速に出来るように書いてたなぁw

643 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 23:05:10.52 .net]
write once, tune everywhere

644 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 23:06:13.71 .net]
anywhereだったか

645 名前:デフォルトの名無しさん mailto:sage [2012/08/16(木) 08:59:47.91 .net]
OpenCL1.2ではデバイス分割ができるみたいだけど
それまでってどうやって並列化してたの?
コマンドキューをCompute Unit分生成してたの?
それともclEnqueueNDRangeKernelがいい感じに並列化してくれてたの?

646 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 04:01:39.09 .net]
でっかく突っ込んだら普通にデスクトップがフリーズしてた。

647 名前:デフォルトの名無しさん mailto:sage [2012/08/21(火) 22:38:27.42 .net]
OpenCLで最速の構成教えて

648 名前:デフォルトの名無しさん mailto:sage [2012/08/22(水) 00:38:21.46 .net]
素晴らしいプログラマ

これに尽きるw

649 名前:デフォルトの名無しさん mailto:sage [2012/08/22(水) 09:45:30.14 .net]
>>642
Radeon の一番高いヤツをさせるだけさす。w

650 名前:デフォルトの名無しさん mailto:sage [2012/08/31(金) 15:37:24.77 .net]
APUより速いん?

651 名前:デフォルトの名無しさん mailto:sage [2012/09/06(木) 03:18:56.29 .net]
だれかOpenCLでOpenGL実装してくれ



652 名前:デフォルトの名無しさん [2012/09/08(土) 00:09:32.81 .net]
むしろOpenManko実装してくれ

653 名前:デフォルトの名無しさん mailto:sage [2012/09/08(土) 01:20:37.10 .net]
プロプライエタリですので

654 名前:デフォルトの名無しさん [2012/09/08(土) 18:07:21.58 .net]
OpenMankoはよ

655 名前:デフォルトの名無しさん mailto:sage [2012/09/08(土) 22:36:50.84 .net]
互換フリー0実装のKuperで我慢しとけ。

656 名前:デフォルトの名無しさん mailto:sage [2012/09/09(日) 23:25:50.57 .net]
Mankoは商用製品で我慢しろよ

657 名前:デフォルトの名無しさん mailto:sage [2012/09/20(木) 15:05:43.24 .net]
昔の日本はOpenだろ

658 名前:デフォルトの名無しさん [2012/09/27(木) 04:12:39.50 .net]
AMD Releases CodeXL Public Beta | SemiAccurate
semiaccurate.com/2012/09/25/amd-releases-codexl-public-beta/


659 名前:デフォルトの名無しさん mailto:sage [2012/10/05(金) 01:09:53.66 .net]
pc.watch.impress.co.jp/img/pcw/docs/563/431/g02.png

660 名前:デフォルトの名無しさん mailto:sage [2012/10/05(金) 01:15:43.73 .net]
engawa.2ch.net/test/read.cgi/poverty/1349151623/

661 名前:デフォルトの名無しさん mailto:sage [2012/10/05(金) 01:16:52.94 .net]
prohardver.hu/dl/cnt/2012-10/90356/results/handbrake.png




662 名前:デフォルトの名無しさん mailto:sage [2012/10/28(日) 20:13:53.12 .net]
意外と

663 名前:デフォルトの名無しさん [2012/11/30(金) 23:33:09.24 .net]
Khronos Releases Significant OpenCL 1.2 Specification Update | techPowerUp
www.techpowerup.com/176413/Khronos-Releases-Significant-OpenCL-1.2-Specification-Update.html

664 名前:デフォルトの名無しさん mailto:sage [2012/12/07(金) 11:27:13.90 .net]
OpenCLでパスワード解析
securityledger.com/new-

665 名前:25-gpu-monster-devours-passwords-in-seconds/ []
[ここ壊れてます]

666 名前:デフォルトの名無しさん mailto:sage [2012/12/20(木) 01:25:19.05 .net]
>>615
vetor extension記法でゴリゴリかく。
若しくは、-O3 -ftree-vectorize
但し、後者はまだまだ未熟なのは確かだね。

667 名前:デフォルトの名無しさん mailto:sage [2012/12/21(金) 09:03:58.99 .net]
最近OpenCLを本格的に始めたんだが、
OpenCLのいいところは、コンパイラを選ばない、
カーネル以外はC++で書けるといところかな。

CUDAだと同じことができるけど、ホスト側でNVCC以外使おうとするとちょっと面倒だ。
ただ、カーネルの最適化がコンパイラでもできるから、
パフォーマンスは出やすいな。

LLVMで最適化レベルって設定ができるのかな?

668 名前:デフォルトの名無しさん mailto:sage [2012/12/22(土) 01:07:39.90 .net]
>>661
アーキテクチャが何にでも対応できるが、
アーキテクチャによって最適なWARP(に相当するもの)の数が違ったり、
コアレセンスアクセスできる条件が違ったり、キャッシュの有無だったりで
結局はアーキテクチャ依存の最適化をしないと速くならないよ。

669 名前:デフォルトの名無しさん mailto:sage [2012/12/22(土) 02:28:20.85 .net]
場合によってはコンパイラのバージョン依存も。

670 名前:デフォルトの名無しさん mailto:sage [2012/12/24(月) 05:32:34.90 .net]
やっとCL使うネタが準備できた
楽しみだー

671 名前:デフォルトの名無しさん mailto:sage [2013/01/13(日) 19:49:11.31 .net]
Trinity APUで使ったらCPU使用率が50%(2コアなので1コアがフル稼働状態)になったが、こんなもんなの?
GPUで計算してるはずなんだが。



672 名前:デフォルトの名無しさん mailto:sage [2013/01/14(月) 05:46:41.04 .net]
ジョブの内容と数によるんでは。

673 名前:デフォルトの名無しさん mailto:sage [2013/01/14(月) 21:42:22.31 .net]
CUDA見たいに結果出るまでぽーりんぐしてんじゃないの?

674 名前:デフォルトの名無しさん mailto:sage [2013/01/14(月) 22:02:09.36 .net]
自分のマシンのFLOPS計るのはどのベンチがお勧め?

675 名前:デフォルトの名無しさん mailto:sage [2013/01/15(火) 00:36:48.35 .net]
クロックとシェーダの数を掛ければ。

676 名前:デフォルトの名無しさん mailto:sage [2013/01/15(火) 12:44:28.36 .net]
ちゃんとGPUで計算されてないだけじゃね
afterburnerかなんかでGPU側の使用率も見てる?

677 名前:665 mailto:sage [2013/01/20(日) 11:45:47.76 .net]
Catalystのバージョン上げたらCPU使用率下がりました

678 名前:デフォルトの名無しさん mailto:sage [2013/01/21(月) 06:12:45.45 .net]
AMDのOpenCL SDKはCPU(SSE)デバイスもサポートしてるから
そっちで動いてたってことかな

679 名前:デフォルトの名無しさん mailto:sage [2013/01/22(火) 00:13:17.77 .net]
デバイス取得時にGPUを指定すればそんな目に合うはずね〜が

680 名前:デフォルトの名無しさん mailto:sage [2013/01/22(火) 23:13:25.92 .net]
デバイスにCPU使ってたらCPU使用率100%になるんじゃないの

681 名前:デフォルトの名無しさん mailto:sage [2013/01/23(水) 00:21:18.43 .net]
>>674
特に設定しないとシングルコアだからならない



682 名前:デフォルトの名無しさん mailto:sage [2013/01/23(水) 01:32:16.04 .net]
CPU版はdevice fissionしないと使えるコア全部使わなかったっけ?

683 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 18:02:42.38 .net]
いくつか本読んで基礎的なことは
わかったんだけど、openclでmpegのエンコーダー
作ってみたいから何か参考になる情報ないかな

684 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 21:16:57.04 .net]
CUDAでこれだからOpenCLはチューニング大変だな
pc.watch.impress.co.jp/img/pcw/docs/584/977/html/7b_prometech_32.jpg.html

685 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 22:38:20.74 .net]
>>677
MPEGってどれよ?
MPEG4(H.264)のことならx264がSSE、AVXアセンブリ含むソースコードが読めるからオススメ

686 名前:デフォルトの名無しさん mailto:sage [2013/01/30(水) 22:41:00.14 .net]
試しに↓使ってみたんだがローカルメモリ使ったら速度が3割落ちた。
www.aocplan.com/gpgpu/gpgpu-benchmark

687 名前:デフォルトの名無しさん mailto:sage [2013/02/05(火) 22:18:38.26 .net]
OpenCLってHyper-Qみたいな機能ってあるでしょうか?

688 名前:デフォルトの名無しさん mailto:sage [2013/02/05(火) 22:28:21.47 .net]
>>678
アーキ毎にカーネルを書きなおさないと性能でないよ。

689 名前:デフォルトの名無しさん mailto:sage [2013/02/06(水) 21:46:06.32 .net]
各アーキテクチャごとの最適化資料ってある?

690 名前:デフォルトの名無しさん mailto:sage [2013/02/07(木) 05:31:00.88 .net]
AMDだとこれが詳しい。NVIDIAのだったらCUDAのマニュアルを読めばいい。
developer.amd.com/download/AMD_Accelerated_Parallel_Processing_OpenCL_Programming_Guide.pdf

691 名前:デフォルトの名無しさん mailto:sage [2013/02/11(月) 23:11:22.51 .net]
標準のC++に替わり今後はOpenCLが標準に確定したな
OpenCLでパフォーマンスが激向上するから当然か



692 名前:デフォルトの名無しさん mailto:sage [2013/02/12(火) 06:11:15.51 .net]
寝言は寝て言え

693 名前:デフォルトの名無しさん mailto:sage [2013/02/17(日) 21:21:57.05 .net]
>>684
ありがとう。VLIW4だとスレッド数1/4にして、1スレッドで4つずつ処理するようにしたら倍速になった。

694 名前:デフォルトの名無しさん mailto:sage [2013/02/18(月) 04:23:25.11 .net]
R600のISA解説したpdfもどっかにあって、あれ読むとKernel Analyzerの右側の命令が読めるようになって捗るぞ。

695 名前:デフォルトの名無しさん [2013/05/09(木) 04:25:55.54 .net]
Intel Releases SDK with OpenCL 1.2 Support for Intel Xeon Phi Coprocessors | techPowerUp
www.techpowerup.com/183718/intel-releases-sdk-with-opencl-1-2-support-for-intel-xeon-phi-coprocessors.html

696 名前:デフォルトの名無しさん mailto:sage [2013/05/10(金) 23:28:13.87 .net]
CUDAが動かない古いNvidiaのビデオカードでも
OpenCLなら動いたりするものなのでしょうか?

697 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 17:38:28.19 .net]
確かnvidiaがOpenCLサポートしているのは、
チップがGeforce8以降かつ、ドライバの対応も必要だったと思う。
でもgeforce8以降はほとんどCUDA(とPhysXが)乗ってたはず。
それ以前はサポートされていないから動かないんじゃないかな(機材とドライバがないから検証できん)

698 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 23:50:31.95 .net]
CUDAにせよ、OpenCLにせよ古いマシンでやろうとする奴はなんなんだ?
古いGPUじゃ大して効果がないし、アーキテクチャがどんどん変わって
いるから使えないものが多いのに。
最新のアーキテクチャでも1万円も出せばそれなりのものが買えるのになあ。

699 名前:デフォルトの名無しさん mailto:sage [2013/05/12(日) 10:11:53.81 .net]
研究目的なら最新ので良いけど、実用だと4年前に導入した
数百台の計算機で高速化したい、とかもあるからな。

700 名前:デフォルトの名無しさん mailto:sage [2013/05/13(月) 17:15:31.08 .net]
GeForce8以前って、どんだけ古いカード使っているんだよw
いろんな意味で、無理無理。

701 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 13:05:11.17 .net]
とりあえずGPGPU普及させたいならGPU各社ともミドルレンジ以下でFP64対応切るのやめてくんないかな
性能出るかどうかより使えたり使えなかったりってのが一番困る



702 名前:デフォルトの名無しさん [2013/06/05(水) 08:17:39.89 .net]
OpenCLのチューニングって、まずどのあたりから手を付ければいいかな?
ワークグループ分割数で結構変わるという話は聞くけど、やっぱり
おまかせより明示的に指定した方がいいんだろうか?

703 名前:デフォルトの名無しさん mailto:sage [2013/06/05(水) 09:35:33.06 .net]
おまかせとかやる気無さすぎだろう…
色々変えてみて速さを測れ。

704 名前:デフォルトの名無しさん mailto:sage [2013/06/05(水) 20:55:53.52 .net]
ハードに合わせて適当な値を選んでくれると思ってたんで自分で下手な値を設定するより
いいかと思ってたんだけど、たしかに明示的に指定した方がよくなるケースが多いですね。
目安としてはCL_DEVICE_MAX_WORK_GROUP_SIZEに合わせておけばいいんだろうか?
それ以外、これは押さえておけ、というようなチューニングポイントってありますか?

705 名前:デフォルトの名無しさん [2013/06/06(木) 22:37:43.71 .net]
アドレスモードが便利そうなのでイメージオブジェクトを使ってみようと思ったんだけど、
これって4ch固定なんですかね?できれば1chで使いたいんだけど。

706 名前:デフォルトの名無しさん [2013/06/17(月) 09:44:11.96 !.net]
>>698
> 目安としてはCL_DEVICE_MAX_WORK_GROUP_SIZEに合わせておけばいいんだろうか?

これだとスピードでないよ。
Radeonだったら>>684の最適化マニュアルを、NVIDIAだったらCUDAの
説明書を読め。

707 名前:デフォルトの名無しさん mailto:sage [2013/06/18(火) 23:31:21.64 .net]
つか、勉強目的でエミュレータみたいなのが欲しい
遅くていいから

708 名前:デフォルトの名無しさん mailto:sage [2013/06/24(月) 22:41:41.16 .net]
最近のハードなら何でも出来るだろ。
新しいの買えよ。それぐらい自己投資だ。

709 名前:デフォルトの名無しさん mailto:sage [2013/07/23(火) NY:AN:NY.AN .net]
ついに 2.0 で Dynamic Parallelism きちゃったじゃねぇか!

710 名前:デフォルトの名無しさん mailto:sage [2013/07/23(火) NY:AN:NY.AN .net]
nVidiaがいまだに1.1なのはどうにかならんのかな。

711 名前:デフォルトの名無しさん mailto:sage [2013/07/24(水) NY:AN:NY.AN .net]
CUDAがあるから、あまり積極的にやりたくないんじゃね?



712 名前:デフォルトの名無しさん mailto:sage [2013/08/01(木) NY:AN:NY.AN .net]
今AMDの環境で開発しているんだけど、NVIDIAの環境でもビルドできるよう
1.1の機能に限定することってできないんですかね?
CL_USE_DEPRECATED_OPENCL_1_1_APISみたいな。

713 名前:デフォルトの名無しさん [2013/08/18(日) NY:AN:NY.AN .net]
OpenGLとの連携やっている人いますか?
OpenGLのHGLRCからcl_device_idを得るのにclGetGLContextInfoKHRというのが
ありますが、これを呼ぶ際、properties引数にCL_CONTEXT_PLATFORMを含めないと
エラー(CL_INVALID_PLATFORM)になります。
Platformを決め打ちで入れてやれば成功はしますが、cl_device_idを得る前にそれが
含まれるcl_platform_idを本来どうやって求めるのでしょうか?

714 名前:デフォルトの名無しさん mailto:sage [2013/08/18(日) NY:AN:NY.AN .net]


715 名前:>>707
clCreateContext に渡した properties と同じもので GL context を1つに特定できるものを渡せって書いてあるだろうに
clGetGLContextInfoKHR で指定せずにエラーになるなら clCreateContext ではデフォルト値以外の cl_platform_id を指定したんだろう
gl_sharing が有効な CL context は作成済みなのになんで cl_platform_id だけ行方不明なんだよ
余所のライブラリが作った CL context に問い合わせたいなら clGetContextInfo で CL_CONTEXT_PROPERTIES
[]
[ここ壊れてます]

716 名前:デフォルトの名無しさん mailto:sage [2013/08/18(日) NY:AN:NY.AN .net]
回答ありがとうございます。
ただ、clCreateContextはclGetGLContextInfoKHRでデバイスを得た後に呼ぶことに
なると思うのですが?
手順は以下で間違ってますかね?

GLコンテキスト(HGLRC)作成
→clGetGLContextInfoKHRで関連付けられているCLデバイスを取得
→clCreateContextでCLコンテキストを作成

いずれにしても、どのデバイスを使っているかがわからないとプラットフォームも
決まらないと思うのですが。

717 名前:デフォルトの名無しさん mailto:sage [2013/10/24(木) 01:02:02.86 .net]
vloadn ってあるけど、直接ポインタを p[i] するのと速度違ったりするのか?

718 名前:デフォルトの名無しさん mailto:sage [2013/10/24(木) 21:28:52.21 .net]
vloadはアラインメントの制約がゆるい。要素でそろってればOK。
速度は実装によるだろうけど同じか制約がゆるいvloadのほうが少し遅い。

719 名前:デフォルトの名無しさん mailto:sage [2013/10/24(木) 22:48:45.60 .net]
なるほど。

アラインメントの制約のせいで、ちょっと冗長になってたあのコードとかを小さく綺麗に書き直せるかも。
これは良いことを知った。サンクス。

720 名前:デフォルトの名無しさん mailto:sage [2013/11/22(金) 19:43:38.99 .net]
Khronos Groupが「OpenCL 2.0」を完成、コンピュータビジョン向け「OpenVX 1.0」の暫定仕様も発表
sourceforge.jp/magazine/13/11/22/095200
https://www.khronos.org/news/press/khronos-releases-opencl-2.0

721 名前:デフォルトの名無しさん mailto:sage [2013/11/22(金) 19:46:35.85 .net]
タラタラ完成してんじゃねーよ



722 名前:デフォルトの名無しさん [2013/11/22(金) 20:47:48.41 .net]
OpenVXってのが気になる

723 名前:デフォルトの名無しさん mailto:sage [2013/11/25(月) 08:28:25.60 .net]
JOCLも、早く OpenCL 2.0 に対応しろよ

724 名前:デフォルトの名無しさん mailto:sage [2013/11/30(土) 20:57:20.27 .net]
OpenCLって初期化とかやたら面倒なんですが、
OpenGL に対する glfw や GLUT みたいなライブラリはないんですか?

勉強してみたい(というか、勉強しかけた)のですが、
計算処理を楽しむ前に挫折しそうです。

725 名前:デフォルトの名無しさん mailto:sage [2013/11/30(土) 21:26:47.63 .net]
あるけどない
独自API、英語のみのマニュアル…

初期化なんて一度書けば使い回しだからとりあえずやってみるべき

726 名前:デフォルトの名無しさん mailto:sage [2013/11/30(土) 22:18:44.90 .net]
マニュアルが英語なのは全く問題ないので紹介していただけないでしょうか。

それでも枝葉末節の部分が面倒であれば、今はそういうものだと諦め、
コピペで使い回してかんばります。


ただ、私はたとえば OpenGL 入門者に対して、同じ理由
つまり「初期化なんて一度書けば使い回しだから」という理由で
ウィンドウ作らせたり、レンダリングコンテキストを作らせたりはしたくないです。
使い回し
幸い OpenGL にはユーティリティライブラリがあり、入門者にはありがたいです。
なので OpenCL にも入門者用にきっと何かあるだろうと思っていました。

727 名前:デフォルトの名無しさん mailto:sage [2013/11/30(土) 22:34:05.19 .net]
OpenGL ほど広く使われていたらあっただろうね。

728 名前:デフォルトの名無しさん mailto:sage [2013/11/30(土) 22:53:53.35 .net]
NVIDIAやAMDのサンプルコードには簡単なユーティリティが入っているよ。
OpenGLみたいに糞面倒なわけじゃないから、わざわざGLUTみたいなものを
作ろうと思った人はいなかったんだろう。

729 名前:デフォルトの名無しさん mailto:sage [2013/12/01(日) 02:54:53.01 .net]
そんなに面倒か?
必要十分しかないと思うんだが

730 名前:デフォルトの名無しさん mailto:sage [2013/12/01(日) 03:12:45.40 .net]
CUDAの簡単さと比較すると面倒

731 名前:デフォルトの名無しさん mailto:sage [2013/12/01(日) 03:18:23.16 .net]
あほか



732 名前:デフォルトの名無しさん mailto:sage [2013/12/01(日) 03:47:08.42 .net]
c++binding使えば簡単じゃないか。
まあ、プラットフォーム選択する時点で
cudaには必要ない工程だが

733 名前:デフォルトの名無しさん mailto:sage [2013/12/01(日) 07:35:28.28 .net]
>>719
intelが最近OpenCLライブラリやGPU向けライブラリのプレビュー版を発表してる
ttp://software.intel.com/en-us/intel-ipp-preview
IPPはこれまで最適化済みCPUライブラリだったけど、それをGPUにも拡張しようとしてる模様

734 名前:デフォルトの名無しさん mailto:sage [2013/12/03(火) 07:13:40.30 .net]
>>726
ありがとうございます。

調べてみます。

735 名前:デフォルトの名無しさん mailto:sage [2013/12/03(火) 13:47:40.89 .net]
amd apu+linuxでaparapi経由で使ってみたんですが面白そうですね。
はるか昔に、javaで配列関係はどうしようかjniにでもしようかと悩んでたんですがこれでやっと悩みは解決できました。
java9.stream.parallelがopenclに対応してaparapiも不要になる(jvmと結合する)ようなので、openclを使えばjavaのままで配列のソリューションが得られるようです。
まだ触って4日ぐらいですが勉強がてらに、行列などの配列依存のライブラリを書き直してみようと思います。

736 名前:デフォルトの名無しさん mailto:sage [2013/12/30(月) 11:40:26.21 .net]
kaveriが販売される模様

737 名前:デフォルトの名無しさん mailto:sage [2014/01/11(土) 01:38:48.46 .net]
>>717
software.intel.com/en-us/vcsource/tools/opencl-sdk/clu-api
CLUとか
github.com/Computing-Language-Utility/CLU/blob/master/simple/simple.c
このぐらいに書ける。
使ったことはないので便利かどうかは知らない。

738 名前:デフォルトの名無しさん mailto:sage [2014/02/24(月) 15:19:36.59 .net]
Core iとグラボつんでグラボで画面表示しててもIntelHDでOpenCLの計算をさせることはできるのでしょうか

739 名前:デフォルトの名無しさん mailto:sage [2014/02/24(月) 16:36:29.14 .net]
遅くはなろうが計算は出来るでしょう

740 名前:デフォルトの名無しさん mailto:sage [2014/02/24(月) 17:04:11.19 .net]
あれ?遅くなる要因あるのでしょうか
使ってないIntelHDも使いたいというイメージだったのですが

741 名前:デフォルトの名無しさん mailto:sage [2014/02/24(月) 18:04:09.93 .net]
CPUでやったほうが速いってだけ



742 名前:デフォルトの名無しさん mailto:sage [2014/02/24(月) 18:14:29.38 .net]
CPUスレッドとは排他でしか使えないと言うことですか?

743 名前:デフォルトの名無しさん mailto:sage [2014/02/24(月) 18:17:43.70 .net]
732だけど、単純にIntelHDをグラボと取り違えただけだよ

744 名前:デフォルトの名無しさん mailto:sage [2014/02/24(月) 18:34:07.15 .net]
了解です

745 名前:デフォルトの名無しさん mailto:sage [2014/03/23(日) 07:57:03.89 ID:2/mKAdk3.net]
Ubuntu用のSDKはDebian GNU/Linuxで使えますか?

746 名前:デフォルトの名無しさん mailto:sage [2014/03/24(月) 20:46:02.33 ID:+qxUA/lQ.net]
>>733
俺も今日勉強始めたばっかだから実態よく分からんが、
規格ミニマムだとGPUで実行するバイナリを、
プログラム実行時に動的にコンパイルしてマウントする場合があるらしく、
それだとコンパイルのオーバーヘッドで遅くなりそう。

実行時にコンパイルせず事前にコンパイルしたバイナリを使うこともできるそうで
NVidia, AMDあたりはLLVMで動いてるからまず大丈夫だろうけど、HD Graphicsはどうなるんだろうか?

747 名前:デフォルトの名無しさん mailto:sage [2014/04/04(金) 10:41:37.63 ID:YtPgho8U.net]
CentOSにAMDのドライバを入れることに成功したけど、Debianには入らなかった。

748 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 21:53:33.92 ID:e3QPM/2Y.net]
GPU持ってるCPUを使っているとか?

749 名前:741 mailto:sage [2014/04/23(水) 22:38:07.40 ID:Xxk46iNW.net]
はい、haswell(i7-4771)を使っています。
その他のグラフィックボードは積んでいません

750 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 23:16:57.80 ID:RpkkzUGi.net]
Platformの数とデバイスの数はイコールじゃない。
デバイスはCPUとGPUの2個見つかるはず。ちなみに内蔵かどうかは関係ない。
気になるならclGetPlatformIDs/clGetPlatformInfoで見てみりゃいい。

751 名前:741 mailto:sage [2014/04/23(水) 23:39:22.71 ID:Xxk46iNW.net]
はしょって書くと以下のように2回出力、Platform IDが一緒でプログラムなどでcl::Platform::getをすると
2個で返ってきます。(DeviceはALLで情報をとってもGPUしか返ってきません。CPUでDeviceをとろうとするとエラーが出ます)

Platform Name: Experiment Intel Gen OCL Driver
Platform ID: 0x7f6ee0ba1a40
Name: Intel(R) HD Graphics Haswell M
Vendor: Intel
Device OpenCL C version: OpenCL C 1.1 beignet 0.8.0
Driver version: 0.8.0
Profile: FULL_PROFILE
Version: OpenCL 1.1 beignet 0.8.0

Platform Name: Experiment Intel Gen OCL Driver
Platform ID: 0x7f6ee0ba1a40
Name: Intel(R) HD Graphics Haswell M
Vendor: Intel
Device OpenCL C version: OpenCL C 1.1 beignet 0.8.0
Driver version: 0.8.0
Profile: FULL_PROFILE
Version: OpenCL 1.1 beignet 0.8.0



752 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 23:55:44.68 ID:TUgA9FPl.net]
Platform数はドライバの数
汎用のドライバとIntelチューンのドライバの2つが入っていたら2つのプラットフォームが出てくる
少なくともWindowsだとそんな感じ

あと745の結果でPlatformIDが同じなのはおかしい
多分745のプログラムはバグってる

753 名前:741 mailto:sage [2014/04/24(木) 00:06:20.94 ID:T0adDPXi.net]
ドライバの数ですか・・・Debianのパッケージを入れる時にたしかに
汎用ローダとか言うのとintelドライバを入れた記憶があります
それで2つ出ているのか、入れたのは以下のパッケージだったような

opencl-headers - OpenCL (Open Computing Language) header files
beignet - Intel OpenCL library
beignet-dev - Intel OpenCL library
ocl-icd-dev - Development files to build a ICD Loader
ocl-icd-libopencl1 - Generic OpenCL ICD Loader
clinfo - Query OpenCL system information

754 名前:デフォルトの名無しさん mailto:sage [2014/06/26(木) 07:45:11.00 ID:DsGyZECt.net]
>>717
cl.hpp使えばそんな難しくないだろ

qa.atmarkit.co.jp/q/2899

755 名前:デフォルトの名無しさん mailto:sage [2014/06/26(木) 08:39:51.72 ID:rajeiAxv.net]
デフォルトのコンテキストやキューが追加されたのはOpenCL1.2からだから
NVIDIAじゃ使えないことに注意な。

756 名前:デフォルトの名無しさん mailto:sage [2014/06/26(木) 12:05:53.66 ID:u/fLSVr/.net]
>>747
// OpenCL側に結果を書き込む領域を作成する
const size_t
length = 0x10;
cl::Buffer
array( CL_MEM_READ_ONLY, length * sizeof( float ) );

( ´,_ゝ`)

757 名前:デフォルトの名無しさん mailto:sage [2014/06/26(木) 22:35:19.78 ID:BVAAIzQv.net]
>>749
答えといてやれよ。

758 名前:デフォルトの名無しさん mailto:sage [2014/08/29(金) 13:36:44.60 ID:P9znXDYB.net]
AMDとMS,GPU演算用途向けのコンパイラ「C++ AMP v1.2」を発表
www.4gamer.net/games/032/G003263/20140828031/
C++ AMP v1.2は、C++開発者が広範なハードウェア構成および
ソフトウェア構成でアプリケーションを高速化できるよう、
以下の3つのアウトプットをサポートしています。

・Khronos GroupのOpenCL:AMD CPU/APU/GPU、Intel CPU/APU、NVIDIA GPU、Apple Mac OS X、その他のOpenCLに準拠したプラットフォームをサポート
・Khronos GroupのSPIR:AMD CPU/APU/GPU、Intel CPU/APU、将来的なSPIRに準拠したプラットフォームをサポート
:HSA FoundationのHSAIL:AMD APU、将来的なヘテロジニアス・システム・アーキテクチャー(HSA)に準拠したプラットフォームをサポート

759 名前:デフォルトの名無しさん [2014/08/30(土) 20:21:59.78 ID:rOGhcjm5.net]
ム板はしょっちゅう落ちるな。

760 名前:デフォルトの名無しさん mailto:sage [2014/08/30(土) 20:24:50.83 ID:nZ1XDijW.net]
よく落ちるな‥

761 名前:デフォルトの名無しさん mailto:sage [2014/09/19(金) 08:34:07.91 ID:KzrQAxPc.net]
OpenCL 1.2が現在のstableになるのかな?
1.1だとOpenCVは動かないですね



762 名前:デフォルトの名無しさん mailto:sage [2014/09/19(金) 23:42:34.05 ID:dfKMMaQo.net]
NVIDIAが1.2に対応しないからうちは1.1縛りだな。
OpenCVみたいにCUDAと両方やるならいいんだろうけど。

763 名前:デフォルトの名無しさん mailto:sage [2014/10/15(水) 00:45:43.10 ID:bIoSVMWH.net]
VBAで使いたいのですが、ラッパーDLL何か
ご存知ないでしょうか?
C#用のは幾つか見つかるのですが…

764 名前:デフォルトの名無しさん [2014/10/15(水) 01:04:21.97 ID:bIoSVMWH.net]
質問あげ m(_ _)m

765 名前:デフォルトの名無しさん mailto:sage [2014/10/15(水) 10:11:05.56 ID:3rwOGNYw.net]
>>756
C#でVBAとOpenCLの仲介DLLでも作ればいいんでないの?
Windows知らんけど。

766 名前:デフォルトの名無しさん [2014/10/15(水) 10:36:01.03 ID:bIoSVMWH.net]
>>758
そうなんですけど、既にあるならそれ使いたいなと。

いま、ClooというC#用のラッパー使ったりソース見てるのですが、
ジェネリクスは使えないからどうするんだ?とか
DLL作ったことないのでチョット途方に暮れてます…
(シンプルなDLL作成サンプルは理解できますが、
openclを全てラップするのは無理…)

767 名前:デフォルトの名無しさん mailto:sage [2014/10/15(水) 19:03:22.75 ID:oTkKZ4Eq.net]
既にあるもので使い方覚えるより
自分で造った方が早い場合も多い

768 名前:デフォルトの名無しさん mailto:sage [2014/10/15(水) 22:49:10.60 ID:y41AVgB1.net]
口だけ番長

769 名前:757 [2014/10/16(木) 00:06:46.03 ID:1e+5gfAa.net]
>>760
プラットフォームを返すところから少し作り始めてみましたが、
VBAのcollectionとして値を返すなら、
C#では何なの?ディクショナリ?ってとこで
早速つまづいてしまいました(;_;)

なので、VBAでラッパー作ろうかと迷走中…

770 名前:デフォルトの名無しさん mailto:sage [2014/10/16(木) 00:45:29.59 ID:925HRnD9.net]
別に何しようと勝手だけど
VBAでOpenCL使う必要性って何?

非同期処理が苦手なVBAは「待ち」が生じるような複雑な計算は向かないし
計算速くするだけならDLLなりに入力投げて結果だけもらえばいいし
Officeとの連携ならVBA使う必要ないし
規定されたソフトウェア以外使用禁止だったらそもそもOpenCL使えそうにないし

771 名前:デフォルトの名無しさん mailto:sage [2014/10/16(木) 15:24:45.15 ID:7O3aHiya.net]
そもそもVBAに固執してる時点で視野狭窄。



772 名前:757 [2014/10/16(木) 17:11:21.81 ID:8j84DcHT.net]
固執?( ´×` ) プッ

773 名前:757 [2014/10/16(木) 17:12:09.70 ID:8j84DcHT.net]
ありゃw

774 名前:デフォルトの名無しさん mailto:sage [2014/10/17(金) 13:05:53.28 ID:npcZf8Up.net]
あらあら可哀想なひとでしたか。

775 名前:デフォルトの名無しさん mailto:sage [2014/10/17(金) 16:09:50.28 ID:aw+RiOqr.net]
こんなところにもシナが湧くようになったか

776 名前:デフォルトの名無しさん mailto:sage [2014/10/18(土) 01:23:16.18 ID:sx5ESDLm.net]
そもそもそんな方法よりこうした方が・・とか
上流にまで遡って正そうとする奴がいるけど
余計なお世話なんじゃない?
VBAでOpenCLを使う方法を聞かれているんだから
答えがあるならそれに出せばいい。
無いならわからないと答えればいい。
見当違いのに話を捻じ曲げて、してやったりと
悦にはいるのか?

777 名前:デフォルトの名無しさん mailto:sage [2014/10/18(土) 13:19:15.72 ID:Z3gRebWt.net]
余計なお世話だと感じたらスルーすればいいだけ
スルーも出来ないお子ちゃまが馬鹿にされるだけ

778 名前:デフォルトの名無しさん mailto:sage [2014/10/18(土) 15:49:20.82 ID:mzkaImX0.net]
>>769
あんた公務員やな

779 名前:デフォルトの名無しさん mailto:sage [2014/10/18(土) 19:40:45.23 ID:P/Strs7V.net]
余計な世話しなきゃいい

780 名前:デフォルトの名無しさん mailto:sage [2014/10/19(日) 02:01:55.89 ID:CeuU+CpH.net]
まあ、余計なお世話なやつは
わかってない(解決策はわからない)
ってことだから

解決策以外はただの雑談
スルーするかしないかなんて、
どうでもいいこと

781 名前:デフォルトの名無しさん [2015/01/12(月) 09:09:09.30 ID:BHqm0X8b.net]
OpenCLとCUDAの相互運用について情報を探していたらCUDAカーネルを
OpenCLランタイムから実行できると書いてある記事を見つけたんだが、
本当にそんなんできるんだっけ?
www.4gamer.net/games/032/G003263/20091104040/



782 名前:デフォルトの名無しさん mailto:sage [2015/02/04(水) 08:37:05.19 ID:PgjHlyod.net]
いままでコンスタントに500[ms]程度でkernel処理が終わってたのが、
1分以上kernel処理が終了しない異常が、
処理2回目とあと不定期に発生するようになりました。
処理の内部のループカウントを数えたら正常なときと大差なく、
重い処理をしてはいないようです。やはりハードの不具合でしょうか?

783 名前:デフォルトの名無しさん [2015/02/04(水) 11:47:15.88 ID:kErMECZ6.net]
windows update

784 名前:デフォルトの名無しさん mailto:sage [2015/02/08(日) 04:16:42.58 ID:4RF7kRSx.net]
モバイルだと、GPU性能とCPU性能あんま大差ないからな。CPUだと4コアでNEON使えば最大性能で60GFLOPSぐらい?最新のTegraX1とかだと300GFLOPSオーバーするかもしれんが
現行のAdreno330ぐらいだと150GFLOPSくらい?

785 名前:デフォルトの名無しさん mailto:sage [2015/02/08(日) 04:19:43.86 ID:4RF7kRSx.net]
だからNEONのコードをわざわざ書き直す必要まだないかな?メモリアクセスのほうがボトルネックになってるっぽいのもあるし。まぁ、CPUとGPU実行じゃ消費電力ちがうかもしれんが。

786 名前:デフォルトの名無しさん mailto:sage [2015/02/15(日) 00:22:26.32 ID:rqZ8R7KU.net]
個人的にはこの言語産廃な気がするけどどうなんだろう
手続きの多さはさすがにちょっと…

CUDA←AMDも似たもの作るorライセンス料払ってでも統一しろ(最良)
C++AMPとOpenACC←そのレベルの抽象言語ぐらい統一しろ(次善)
OpenCL←やめて

787 名前:デフォルトの名無しさん mailto:sage [2015/02/15(日) 10:01:14.87 ID:MuMGrz7U.net]
OpenCLはハード非依存のGPGPUプラットフォームとして用意され、
その上にライブラリを構築してユーザーはそれを使うのが本来意図してたこと。
残念ながらそういうライブラリがあまり出てきていないのが現実かな。

788 名前:デフォルトの名無しさん mailto:sage [2015/02/15(日) 12:56:46.74 ID:TTUR8i8s.net]
OpenCLはDSPとかFPGAとかGPU以外もターゲットに入っているから
下手に統合しない方がいいと思う

789 名前:デフォルトの名無しさん mailto:sage [2015/02/15(日) 20:42:11.90 ID:aU4fh9i9.net]
とか言いながら、触ればわかるが単なるCUDAの焼き直しなんだよな、これ

790 名前:デフォルトの名無しさん mailto:sage [2015/02/15(日) 21:52:13.56 ID:DwKzmQqr.net]
nvidiaのquadro K620Mか
インテルグラフィックHD5500にしようと思うんだけど
openclとか数値計算の初歩の練習としてはどっちがいいよ

791 名前:デフォルトの名無しさん mailto:sage [2015/02/15(日) 22:09:31.75 ID:SQuQNCw8.net]
>>783
IntelのOpenCLドライバって糞だって印象しかない。
AMDやNVIDIAで動いてたコードが通らなかったりするし。



792 名前:デフォルトの名無しさん mailto:sage [2015/02/15(日) 22:20:29.24 ID:DwKzmQqr.net]
>>784
ありがとうございます

793 名前:デフォルトの名無しさん mailto:sage [2015/02/15(日) 22:26:41.71 ID:SSlwb3yD.net]
実は正しくないコードが他の環境ではたまたま通っていただけ、てのはよくある。
たしかにIntelのコンパイラは厳しいから、普段の開発は他のGPUでやっていても
IntelのKernel Builderでカーネルのチェックしたりするな。

794 名前:デフォルトの名無しさん mailto:sage [2015/02/16(月) 00:42:06.13 ID:bUgXoWHZ.net]
>>786
コードそのものに問題はなかったよ。
カーネルが複雑になりすぎるとIntelのコンパイラは落ちるから論外。

795 名前:デフォルトの名無しさん mailto:sage [2015/02/16(月) 00:55:29.94 ID:0cGz3jVB.net]
IntelはGlobalWorkingGroupとLocalWGのサイズがN倍じゃないと動かないんだけどAMDは変な比率でも動く
原因調べるのの時間かかったよ

796 名前:デフォルトの名無しさん mailto:sage [2015/02/16(月) 02:05:22.57 ID:bUgXoWHZ.net]
>>788
そりゃ動くほうが不思議だw 自分の場合はカーネルを小さくしたら
普通に通ったからそういう問題はなかったはず。

797 名前:デフォルトの名無しさん [2015/02/16(月) 07:56:11.60 ID:F7oc1qZ/.net]
>>784
同意

798 名前:デフォルトの名無しさん mailto:sage [2015/02/16(月) 13:24:15.63 ID:LR9r89r7.net]
AMDのコンパイラも最適化オンにしたらコンパイル終わらなかった事あったので、結構怪しい。(2011年ぐらいの話だけど)

799 名前:デフォルトの名無しさん mailto:sage [2015/02/16(月) 13:44:20.54 ID:bUgXoWHZ.net]
>>791
確かにAMDのコンパイラの最適化は完全に地雷だったw

800 名前:デフォルトの名無しさん mailto:sage [2015/02/16(月) 21:40:57.33 ID:HyfDl27x.net]
>>783
初心者がこれからOpenCLを始めるのにどの環境を選ぶか、という話なら
NVIDIAは避けるのが無難だな。デバッガやオフラインコンパイラなんかの
ツールが皆無に等しい。
CUDAもやりたいとかいうなら別だが。

801 名前:デフォルトの名無しさん mailto:sage [2015/02/16(月) 22:38:07.54 ID:QHeQ+cdL.net]
>>793
多くの奴はGPGPUするぞ、じゃメジャーなCUDAで良いやだからな
OpenCL使ってIntel,Nv,AMD(あとFPGAとか?)でちゃんと動くものを作らなければいけないってあんまりないだろからな



802 名前:デフォルトの名無しさん mailto:sage [2015/02/17(火) 02:24:50.68 ID:xvdMpEI6.net]
OpenCL使ったところで、同じコードでどんなCPU/GPUでも効率よく動くとかレアケースだしなぁ。

803 名前:デフォルトの名無しさん mailto:sage [2015/02/17(火) 08:22:15.68 ID:fCIGE3+K.net]
最高のパフォーマンスを引き出すチューニングというなら別だが、どれかGPUを想定した
コードならそこそこの速度で動くだろ。たいてい、従来のCPUより速けりゃ十分だろうし。
FPGAだけは別格で、GPUと同じコードじゃぜんぜん速度が出ないだろうが。

804 名前:デフォルトの名無しさん mailto:sage [2015/02/18(水) 10:38:35.72 ID:CGhwPhC5.net]
SSEレジスタに乗ること期待して書いたchar16とかGPUに食わせたら憤死するで。

805 名前:デフォルトの名無しさん mailto:sage [2015/02/18(水) 16:12:46.20 ID:pennC58Z.net]
アーキテクチャ毎に最適化しないと、
OpenCLで性能なんか出せないよ。

806 名前:デフォルトの名無しさん mailto:sage [2015/02/18(水) 22:51:48.89 ID:Z2YWe05s.net]
>>797
ベクタ型は想定するターゲットで効果が見込まれる場合に使うべきで、そういう意味では
どっちかというとチューニングの範疇だろう。
そもそも、インテルのコンパイラならベクタ型使わずに普通に書いてSSE/AVXを
使ってくれるんだが。CL_DEVICE_PREFERRED_VECTOR_WIDTH_CHAR=1だしな。
下手に最適化しようとして却って駄目にしているように思える。

807 名前:デフォルトの名無しさん mailto:sage [2015/02/19(木) 01:05:51.96 ID:f67JHinc.net]
かたやGPUになるとパイプラインのスカスカ具合見ながら
int2とかint4とか使って依存関係のない演算で埋めていかないとお話にならんしなぁ。

808 名前:デフォルトの名無しさん mailto:sage [2015/02/19(木) 02:14:32.89 ID:KUEe9MYM.net]
アーキテクチャごとの最適化は、まだコンパイラとかの成長中の部分もあるだろうしなぁ

そのうち改善はしてくれるような気がするけど

809 名前:デフォルトの名無しさん mailto:sage [2015/02/19(木) 22:30:01.89 ID:t/UF4QVL.net]
そうは言っても今のアーキが向かってる方向ってコンパイラ実装の難易度上がってるから
コンパイラの苦手な部分を補填してやらにゃ速くならないってのは改善される事はないと思う

むしろそこまで賢いコンパイラとか使いたくない

810 名前:デフォルトの名無しさん mailto:sage [2015/02/19(木) 23:19:07.50 ID:1LBnym+M.net]
技術的側面もあるが
それ以上にIA64がコケたことが
コンパイラを賢くしてプロセッサを脳筋にする道を
決定的に閉ざした

コンパイラの賢さに関して言えば
足並みがそろってない事の方が問題だと思う

811 名前:デフォルトの名無しさん mailto:sage [2015/02/26(木) 07:17:19.04 ID:BKvgQceT.net]
クロノスってなんかのアニメであったような



812 名前:デフォルトの名無しさん mailto:sage [2015/02/26(木) 14:44:53.01 ID:ZlyxtZ3O.net]
クロノスはゼウスのお父さん

813 名前:デフォルトの名無しさん mailto:sage [2015/02/26(木) 20:31:41.27 ID:yDVFOiWq.net]
マッシーンロボッ!
お前には、敵はない!

814 名前:デフォルトの名無しさん mailto:sage [2015/03/08(日) 09:21:28.42 ID:rJrv12ko.net]
OpenCL2.1は発表されたが相変わらずNVIDIAはやる気なさそうだなぁ、コメントくれないし。
おかげでいまだに開発は1.1ベースだよ。

815 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 20:37:22.82 ID:4fkLnYAO.net]
OpenCLでHEVCをGPUに部分的にデコードさせる実験やってるな
まあ新製品はハードウェアでHEVCに対応してるから不要になっちゃうんだけど

816 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 20:37:43.88 ID:4fkLnYAO.net]
×やってるな
○やってたな去年の夏ごろ

817 名前:デフォルトの名無しさん mailto:sage [2015/04/12(日) 21:03:58.32 ID:b726GPIq.net]
結局使えるのは、いつくらいになるのか…

818 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 14:51:39.69 ID:zIE5htjK.net]
vexcl使えばopenclもcudaも関係なくGPUが使えるっぽいけど

819 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 16:55:17.48 ID:DlB5+dQK.net]
NVIDIAでやっと1.2が使えるようになったと思ったらバグってんじゃねーか。
本当にやる気無いのな。

820 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 16:04:03.54 ID:ljYoE8AT.net]
そらやる気ないやろ。
cudaなら囲い込みできるのに、
cudaの焼き直しのOpenCLなんて協力するだけ損だし。

821 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 10:52:17.46 ID:1JZfjbGY.net]
pocl.sourceforge.net/



822 名前:デフォルトの名無しさん mailto:sage [2015/06/06(土) 14:22:49.99 ID:xHuAhJj5.net]
Core i7 3990とGeForce使ってるんだけど、IntelHDが認識されてなくてデバイスマネージャに表示されない
OpenCLの性能評価を試したいんだけど、IntelHDのドライバをインストールすれば認識されますかね?

823 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 15:10:46.44 ID:OFY6KtcL.net]
>>815
モニタはiGPUとゲフォどっちにつないでる?
それと自作PCか?

824 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 15:14:39.85 ID:OFY6KtcL.net]
あ、それとintel Opencl driver インストールうまくできるか試してみて結果おしえて

825 名前:デフォルトの名無しさん mailto:sage [2015/06/07(日) 20:39:44.84 ID:NnypvtRT.net]
>>816
モニタはGeForceに接続。ドライバインストール試してみる。

826 名前:デフォルトの名無しさん mailto:sage [2015/06/08(月) 05:35:15.96 ID:ewd9hwV4.net]
Intelのにモニターをつなげないと
いけなかったはず。

827 名前:デフォルトの名無しさん mailto:sage [2015/06/08(月) 13:13:32.81 ID:rnRcmo2O.net]
i7 3990は検索してもろくにヒットしないけど、Sandy Bridge-Eなら無理なのでは。

828 名前:デフォルトの名無しさん mailto:sage [2015/06/09(火) 01:36:37.47 ID:c7FHKlcw.net]
そだね、そのくらい確認してるかと思って聞かなかったけど、
iGPUがついてないならそもそも無理だわな。

829 名前:デフォルトの名無しさん mailto:sage [2015/06/10(水) 12:18:07.90 ID:VIG2W0Y+.net]
うまくいけばCPUの方はOpenCLで動かせるかもしれない
やる意味ないけどね

830 名前:デフォルトの名無しさん mailto:sage [2015/06/19(金) 09:06:28.51 ID:giF1KE9b.net]
GPUのないノートのCPUでデバックしてから
GPUで実行できるなら俺はうれしい

831 名前:デフォルトの名無しさん mailto:sage [2015/06/19(金) 21:38:40.35 ID:s6jV56Gc.net]
別途ドライバをインストールしなきゃならんってのが難点なんだよな。
SSE/AVXをお手軽に使えて、コア数に応じてマルチスレッドで実行してくれるから
使いではあると思うんだが。



832 名前:デフォルトの名無しさん mailto:sage [2015/06/19(金) 23:20:08.11 ID:KZJPVbVq.net]
デバッグなんかよりチューニングが大事だからターゲットハード以外でコーディングしてもなぁ

833 名前:デフォルトの名無しさん [2015/06/20(土) 00:21:14.39 ID:46SUOvEb.net]
なにがなんでも最高性能出さなきゃならん用途ばかりじゃあるまい。
一般的な並列化のみで大多数のハードでそこそこ速くなりゃ十分、という応用もある。

834 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 00:09:27.57 ID:e4hiyCLD.net]
CLはチューニングなしだとCPUに惨敗もありえるのでな。

835 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 01:11:03.05 ID:rREKDKy5.net]
メモリ転送とenqueueしてからの計算開始に時間かかるのがなぁ

836 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 07:39:26.22 ID:FYteK6ai.net]
CPUに惨敗してた処理がチューニングでどうかなるもんか?
単に並列化できてなかっただけじゃね?

837 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 21:40:24.04 ID:e4hiyCLD.net]
>>829
レジスタ数とか共有メモリサイズとかでブロックサイズだっけnVIDIAでいうところのwarp数とか
調整しないとてんでダメだよ。

838 名前:デフォルトの名無しさん mailto:sage [2015/06/22(月) 21:41:31.55 ID:e4hiyCLD.net]
>>828
そのコストを払っても高速かどうかは実機でテストするしかないしな。
機種ごとにCLを使うか通常ルーチン使うか選別するくらいしないと効果なし

839 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 02:38:28.65 ID:22fvktD/.net]
チューニングは難しい
何となくやってみたら、処理時間が5倍遅くなったときの衝撃は大きかったな

840 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 08:25:00.27 ID:drLPVFNo.net]
ターゲットのハードに特化したチューニングをしないと使い物にならんようなことを
言っている人がいるが、そんなこといったらユーザー環境を特定せずに広く配布する
アプリなんて作れんな。
うちじゃ一般的なGPU向けチューニングしかしてないが、NV/AMD安いのから高いのまで
テストしてみてローエンドでもCPUの数倍くらいで動くから十分、速く動かしたいなら
高いGPU使え、ってなノリだな。

841 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 08:50:44.48 ID:LQs/3Np0.net]
一番遅いハードに合わせて作っとけば問題ないよ



842 名前:デフォルトの名無しさん mailto:sage [2015/06/23(火) 22:58:24.67 ID:VwORpFDM.net]
>>833
AMDのHSAのAPUとAMDのOpenCl2のdGPUがHPCを除いたいまのデファクト
それ以外は無視で良い。Nvは一般用でGPGPUやる気ないし
HPC用ならターゲットのハードに特化したチューニングは当然だし

843 名前:デフォルトの名無しさん mailto:sage [2015/06/24(水) 01:34:16.84 ID:35TMs94C.net]
madとかそういう複合命令(?)を使ってチューニングする程度で抑えたいところ

844 名前:デフォルトの名無しさん mailto:sage [2015/08/31(月) 07:10:09.59 ID:kH1QDWTh.net]
Vexclの開発が止まってる
誰か引き継ぐ人はいないのか?

845 名前:デフォルトの名無しさん mailto:sage [2015/09/02(水) 06:58:53.31 ID:VNDyXTKC.net]
早く2.0を使えるようにしてくれ

846 名前:デフォルトの名無しさん mailto:sage [2015/09/03(木) 00:02:12.18 ID:iQnjIkb4.net]
NVIDIA無視すりゃ幸せになれるぞ

847 名前:デフォルトの名無しさん mailto:sage [2015/09/03(木) 01:44:07.69 ID:cb/ef9ik.net]
>>839
こんなに対応が遅いと思わなかったんだよ
次からはAMDを信じるよ、あればだけど

848 名前:デフォルトの名無しさん [2015/12/19(土) 10:21:19.84 ID:7/8YsZOJ.net]
プログラマはMacを使ってるってマジ?
hayabusa3.2ch.net/test/read.cgi/news/1450395043/

849 名前:デフォルトの名無しさん mailto:sage [2015/12/19(土) 10:23:37.79 ID:qfRCvKdP.net]
単なる世間知らずが踊らされてそう言ってるだけ

850 名前:デフォルトの名無しさん mailto:sage [2015/12/19(土) 12:49:21.08 ID:BBUxwf4S.net]
マルチコピペだぞそれ

851 名前:デフォルトの名無しさん mailto:sage [2015/12/19(土) 15:25:38.18 ID:iG82T79N.net]
100スレ以上にレスしてNGにならないのは運営が公認してるマルチってことか



852 名前:デフォルトの名無しさん mailto:sage [2015/12/19(土) 16:25:03.85 ID:2xl0Mjgh.net]
GeForceはOpenCL2.xに対応した?
CUDAに同様の機能が在るから技術的に無理という事はないだろうけど

853 名前:デフォルトの名無しさん mailto:sage [2015/12/19(土) 18:13:33.83 ID:LGhGH2LK.net]
358でやっと1.2正式サポートしたところ。

854 名前:デフォルトの名無しさん mailto:sage [2015/12/19(土) 19:06:17.07 ID:2xl0Mjgh.net]
サンクス。IntelですらOpenCL2.0に対応しているのに業界最大手のnVIDIAがやらないのはなぁ
CUDAを使えという事なんだろうけど、それではnVIDIA専用になってしまうからそれは避けたい。
かといってnVIDIAを無視する訳にもいかないというジレンマ
そろそろOpenCL2.xをメインにしていきたいのだが

855 名前:デフォルトの名無しさん mailto:sage [2015/12/20(日) 00:20:21.34 ID:ujiFhYYe.net]
VGAはいまAMDがすごく伸びてきているんだろ
来年の後半にはVGAの販売数シェアではAMDがNvidiaを上回るんじゃないのか
再来年には一般グラフィックではIntel、AMDが2強ってなるんじゃないか

856 名前:デフォルトの名無しさん mailto:sage [2015/12/20(日) 00:47:13.59 ID:14eB8c4R.net]
NVIDIAのOpenCL対応はちょうどAppleが採用やめたあたりから停滞したな。
結局のところNVIDIAにとって、そういうOpenCLを望む大口の顧客でもいない限り
OpenCLに力を入れる理由はないんだろうな。

857 名前:デフォルトの名無しさん mailto:sage [2015/12/20(日) 01:02:38.32 ID:XNwlDZDb.net]
nvidiaはopenAMP+だっけ?あっちに力いれてんじゃないのかね?

858 名前:デフォルトの名無しさん mailto:sage [2015/12/20(日) 04:40:12.37 ID:oUoqwn36.net]
AMDもCUDAに対応するみたいなニュースをみたけど、どうなったんだろう?
GPGPUの技術も速く落ち着いて欲しい

859 名前:デフォルトの名無しさん mailto:sage [2015/12/20(日) 07:41:04.82 ID:MpbNAZoy.net]
CUDAが各社GPU共通のならいいけどそうじゃないからなぁ
Intel iGPUでも使えないと困る

860 名前:デフォルトの名無しさん mailto:sage [2015/12/20(日) 07:47:22.55 ID:14eB8c4R.net]
AMDのあれは、HSAをターゲットにしたHalideやvexclのような並列計算APIで、
それがNVIDIA向けにもコンパイルできるって話だな。既存のCUDAコードからも
コンバートできるというのは目新しいが。

861 名前:デフォルトの名無しさん [2016/03/29(火) 10:04:21.74 ID:/c8bAcK4.net]
サッカーブッシュ日本代表日程ぷあたん(しゅっちょうまいくろ教育長交代)春文執行40代売上差額シュガーチョコ
https://www.youtube.com/watch?v=NDq1QoJY0nY宇ドナルドアナリストパワーストーンコーチングとしまえん
サッカーブッシュ日本代表日程古本屋よしたけしゅっちょうちょこしゅがー
ディーラー税務署天才開発者死亡詰みヨミドクターマイクロサービ



862 名前:ス不足
サッカーブッシュ日本代表日程ぷあたんシフト光金さかい強制バイト人権侵害問題
春分資源執行ニューヨーク低原価ぼったステーキソルトレイク福岡横浜新橋奴隷課金パチシフト強制バイト問題新潟米センター生残
コスメ24チャリティー隠れ40代生活保護プレイボーイバイトレードいたりあん接待問題
マスコミKARDローンケーオーサービス不足婚活パーティー寄付金執行原発ビジネス
FBIチャイニーズタイホテル売上事務所ガチャ決算ガチャキャンペーン(販売報道陣過激派組織向携帯最新情報提供終了
校長発言細心注意ノートン産廃エラー(著作権クレーム中国反応融資高額教育費)(中国捕鯨団体40代社員サッカーコメント
高額入学金ヤフウ新橋大学ヤフウ新橋理事長FX経費 おじや50代資産ガリバズフィード40代エリート
[]
[ここ壊れてます]

863 名前:デフォルトの名無しさん mailto:sage [2016/05/30(月) 13:15:08.40 ID:27ORFIrk.net]
CUDA8.0RCでも1.2どまり

864 名前:デフォルトの名無しさん mailto:sage [2016/05/31(火) 02:00:22.72 ID:tLbBjsj4.net]
CUDAが強すぎて、なかなか広がらないイメージ

865 名前:デフォルトの名無しさん mailto:sage [2016/05/31(火) 15:24:04.45 ID:o40hgVi5.net]
あまり最適化されてない(できない、ifがそれなりに多い)プログラムをCPUとGPUで動かしてみて、
早い方を採用するには都合がいい。

866 名前:デフォルトの名無しさん mailto:sage [2016/08/08(月) 11:44:01.40 ID:OeTPyxgg.net]
CUDAは強い強い言われてるけど結局一社独占の技術だから過渡期の産物で終わってメインストリームにはなれんよ
nvidia自体x86やARM関係なくCPUを締め出しにかかって古い仕様を拡張する気がなさそうだし

867 名前:デフォルトの名無しさん mailto:sage [2016/08/08(月) 23:41:36.48 ID:FOEjBVJr.net]
しかしOpenCLも最近失速気味だしなぁ。規格は2.2まで出てるのにいまだに2.1のまともな実装すら出てないし。
AMDが体力続かなくて手を引いたりしたらOpenVXみたいにフェードアウトするんじゃないか?

868 名前:デフォルトの名無しさん mailto:sage [2016/08/13(土) 04:34:37.27 ID:C6tpw ]
[ここ壊れてます]

869 名前:DrS.net mailto: 物理レンダリングが出たばっかりなのに失速とは []
[ここ壊れてます]

870 名前:デフォルトの名無しさん mailto:sage [2016/10/29(土) 09:17:30.79 ID:W9gQheBG.net]
AppleがGeForce採用すりゃNVIDIAもOpenCLをアップデートすると期待してたが、今回も採用なしか。
それとも逆に、いつまでもOpenCL 2.0対応しないから採用しないのかな。

871 名前:デフォルトの名無しさん mailto:sage [2016/10/29(土) 12:19:11.69 ID:YsxFht0u.net]
OpenCLはオワコン



872 名前:デフォルトの名無しさん mailto:sage [2016/10/29(土) 15:09:52.99 ID:0Cs4HSkt.net]
HIPだっけ?
あれでCUDAを汎用的に使えるようになるんじゃないの?

873 名前:デフォルトの名無しさん mailto:sage [2016/10/29(土) 18:46:14.19 ID:vjtn6SxB.net]
>>862
C/C++使いはOpenCLも使えないと駄目ってなりつつあるんじゃないのか?

874 名前:デフォルトの名無しさん mailto:sage [2016/10/30(日) 01:49:24.70 ID:IKgBO44W.net]
それはOpenMPでは

875 名前:デフォルトの名無しさん mailto:sage [2017/01/08(日) 01:47:50.25 ID:qDa6npPv.net]
Vexcl難しい
サンプルコード少なすぎる

876 名前:デフォルトの名無しさん mailto:sage [2017/02/12(日) 09:50:54.30 ID:fljd0HzI.net]
vexclは挫折してviennacl使ってる
使えるスキルある人ならvexcl良いと思うけど
自分には無理だった

877 名前:デフォルトの名無しさん mailto:sage [2017/02/12(日) 14:41:00.16 ID:VBfSC62c.net]
boost.computeなら、どうだろうか?

878 名前:デフォルトの名無しさん mailto:sage [2017/02/16(木) 11:11:01.71 ID:sX4bqSJb.net]
Boost.computeはcudaに対応してない

879 名前:デフォルトの名無しさん mailto:sage [2017/02/17(金) 01:28:52.49 ID:LtwBLUnB.net]
OpenCLの話題だし、CUDA対応とかより、いかにOpenCLのコードが書きやすいかのほうが大切だと思うんだ

880 名前:デフォルトの名無しさん mailto:sage [2017/02/28(火) 20:15:03.56 ID:514SeM49.net]
ここ1年くらい停滞気味で話題が少なかったけど、これはめでたい。

NVIDIA 378.66 drivers for Windows offer OpenCL 2.0 evaluation support
https://www.khronos.org/news/permalink/nvidia-378.66-drivers-for-windows-offer-opencl-2.0-evaluation-support

一方で、前にいろいろぶち上げたAMDは何してるんだ?Ryzenで忙しいってか?

881 名前:デフォルトの名無しさん mailto:sage [2017/03/17(金) 02:02:00.80 ID:YSidBwLT.net]
Vexclで行列計算したいけど行列掛け算のexampleしかない
qr分解とかライブラリ使って出来ないの?
Vienaclにはqr分解とか例が沢山あるのに



882 名前:デフォルトの名無しさん [2017/03/17(金) 11:56:23.09 ID:ol/nseXL.net]
できる

883 名前:デフォルトの名無しさん mailto:sage [2017/03/30(木) 08:07:31.22 ID:sSr9ORWQ.net]
過疎ってるところ恐縮ですが、質問です。

通常のCプログラムの中で、コプロ的な使い方でOpenCLをインラインアセンブラのように使うような使い方は可能なのでしょうか?
もしくは、その様な使い方を実現する方法はないでしょうか。

884 名前:デフォルトの名無しさん mailto:sage [2017/04/04(火) 23:25:23.65 ID:d4Y6801f.net]
Openmpでgpuの並列計算も出来るようになってから
Viennaclは更新も止まって、もう実質一年ぐらい更新ない

Openmpがgpu計算の標準になるのかな

885 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 09:29:08.47 ID:h/b8kKiY.net]
開発環境自体もOpenCL 2.0で止まっている感じはするな
鈍足になった感じはする

886 名前:デフォルトの名無しさん [2018/04/03(火) 04:40:48.84 ID:mPevnajZ.net]
cudaだと毎回計算結果違うとかビットエラーで整数計算も間違うことあるらしい
OpenCLをamdで動かすとどうなの?

887 名前:デフォルトの名無しさん [2018/04/03(火) 11:25:01.62 ID:R6gDm2yr.net]
えっ

888 名前:デフォルトの名無しさん [2018/04/03(火) 23:11:05.85 ID:RICRRaNn.net]
マイニング終了でRädeonの中古が格安で大量に売られてるので
何か使えないか
Openclってひょっとして再帰できない?

889 名前:デフォルトの名無しさん [2018/04/06(金) 09:28:13.93 ID:Z8wP2fEV.net]
>>877
科学計算用のやつだと、ちゃんとエラー補正してくれるよ

890 名前:デフォルトの名無しさん mailto:sage [2018/05/18(金) 19:25:23.10 ID:RN2l/52Z.net]
再帰できないってことはないだろ。
確認まではしてないけど、小さいの書けばすぐわかるからよろしくです

891 名前:デフォルトの名無しさん mailto:sage [2018/05/18(金) 23:22:29.85 ID:z36hYsyi.net]
たしか昔はcudaも再帰できなかったと思う
ある時期までの規格なら再帰できないとかもありえる
あるいは製品依存とか?



892 名前:デフォルトの名無しさん mailto:sage [2018/05/19(土) 10:52:19.90 ID:iBGlap+k.net]
再帰って、例えば階乗(n!)を関数内で1引いて乗算して、また自身を呼び出すみたいなことでしょ?
できないわけないよな……と脳内で思ってます。

色々な階乗をパラでやっても大丈夫だと思うし、一つの階乗をパラでやっても排他きちんとやれば大丈夫だと…

もしかして全く勘違いなこと言ってるのかな…
(最近CL書いてない、というか、並列プログラム自体ネタがなくて書いてないorz)

893 名前:デフォルトの名無しさん mailto:sage [2018/05/19(土) 12:28:46.68 ID:BjCA6AhS.net]
再帰するにはスタックが必須になるから
そんな暗黙の領域管理をGPUにやらせるのかってことでしょ
再帰がなければ関数ごとに固定領域を決めればいいので楽できる

894 名前:デフォルトの名無しさん mailto:sage [2018/05/19(土) 13:45:59.07 ID:iBGlap+k.net]
普通に関数呼んでreturnで帰って来るんだから、スタックなんて意識しなくていいんじゃない?
(関数の戻り先は、勝手にスタックに積んでreturnで勝手に取り出してくる)

スタック容量が少ないから別途管理しないといけないってこと?

895 名前:デフォルトの名無しさん mailto:sage [2018/05/19(土) 14:22:31.54 ID:7qbCVCh9.net]
ふつう、関数はインライン展開される。

再帰だと原則それができない。

896 名前:デフォルトの名無しさん [2018/05/19(土) 15:09:02.73 ID:GMayPujS.net]
888

897 名前:デフォルトの名無しさん mailto:sage [2018/05/19(土) 16:23:46.57 ID:KZiehyBT.net]
マイニング負け組はこちらへどうぞ
intel Oprencl2.1が今はお勧め
書籍もいっぱいあるぞ!
構わないからデペロッパーになろう

898 名前:デフォルトの名無しさん mailto:sage [2018/05/19(土) 19:18:17.82 ID:fx9VLx2G.net]
>>886
マジっすか。勉強になりました。
m(_ _)m

899 名前: mailto:sage [2018/05/20(日) 14:06:31.19 ID:JyKbNFIa.net]
>>886
Yコンビネータを見よ
インライン展開された、いいかえると無名関数であっても、再帰は可能である

900 名前:デフォルトの名無しさん mailto:sage [2018/05/20(日) 14:35:44.13 ID:KmZcyykh.net]
的外れすぎるw
Yコンビネータは無名関数で再帰ができるようになる程度の意味しかないだろ。
(末尾呼び出し最適化がない限り)関数呼び出し深さが不定であるのには変わりない。

もちろんOpenCLには末尾呼び出し最適化も第一級オブジェクトとしての関数もないし、
それどころか関数ポインタすらない。

901 名前:デフォルトの名無しさん [2018/05/20(日) 16:22:27.06 ID:V9eOsuAz.net]
うむ



902 名前:デフォルトの名無しさん [2018/05/23(水) 19:10:21.35 ID:Au5e7VGg.net]
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

H1I8V

903 名前:デフォルトの名無しさん mailto:sage [2018/05/24(木) 10:34:27.52 ID:cPlRxlDn.net]
H1I8V

904 名前:デフォルトの名無しさん [2018/07/04(水) 18:21:25.84 ID:bZ79e0V+.net]
これ人気らしいぞhttps://goo.gl/ZosWhA

905 名前:デフォルトの名無しさん [2018/07/04(水) 21:44:26.88 ID:gFgZc5FG.net]
QOJ

906 名前:デフォルトの名無しさん mailto:sage [2018/07/05(木) 16:14:25.67 ID:AeL6VB/V.net]
H1I8V

907 名前:デフォルトの名無しさん [2019/06/19(水) 04:56:27.83 ID:tVNS+22r.net]
【出資】松本卓朗 人工知能詐欺【注意】
https://rio2016.5ch.net/test/read.cgi/rikei/1560859403/

908 名前:デフォルトの名無しさん mailto:sage [2019/06/19(水) 08:10:22.42 ID:qaAgAiWI.net]
久しぶりに何か書かれたと思ったら orz

909 名前:過去ログ ★ [[過去ログ]]
■ このスレッドは過去ログ倉庫に格納されています






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<179KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef