12/04/29 20:57:55.38 .net
>>587
必ずしもそうでもない。もちろん限られたケースだが、空間ごとに時間刻みを変えたい場合とか、ツリー方とかだと複雑になりすぎてまだまだ難しい場合も多い。
そもそも、ツリーやFMMでも近傍場の計算は直接法だし、サンプルコードとして無意味ではない。
598:デフォルトの名無しさん
12/05/02 10:33:58.88 .net
>>591
CPU側を並列化してGPUを扱うスレッド/プロセスとCPU側の計算をするものに分ける
並列化、同期はお好みの方法で
599:デフォルトの名無しさん
12/06/27 01:05:42.85 .net
質問なんだけど今はAMD/nVidia/IntelどのSDKでビルドしても
AMD/nVidiaのドライバが入っている環境ならGPUが利用できるって理解でok?
600:デフォルトの名無しさん
12/06/27 21:29:31.15 .net
>>594
違うというか、根本的に違う
601:デフォルトの名無しさん
12/06/30 22:46:38.04 .net
>>594
理論上は合っているよ。
まあ、微妙に非互換だったり、ランタイムの
インストール方法など気を使わざるを得ないのが現実だが。
602:デフォルトの名無しさん
12/07/01 01:24:59.44 .net
>>595
603:デフォルトの名無しさん
12/07/01 12:56:18.02 .net
>>595
604:デフォルトの名無しさん
12/07/05 01:16:06.38 .net
GT440でclinfoしたら
Max compute units: 2
と出たんだけど、この2とGT440のCUDAコア96とはどういう関係にあるの?
605:デフォルトの名無しさん
12/07/05 12:03:19.25 .net
NVIDIAの場合
Max Compute unit = Streaming Multiprocessor(SM) = Streaming Multiprocessor eXtreme(SMX)
606:デフォルトの名無しさん
12/07/27 10:28:17.75 .net
CPUデバイスのランタイムを有効にするにはAMDかインテルのSDKをインストールしてもらうしかないの?
ランタイムだけのパッケージってある?
607:デフォルトの名無しさん
12/07/27 11:10:16.02 .net
>>601
Intel の Windows 用ならあるね。
AMD は知らん。
608:デフォルトの名無しさん
12/07/28 14:23:52.35 .net
URLリンク(software.intel.com)
のダウンロードリストボックスのOpenCL CPU only runtime(Windows* OS)ってやつか。
見落としてた。ありがとう。
609:デフォルトの名無しさん
12/07/30 20:27:19.07 .net
CPUでCLやっても遅いだけで意味無いなぁ
610:デフォルトの名無しさん
12/07/30 22:03:29.12 .net
>>604
どんなプログラムなのかしらないけど、ボクが試したのは充分速かったけどなぁ。
いやまあ、GPUと絶対値を比べればもちろん遅いけど。w
611:デフォルトの名無しさん
12/07/30 22:41:12.50 .net
CPUでOpenCL使うとお手軽にSIMD+マルチコア使えるな。
612:デフォルトの名無しさん
12/07/30 22:48:37.20 .net
ベンチも取らずに知ったか
613:デフォルトの名無しさん
12/07/31 00:12:55.35 .net
ベンチと言えば Intel と AMD で比べてみたら、Intel のほうがかなり速かった。
いやまあ、その PC の CPU は Intel だったんだけど。w
AMD な CPU だと逆転したりするのかなぁ。
614:デフォルトの名無しさん
12/07/31 07:48:58.72 .net
>>606
お手軽じゃねーっつの。
CPUでSIMDとマルチコアを使いたいためだけにOpenCLを使つかうならアホだわ。
615:デフォルトの名無しさん
12/07/31 10:50:46.32 .net
phoronixのベンチ見る限りだとAMDのSDKの方が速そうだったけど
616:デフォルトの名無しさん
12/07/31 18:30:47.41 .net
少なくともカーネル部分はお手軽だよ。
素のCで使うと準備が面倒だが
C++のラッパーなら大した事は無い。
617:デフォルトの名無しさん
12/07/31 22:46:48.26 .net
OpenCL以外でSIMDに自動で対応してくれるのってなにかあるの?
618:デフォルトの名無しさん
12/08/01 06:14:34.83 .net
インテルコンパイラ使っとけ。
それかFortranだな。
619:デフォルトの名無しさん
12/08/01 13:12:30.64 .net
simdと言っているのがSSEのパックドなインストラクションのことでいいならgccでもOK。
620:デフォルトの名無しさん
12/08/01 22:34:10.47 .net
gccじゃ自動ベクトル化は皆無に等しいだろ。
621:デフォルトの名無しさん
12/08/01 22:54:07.37 .net
ちょっと前までSSEwとか思ってたけど
これだけ並列プログラミングが普及してきてAVX2とかみると考え変わる
622:デフォルトの名無しさん
12/08/01 23:22:54.44 .net
>>611
んなアホな
CL用のメモリとのやり取りが発生するだけ無駄だよ
正直、マルチコアを使いたいならMPIが一番速い。
通信含めても。
OpenMPもなんだかんだであまり速くないな。
>>612
PGI はあまりコードの品質よくなかったな
623:デフォルトの名無しさん
12/08/02 00:32:11.20 .net
>>617
なんか解釈に誤解があるようだが。
マルチコアのどんなプログラムでもOpenCLで書けという話ではない。
OpenCLのカーネルとして記述できるような問題に
適用すれば、なんも考えずにSIMDもマルチコアも
使えるようになるし、そういう用途に限れば
OpenMPやMPIもしくはPOSIX threadとかで
真面目に書くよりお手軽だし、余程の玄人が
書くのでない限り素早く、速いコードが書ける。
CL用のメモリ云々言っておきながら、速度面で
マルチスレッドなOpenMPでなくマルチプロセスになる
MPIをすすめるあたり根本的に理解に問題があるような。
まあ、通信部分はintel MPIとかなら共有メモリ使うから
極端に不利にはならないけど、少なくともこれが最速とは行かない。
624:デフォルトの名無しさん
12/08/02 00:45:08.79 .net
てかさ、CL 用のメモリとのやりとりなんかしないよね?
いや、しないようにつくるよね????
>CPUでSIMDとマルチコアを使いたいためだけにOpenCLを使つかうならアホだわ。
うわ、アホって言われちゃった。てへ。
625:デフォルトの名無しさん
12/08/02 01:31:56.84 .net
OpenCLとMPIの並列化は全く別もんだし、
OpenCLとOpenMPの並列化もちょっと違う。
正直OpenCLのカーネルを書くくらいなら、
OpenMPを使った並列化の方が圧倒的に楽だわ。
OpenCLを使うメリットは複数のプラットフォームで動かすためだけだろ。
626:デフォルトの名無しさん
12/08/02 06:37:43.98 .net
無脳をさらすスレですか?
627:デフォルトの名無しさん
12/08/02 07:45:55.61 .net
>>619
CLデバイスとCPUは論理的に別物なんだからメモリ転送はいるだろ。
>>620
GPUがなければOpenMPなりMPIなりで並列動作しているというプログラムを作ればよい。
CPUの並列も面倒くさいのでCLでってのは手抜き杉
628:デフォルトの名無しさん
12/08/02 08:05:46.59 .net
>>622
CLで書くほうが手間がかかると思うが。。。
CPU用のコードとNVIDIA用のコード、ATI用のコードを用意するのはかなり大変だし。だからOpenCLが生まれたわけで。
629:デフォルトの名無しさん
12/08/02 08:07:44.71 .net
>>623
GPUがあればそっちをつかいたいのならCLを書くこと自体が手間とか言ってる場合じゃないだろ。
それ一本で済まそうというのが手抜きだっての。
CPUでCLつかっても無駄なオーバーヘッドが出るだけだし
630:デフォルトの名無しさん
12/08/02 08:13:47.37 .net
論理的に別なのはわかるけど
対象がCPUの時にはメモリコピーしないような実装になっててもおかしくないような気もする
631:デフォルトの名無しさん
12/08/02 08:14:10.39 .net
まあ、小さい規模のコードしか書いてない奴には分からんかもしれんが、
複数のハードウェアプラットフォームをそれぞれメンテしないといけなのは、
かなりの工数がかかるからな。
多少のパフォーマンスを犠牲にしても良いことなんて沢山あるんだよ。
632:デフォルトの名無しさん
12/08/02 09:23:17.69 .net
えぇ~・・・・・・。
キミタチは実際につかったことないんだね?
URLリンク(software.intel.com)
の Sharing Resources Efficiently とか読んでごらんよ。
633:デフォルトの名無しさん
12/08/02 23:04:54.27 .net
これは恥ずかしいw
634:デフォルトの名無しさん
12/08/03 00:10:12.73 .net
どれにレスしてんだか分からんレスがおおいな。
635:デフォルトの名無しさん
12/08/03 00:34:42.14 .net
このスレ、99割が誤爆レスだからな。
636:デフォルトの名無しさん
12/08/03 19:43:05.27 .net
>>630
> 、99割
0.99 割? 990% ?
どのスレに書こうとしてたの?
637:デフォルトの名無しさん
12/08/04 01:06:20.28 .net
だ ー か ー ら ー ぁ 誤 爆 で し ょ
638:デフォルトの名無しさん
12/08/08 17:52:37.24 .net
なんでこのスレこの板にあるんだ?
639:デフォルトの名無しさん
12/08/09 01:30:40.64 .net
OpenCLハードル高いなぁ
どの機材構成でどのプラットフォームでどう書けば速くなるか
検証すべき項目が多すぎる
640:デフォルトの名無しさん
12/08/09 02:10:21.89 .net
逆に考えるんだ
速さをあきらめればすべて解決する
641:デフォルトの名無しさん
12/08/09 02:22:49.56 .net
あちらを立てればこちらが立たずですなぁ
642:デフォルトの名無しさん
12/08/10 17:37:54.94 .net
週あすwでAPUの記事載ってて、OpenCLで何でも高速に出来るように書いてたなぁw
643:デフォルトの名無しさん
12/08/10 23:05:10.52 .net
write once, tune everywhere
644:デフォルトの名無しさん
12/08/10 23:06:13.71 .net
anywhereだったか
645:デフォルトの名無しさん
12/08/16 08:59:47.91 .net
OpenCL1.2ではデバイス分割ができるみたいだけど
それまでってどうやって並列化してたの?
コマンドキューをCompute Unit分生成してたの?
それともclEnqueueNDRangeKernelがいい感じに並列化してくれてたの?
646:デフォルトの名無しさん
12/08/17 04:01:39.09 .net
でっかく突っ込んだら普通にデスクトップがフリーズしてた。
647:デフォルトの名無しさん
12/08/21 22:38:27.42 .net
OpenCLで最速の構成教えて
648:デフォルトの名無しさん
12/08/22 00:38:21.46 .net
素晴らしいプログラマ
これに尽きるw
649:デフォルトの名無しさん
12/08/22 09:45:30.14 .net
>>642
Radeon の一番高いヤツをさせるだけさす。w
650:デフォルトの名無しさん
12/08/31 15:37:24.77 .net
APUより速いん?
651:デフォルトの名無しさん
12/09/06 03:18:56.29 .net
だれかOpenCLでOpenGL実装してくれ
652:デフォルトの名無しさん
12/09/08 00:09:32.81 .net
むしろOpenManko実装してくれ
653:デフォルトの名無しさん
12/09/08 01:20:37.10 .net
プロプライエタリですので
654:デフォルトの名無しさん
12/09/08 18:07:21.58 .net
OpenMankoはよ
655:デフォルトの名無しさん
12/09/08 22:36:50.84 .net
互換フリー0実装のKuperで我慢しとけ。
656:デフォルトの名無しさん
12/09/09 23:25:50.57 .net
Mankoは商用製品で我慢しろよ
657:デフォルトの名無しさん
12/09/20 15:05:43.24 .net
昔の日本はOpenだろ
658:デフォルトの名無しさん
12/09/27 04:12:39.50 .net
AMD Releases CodeXL Public Beta | SemiAccurate
URLリンク(semiaccurate.com)
659:デフォルトの名無しさん
12/10/05 01:09:53.66 .net
URLリンク(pc.watch.impress.co.jp)
660:デフォルトの名無しさん
12/10/05 01:15:43.73 .net
スレリンク(poverty板)
661:デフォルトの名無しさん
12/10/05 01:16:52.94 .net
URLリンク(prohardver.hu)
662:デフォルトの名無しさん
12/10/28 20:13:53.12 .net
意外と
663:デフォルトの名無しさん
12/11/30 23:33:09.24 .net
Khronos Releases Significant OpenCL 1.2 Specification Update | techPowerUp
URLリンク(www.techpowerup.com)
664:デフォルトの名無しさん
12/12/07 11:27:13.90 .net
OpenCLでパスワード解析
URLリンク(securityledger.com)
665:25-gpu-monster-devours-passwords-in-seconds/
666:デフォルトの名無しさん
12/12/20 01:25:19.05 .net
>>615
vetor extension記法でゴリゴリかく。
若しくは、-O3 -ftree-vectorize
但し、後者はまだまだ未熟なのは確かだね。
667:デフォルトの名無しさん
12/12/21 09:03:58.99 .net
最近OpenCLを本格的に始めたんだが、
OpenCLのいいところは、コンパイラを選ばない、
カーネル以外はC++で書けるといところかな。
CUDAだと同じことができるけど、ホスト側でNVCC以外使おうとするとちょっと面倒だ。
ただ、カーネルの最適化がコンパイラでもできるから、
パフォーマンスは出やすいな。
LLVMで最適化レベルって設定ができるのかな?
668:デフォルトの名無しさん
12/12/22 01:07:39.90 .net
>>661
アーキテクチャが何にでも対応できるが、
アーキテクチャによって最適なWARP(に相当するもの)の数が違ったり、
コアレセンスアクセスできる条件が違ったり、キャッシュの有無だったりで
結局はアーキテクチャ依存の最適化をしないと速くならないよ。
669:デフォルトの名無しさん
12/12/22 02:28:20.85 .net
場合によってはコンパイラのバージョン依存も。
670:デフォルトの名無しさん
12/12/24 05:32:34.90 .net
やっとCL使うネタが準備できた
楽しみだー
671:デフォルトの名無しさん
13/01/13 19:49:11.31 .net
Trinity APUで使ったらCPU使用率が50%(2コアなので1コアがフル稼働状態)になったが、こんなもんなの?
GPUで計算してるはずなんだが。
672:デフォルトの名無しさん
13/01/14 05:46:41.04 .net
ジョブの内容と数によるんでは。
673:デフォルトの名無しさん
13/01/14 21:42:22.31 .net
CUDA見たいに結果出るまでぽーりんぐしてんじゃないの?
674:デフォルトの名無しさん
13/01/14 22:02:09.36 .net
自分のマシンのFLOPS計るのはどのベンチがお勧め?
675:デフォルトの名無しさん
13/01/15 00:36:48.35 .net
クロックとシェーダの数を掛ければ。
676:デフォルトの名無しさん
13/01/15 12:44:28.36 .net
ちゃんとGPUで計算されてないだけじゃね
afterburnerかなんかでGPU側の使用率も見てる?
677:665
13/01/20 11:45:47.76 .net
Catalystのバージョン上げたらCPU使用率下がりました
678:デフォルトの名無しさん
13/01/21 06:12:45.45 .net
AMDのOpenCL SDKはCPU(SSE)デバイスもサポートしてるから
そっちで動いてたってことかな
679:デフォルトの名無しさん
13/01/22 00:13:17.77 .net
デバイス取得時にGPUを指定すればそんな目に合うはずね~が
680:デフォルトの名無しさん
13/01/22 23:13:25.92 .net
デバイスにCPU使ってたらCPU使用率100%になるんじゃないの
681:デフォルトの名無しさん
13/01/23 00:21:18.43 .net
>>674
特に設定しないとシングルコアだからならない
682:デフォルトの名無しさん
13/01/23 01:32:16.04 .net
CPU版はdevice fissionしないと使えるコア全部使わなかったっけ?
683:デフォルトの名無しさん
13/01/26 18:02:42.38 .net
いくつか本読んで基礎的なことは
わかったんだけど、openclでmpegのエンコーダー
作ってみたいから何か参考になる情報ないかな
684:デフォルトの名無しさん
13/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:デフォルトの名無しさん
13/01/26 22:38:20.74 .net
>>677
MPEGってどれよ?
MPEG4(H.264)のことならx264がSSE、AVXアセンブリ含むソースコードが読めるからオススメ
686:デフォルトの名無しさん
13/01/30 22:41:00.14 .net
試しに↓使ってみたんだがローカルメモリ使ったら速度が3割落ちた。
www.aocplan.com/gpgpu/gpgpu-benchmark
687:デフォルトの名無しさん
13/02/05 22:18:38.26 .net
OpenCLってHyper-Qみたいな機能ってあるでしょうか?
688:デフォルトの名無しさん
13/02/05 22:28:21.47 .net
>>678
アーキ毎にカーネルを書きなおさないと性能でないよ。
689:デフォルトの名無しさん
13/02/06 21:46:06.32 .net
各アーキテクチャごとの最適化資料ってある?
690:デフォルトの名無しさん
13/02/07 05:31:00.88 .net
AMDだとこれが詳しい。NVIDIAのだったらCUDAのマニュアルを読めばいい。
URLリンク(developer.amd.com)
691:デフォルトの名無しさん
13/02/11 23:11:22.51 .net
標準のC++に替わり今後はOpenCLが標準に確定したな
OpenCLでパフォーマンスが激向上するから当然か
692:デフォルトの名無しさん
13/02/12 06:11:15.51 .net
寝言は寝て言え
693:デフォルトの名無しさん
13/02/17 21:21:57.05 .net
>>684
ありがとう。VLIW4だとスレッド数1/4にして、1スレッドで4つずつ処理するようにしたら倍速になった。
694:デフォルトの名無しさん
13/02/18 04:23:25.11 .net
R600のISA解説したpdfもどっかにあって、あれ読むとKernel Analyzerの右側の命令が読めるようになって捗るぞ。
695:デフォルトの名無しさん
13/05/09 04:25:55.54 .net
Intel Releases SDK with OpenCL 1.2 Support for Intel Xeon Phi Coprocessors | techPowerUp
URLリンク(www.techpowerup.com)
696:デフォルトの名無しさん
13/05/10 23:28:13.87 .net
CUDAが動かない古いNvidiaのビデオカードでも
OpenCLなら動いたりするものなのでしょうか?
697:デフォルトの名無しさん
13/05/11 17:38:28.19 .net
確かnvidiaがOpenCLサポートしているのは、
チップがGeforce8以降かつ、ドライバの対応も必要だったと思う。
でもgeforce8以降はほとんどCUDA(とPhysXが)乗ってたはず。
それ以前はサポートされていないから動かないんじゃないかな(機材とドライバがないから検証できん)
698:デフォルトの名無しさん
13/05/11 23:50:31.95 .net
CUDAにせよ、OpenCLにせよ古いマシンでやろうとする奴はなんなんだ?
古いGPUじゃ大して効果がないし、アーキテクチャがどんどん変わって
いるから使えないものが多いのに。
最新のアーキテクチャでも1万円も出せばそれなりのものが買えるのになあ。
699:デフォルトの名無しさん
13/05/12 10:11:53.81 .net
研究目的なら最新ので良いけど、実用だと4年前に導入した
数百台の計算機で高速化したい、とかもあるからな。
700:デフォルトの名無しさん
13/05/13 17:15:31.08 .net
GeForce8以前って、どんだけ古いカード使っているんだよw
いろんな意味で、無理無理。
701:デフォルトの名無しさん
13/05/15 13:05:11.17 .net
とりあえずGPGPU普及させたいならGPU各社ともミドルレンジ以下でFP64対応切るのやめてくんないかな
性能出るかどうかより使えたり使えなかったりってのが一番困る
702:デフォルトの名無しさん
13/06/05 08:17:39.89 .net
OpenCLのチューニングって、まずどのあたりから手を付ければいいかな?
ワークグループ分割数で結構変わるという話は聞くけど、やっぱり
おまかせより明示的に指定した方がいいんだろうか?
703:デフォルトの名無しさん
13/06/05 09:35:33.06 .net
おまかせとかやる気無さすぎだろう…
色々変えてみて速さを測れ。
704:デフォルトの名無しさん
13/06/05 20:55:53.52 .net
ハードに合わせて適当な値を選んでくれると思ってたんで自分で下手な値を設定するより
いいかと思ってたんだけど、たしかに明示的に指定した方がよくなるケースが多いですね。
目安としてはCL_DEVICE_MAX_WORK_GROUP_SIZEに合わせておけばいいんだろうか?
それ以外、これは押さえておけ、というようなチューニングポイントってありますか?
705:デフォルトの名無しさん
13/06/06 22:37:43.71 .net
アドレスモードが便利そうなのでイメージオブジェクトを使ってみようと思ったんだけど、
これって4ch固定なんですかね?できれば1chで使いたいんだけど。
706:デフォルトの名無しさん
13/06/17 09:44:11.96 !.net
>>698
> 目安としてはCL_DEVICE_MAX_WORK_GROUP_SIZEに合わせておけばいいんだろうか?
これだとスピードでないよ。
Radeonだったら>>684の最適化マニュアルを、NVIDIAだったらCUDAの
説明書を読め。
707:デフォルトの名無しさん
13/06/18 23:31:21.64 .net
つか、勉強目的でエミュレータみたいなのが欲しい
遅くていいから
708:デフォルトの名無しさん
13/06/24 22:41:41.16 .net
最近のハードなら何でも出来るだろ。
新しいの買えよ。それぐらい自己投資だ。
709:デフォルトの名無しさん
13/07/23 NY:AN:NY.AN .net
ついに 2.0 で Dynamic Parallelism きちゃったじゃねぇか!
710:デフォルトの名無しさん
13/07/23 NY:AN:NY.AN .net
nVidiaがいまだに1.1なのはどうにかならんのかな。
711:デフォルトの名無しさん
13/07/24 NY:AN:NY.AN .net
CUDAがあるから、あまり積極的にやりたくないんじゃね?
712:デフォルトの名無しさん
13/08/01 NY:AN:NY.AN .net
今AMDの環境で開発しているんだけど、NVIDIAの環境でもビルドできるよう
1.1の機能に限定することってできないんですかね?
CL_USE_DEPRECATED_OPENCL_1_1_APISみたいな。
713:デフォルトの名無しさん
13/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:デフォルトの名無しさん
13/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:デフォルトの名無しさん
13/08/18 NY:AN:NY.AN .net
回答ありがとうございます。
ただ、clCreateContextはclGetGLContextInfoKHRでデバイスを得た後に呼ぶことに
なると思うのですが?
手順は以下で間違ってますかね?
GLコンテキスト(HGLRC)作成
→clGetGLContextInfoKHRで関連付けられているCLデバイスを取得
→clCreateContextでCLコンテキストを作成
いずれにしても、どのデバイスを使っているかがわからないとプラットフォームも
決まらないと思うのですが。
717:デフォルトの名無しさん
13/10/24 01:02:02.86 .net
vloadn ってあるけど、直接ポインタを p[i] するのと速度違ったりするのか?
718:デフォルトの名無しさん
13/10/24 21:28:52.21 .net
vloadはアラインメントの制約がゆるい。要素でそろってればOK。
速度は実装によるだろうけど同じか制約がゆるいvloadのほうが少し遅い。
719:デフォルトの名無しさん
13/10/24 22:48:45.60 .net
なるほど。
アラインメントの制約のせいで、ちょっと冗長になってたあのコードとかを小さく綺麗に書き直せるかも。
これは良いことを知った。サンクス。
720:デフォルトの名無しさん
13/11/22 19:43:38.99 .net
Khronos Groupが「OpenCL 2.0」を完成、コンピュータビジョン向け「OpenVX 1.0」の暫定仕様も発表
URLリンク(sourceforge.jp)
URLリンク(www.khronos.org)
721:デフォルトの名無しさん
13/11/22 19:46:35.85 .net
タラタラ完成してんじゃねーよ
722:デフォルトの名無しさん
13/11/22 20:47:48.41 .net
OpenVXってのが気になる
723:デフォルトの名無しさん
13/11/25 08:28:25.60 .net
JOCLも、早く OpenCL 2.0 に対応しろよ
724:デフォルトの名無しさん
13/11/30 20:57:20.27 .net
OpenCLって初期化とかやたら面倒なんですが、
OpenGL に対する glfw や GLUT みたいなライブラリはないんですか?
勉強してみたい(というか、勉強しかけた)のですが、
計算処理を楽しむ前に挫折しそうです。
725:デフォルトの名無しさん
13/11/30 21:26:47.63 .net
あるけどない
独自API、英語のみのマニュアル…
初期化なんて一度書けば使い回しだからとりあえずやってみるべき
726:デフォルトの名無しさん
13/11/30 22:18:44.90 .net
マニュアルが英語なのは全く問題ないので紹介していただけないでしょうか。
それでも枝葉末節の部分が面倒であれば、今はそういうものだと諦め、
コピペで使い回してかんばります。
ただ、私はたとえば OpenGL 入門者に対して、同じ理由
つまり「初期化なんて一度書けば使い回しだから」という理由で
ウィンドウ作らせたり、レンダリングコンテキストを作らせたりはしたくないです。
使い回し
幸い OpenGL にはユーティリティライブラリがあり、入門者にはありがたいです。
なので OpenCL にも入門者用にきっと何かあるだろうと思っていました。
727:デフォルトの名無しさん
13/11/30 22:34:05.19 .net
OpenGL ほど広く使われていたらあっただろうね。
728:デフォルトの名無しさん
13/11/30 22:53:53.35 .net
NVIDIAやAMDのサンプルコードには簡単なユーティリティが入っているよ。
OpenGLみたいに糞面倒なわけじゃないから、わざわざGLUTみたいなものを
作ろうと思った人はいなかったんだろう。
729:デフォルトの名無しさん
13/12/01 02:54:53.01 .net
そんなに面倒か?
必要十分しかないと思うんだが
730:デフォルトの名無しさん
13/12/01 03:12:45.40 .net
CUDAの簡単さと比較すると面倒
731:デフォルトの名無しさん
13/12/01 03:18:23.16 .net
あほか
732:デフォルトの名無しさん
13/12/01 03:47:08.42 .net
c++binding使えば簡単じゃないか。
まあ、プラットフォーム選択する時点で
cudaには必要ない工程だが
733:デフォルトの名無しさん
13/12/01 07:35:28.28 .net
>>719
intelが最近OpenCLライブラリやGPU向けライブラリのプレビュー版を発表してる
URLリンク(software.intel.com)
IPPはこれまで最適化済みCPUライブラリだったけど、それをGPUにも拡張しようとしてる模様
734:デフォルトの名無しさん
13/12/03 07:13:40.30 .net
>>726
ありがとうございます。
調べてみます。
735:デフォルトの名無しさん
13/12/03 13:47:40.89 .net
amd apu+linuxでaparapi経由で使ってみたんですが面白そうですね。
はるか昔に、javaで配列関係はどうしようかjniにでもしようかと悩んでたんですがこれでやっと悩みは解決できました。
java9.stream.parallelがopenclに対応してaparapiも不要になる(jvmと結合する)ようなので、openclを使えばjavaのままで配列のソリューションが得られるようです。
まだ触って4日ぐらいですが勉強がてらに、行列などの配列依存のライブラリを書き直してみようと思います。
736:デフォルトの名無しさん
13/12/30 11:40:26.21 .net
kaveriが販売される模様
737:デフォルトの名無しさん
14/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:デフォルトの名無しさん
14/02/24 15:19:36.59 .net
Core iとグラボつんでグラボで画面表示しててもIntelHDでOpenCLの計算をさせることはできるのでしょうか
739:デフォルトの名無しさん
14/02/24 16:36:29.14 .net
遅くはなろうが計算は出来るでしょう
740:デフォルトの名無しさん
14/02/24 17:04:11.19 .net
あれ?遅くなる要因あるのでしょうか
使ってないIntelHDも使いたいというイメージだったのですが
741:デフォルトの名無しさん
14/02/24 18:04:09.93 .net
CPUでやったほうが速いってだけ
742:デフォルトの名無しさん
14/02/24 18:14:29.38 .net
CPUスレッドとは排他でしか使えないと言うことですか?
743:デフォルトの名無しさん
14/02/24 18:17:43.70 .net
732だけど、単純にIntelHDをグラボと取り違えただけだよ
744:デフォルトの名無しさん
14/02/24 18:34:07.15 .net
了解です
745:デフォルトの名無しさん
14/03/23 07:57:03.89 2/mKAdk3.net
Ubuntu用のSDKはDebian GNU/Linuxで使えますか?
746:デフォルトの名無しさん
14/03/24 20:46:02.33 +qxUA/lQ.net
>>733
俺も今日勉強始めたばっかだから実態よく分からんが、
規格ミニマムだとGPUで実行するバイナリを、
プログラム実行時に動的にコンパイルしてマウントする場合があるらしく、
それだとコンパイルのオーバーヘッドで遅くなりそう。
実行時にコンパイルせず事前にコンパイルしたバイナリを使うこともできるそうで
NVidia, AMDあたりはLLVMで動いてるからまず大丈夫だろうけど、HD Graphicsはどうなるんだろうか?
747:デフォルトの名無しさん
14/04/04 10:41:37.63 YtPgho8U.net
CentOSにAMDのドライバを入れることに成功したけど、Debianには入らなかった。
748:デフォルトの名無しさん
14/04/23 21:53:33.92 e3QPM/2Y.net
GPU持ってるCPUを使っているとか?
749:741
14/04/23 22:38:07.40 Xxk46iNW.net
はい、haswell(i7-4771)を使っています。
その他のグラフィックボードは積んでいません
750:デフォルトの名無しさん
14/04/23 23:16:57.80 RpkkzUGi.net
Platformの数とデバイスの数はイコールじゃない。
デバイスはCPUとGPUの2個見つかるはず。ちなみに内蔵かどうかは関係ない。
気になるならclGetPlatformIDs/clGetPlatformInfoで見てみりゃいい。
751:741
14/04/23 23:39:22.71 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:デフォルトの名無しさん
14/04/23 23:55:44.68 TUgA9FPl.net
Platform数はドライバの数
汎用のドライバとIntelチューンのドライバの2つが入っていたら2つのプラットフォームが出てくる
少なくともWindowsだとそんな感じ
あと745の結果でPlatformIDが同じなのはおかしい
多分745のプログラムはバグってる
753:741
14/04/24 00:06:20.94 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:デフォルトの名無しさん
14/06/26 07:45:11.00 DsGyZECt.net
>>717
cl.hpp使えばそんな難しくないだろ
URLリンク(qa.atmarkit.co.jp)
755:デフォルトの名無しさん
14/06/26 08:39:51.72 rajeiAxv.net
デフォルトのコンテキストやキューが追加されたのはOpenCL1.2からだから
NVIDIAじゃ使えないことに注意な。
756:デフォルトの名無しさん
14/06/26 12:05:53.66 u/fLSVr/.net
>>747
// OpenCL側に結果を書き込む領域を作成する
const size_t
length = 0x10;
cl::Buffer
array( CL_MEM_READ_ONLY, length * sizeof( float ) );
( ´,_ゝ`)
757:デフォルトの名無しさん
14/06/26 22:35:19.78 BVAAIzQv.net
>>749
答えといてやれよ。
758:デフォルトの名無しさん
14/08/29 13:36:44.60 P9znXDYB.net
AMDとMS,GPU演算用途向けのコンパイラ「C++ AMP v1.2」を発表
URLリンク(www.4gamer.net)
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:デフォルトの名無しさん
14/08/30 20:21:59.78 rOGhcjm5.net
ム板はしょっちゅう落ちるな。
760:デフォルトの名無しさん
14/08/30 20:24:50.83 nZ1XDijW.net
よく落ちるな‥
761:デフォルトの名無しさん
14/09/19 08:34:07.91 KzrQAxPc.net
OpenCL 1.2が現在のstableになるのかな?
1.1だとOpenCVは動かないですね
762:デフォルトの名無しさん
14/09/19 23:42:34.05 dfKMMaQo.net
NVIDIAが1.2に対応しないからうちは1.1縛りだな。
OpenCVみたいにCUDAと両方やるならいいんだろうけど。
763:デフォルトの名無しさん
14/10/15 00:45:43.10 bIoSVMWH.net
VBAで使いたいのですが、ラッパーDLL何か
ご存知ないでしょうか?
C#用のは幾つか見つかるのですが…
764:デフォルトの名無しさん
14/10/15 01:04:21.97 bIoSVMWH.net
質問あげ m(_ _)m
765:デフォルトの名無しさん
14/10/15 10:11:05.56 3rwOGNYw.net
>>756
C#でVBAとOpenCLの仲介DLLでも作ればいいんでないの?
Windows知らんけど。
766:デフォルトの名無しさん
14/10/15 10:36:01.03 bIoSVMWH.net
>>758
そうなんですけど、既にあるならそれ使いたいなと。
いま、ClooというC#用のラッパー使ったりソース見てるのですが、
ジェネリクスは使えないからどうするんだ?とか
DLL作ったことないのでチョット途方に暮れてます…
(シンプルなDLL作成サンプルは理解できますが、
openclを全てラップするのは無理…)
767:デフォルトの名無しさん
14/10/15 19:03:22.75 oTkKZ4Eq.net
既にあるもので使い方覚えるより
自分で造った方が早い場合も多い
768:デフォルトの名無しさん
14/10/15 22:49:10.60 y41AVgB1.net
口だけ番長
769:757
14/10/16 00:06:46.03 1e+5gfAa.net
>>760
プラットフォームを返すところから少し作り始めてみましたが、
VBAのcollectionとして値を返すなら、
C#では何なの?ディクショナリ?ってとこで
早速つまづいてしまいました(;_;)
なので、VBAでラッパー作ろうかと迷走中…
770:デフォルトの名無しさん
14/10/16 00:45:29.59 925HRnD9.net
別に何しようと勝手だけど
VBAでOpenCL使う必要性って何?
非同期処理が苦手なVBAは「待ち」が生じるような複雑な計算は向かないし
計算速くするだけならDLLなりに入力投げて結果だけもらえばいいし
Officeとの連携ならVBA使う必要ないし
規定されたソフトウェア以外使用禁止だったらそもそもOpenCL使えそうにないし
771:デフォルトの名無しさん
14/10/16 15:24:45.15 7O3aHiya.net
そもそもVBAに固執してる時点で視野狭窄。
772:757
14/10/16 17:11:21.81 8j84DcHT.net
固執?( ´����×����` ) プッ
773:757
14/10/16 17:12:09.70 8j84DcHT.net
ありゃw
774:デフォルトの名無しさん
14/10/17 13:05:53.28 npcZf8Up.net
あらあら可哀想なひとでしたか。
775:デフォルトの名無しさん
14/10/17 16:09:50.28 aw+RiOqr.net
こんなところにもシナが湧くようになったか
776:デフォルトの名無しさん
14/10/18 01:23:16.18 sx5ESDLm.net
そもそもそんな方法よりこうした方が・・とか
上流にまで遡って正そうとする奴がいるけど
余計なお世話なんじゃない?
VBAでOpenCLを使う方法を聞かれているんだから
答えがあるならそれに出せばいい。
無いならわからないと答えればいい。
見当違いのに話を捻じ曲げて、してやったりと
悦にはいるのか?
777:デフォルトの名無しさん
14/10/18 13:19:15.72 Z3gRebWt.net
余計なお世話だと感じたらスルーすればいいだけ
スルーも出来ないお子ちゃまが馬鹿にされるだけ
778:デフォルトの名無しさん
14/10/18 15:49:20.82 mzkaImX0.net
>>769
あんた公務員やな
779:デフォルトの名無しさん
14/10/18 19:40:45.23 P/Strs7V.net
余計な世話しなきゃいい
780:デフォルトの名無しさん
14/10/19 02:01:55.89 CeuU+CpH.net
まあ、余計なお世話なやつは
わかってない(解決策はわからない)
ってことだから
解決策以外はただの雑談
スルーするかしないかなんて、
どうでもいいこと
781:デフォルトの名無しさん
15/01/12 09:09:09.30 BHqm0X8b.net
OpenCLとCUDAの相互運用について情報を探していたらCUDAカーネルを
OpenCLランタイムから実行できると書いてある記事を見つけたんだが、
本当にそんなんできるんだっけ?
URLリンク(www.4gamer.net)
782:デフォルトの名無しさん
15/02/04 08:37:05.19 PgjHlyod.net
いままでコンスタントに500[ms]程度でkernel処理が終わってたのが、
1分以上kernel処理が終了しない異常が、
処理2回目とあと不定期に発生するようになりました。
処理の内部のループカウントを数えたら正常なときと大差なく、
重い処理をしてはいないようです。やはりハードの不具合でしょうか?
783:デフォルトの名無しさん
15/02/04 11:47:15.88 kErMECZ6.net
windows update
784:デフォルトの名無しさん
15/02/08 04:16:42.58 4RF7kRSx.net
モバイルだと、GPU性能とCPU性能あんま大差ないからな。CPUだと4コアでNEON使えば最大性能で60GFLOPSぐらい?最新のTegraX1とかだと300GFLOPSオーバーするかもしれんが
現行のAdreno330ぐらいだと150GFLOPSくらい?
785:デフォルトの名無しさん
15/02/08 04:19:43.86 4RF7kRSx.net
だからNEONのコードをわざわざ書き直す必要まだないかな?メモリアクセスのほうがボトルネックになってるっぽいのもあるし。まぁ、CPUとGPU実行じゃ消費電力ちがうかもしれんが。
786:デフォルトの名無しさん
15/02/15 00:22:26.32 rqZ8R7KU.net
個人的にはこの言語産廃な気がするけどどうなんだろう
手続きの多さはさすがにちょっと…
CUDA←AMDも似たもの作るorライセンス料払ってでも統一しろ(最良)
C++AMPとOpenACC←そのレベルの抽象言語ぐらい統一しろ(次善)
OpenCL←やめて
787:デフォルトの名無しさん
15/02/15 10:01:14.87 MuMGrz7U.net
OpenCLはハード非依存のGPGPUプラットフォームとして用意され、
その上にライブラリを構築してユーザーはそれを使うのが本来意図してたこと。
残念ながらそういうライブラリがあまり出てきていないのが現実かな。
788:デフォルトの名無しさん
15/02/15 12:56:46.74 TTUR8i8s.net
OpenCLはDSPとかFPGAとかGPU以外もターゲットに入っているから
下手に統合しない方がいいと思う
789:デフォルトの名無しさん
15/02/15 20:42:11.90 aU4fh9i9.net
とか言いながら、触ればわかるが単なるCUDAの焼き直しなんだよな、これ
790:デフォルトの名無しさん
15/02/15 21:52:13.56 DwKzmQqr.net
nvidiaのquadro K620Mか
インテルグラフィックHD5500にしようと思うんだけど
openclとか数値計算の初歩の練習としてはどっちがいいよ
791:デフォルトの名無しさん
15/02/15 22:09:31.75 SQuQNCw8.net
>>783
IntelのOpenCLドライバって糞だって印象しかない。
AMDやNVIDIAで動いてたコードが通らなかったりするし。
792:デフォルトの名無しさん
15/02/15 22:20:29.24 DwKzmQqr.net
>>784
ありがとうございます
793:デフォルトの名無しさん
15/02/15 22:26:41.71 SSlwb3yD.net
実は正しくないコードが他の環境ではたまたま通っていただけ、てのはよくある。
たしかにIntelのコンパイラは厳しいから、普段の開発は他のGPUでやっていても
IntelのKernel Builderでカーネルのチェックしたりするな。
794:デフォルトの名無しさん
15/02/16 00:42:06.13 bUgXoWHZ.net
>>786
コードそのものに問題はなかったよ。
カーネルが複雑になりすぎるとIntelのコンパイラは落ちるから論外。
795:デフォルトの名無しさん
15/02/16 00:55:29.94 0cGz3jVB.net
IntelはGlobalWorkingGroupとLocalWGのサイズがN倍じゃないと動かないんだけどAMDは変な比率でも動く
原因調べるのの時間かかったよ
796:デフォルトの名無しさん
15/02/16 02:05:22.57 bUgXoWHZ.net
>>788
そりゃ動くほうが不思議だw 自分の場合はカーネルを小さくしたら
普通に通ったからそういう問題はなかったはず。
797:デフォルトの名無しさん
15/02/16 07:56:11.60 F7oc1qZ/.net
>>784
同意
798:デフォルトの名無しさん
15/02/16 13:24:15.63 LR9r89r7.net
AMDのコンパイラも最適化オンにしたらコンパイル終わらなかった事あったので、結構怪しい。(2011年ぐらいの話だけど)
799:デフォルトの名無しさん
15/02/16 13:44:20.54 bUgXoWHZ.net
>>791
確かにAMDのコンパイラの最適化は完全に地雷だったw
800:デフォルトの名無しさん
15/02/16 21:40:57.33 HyfDl27x.net
>>783
初心者がこれからOpenCLを始めるのにどの環境を選ぶか、という話なら
NVIDIAは避けるのが無難だな。デバッガやオフラインコンパイラなんかの
ツールが皆無に等しい。
CUDAもやりたいとかいうなら別だが。
801:デフォルトの名無しさん
15/02/16 22:38:07.54 QHeQ+cdL.net
>>793
多くの奴はGPGPUするぞ、じゃメジャーなCUDAで良いやだからな
OpenCL使ってIntel,Nv,AMD(あとFPGAとか?)でちゃんと動くものを作らなければいけないってあんまりないだろからな
802:デフォルトの名無しさん
15/02/17 02:24:50.68 xvdMpEI6.net
OpenCL使ったところで、同じコードでどんなCPU/GPUでも効率よく動くとかレアケースだしなぁ。
803:デフォルトの名無しさん
15/02/17 08:22:15.68 fCIGE3+K.net
最高のパフォーマンスを引き出すチューニングというなら別だが、どれかGPUを想定した
コードならそこそこの速度で動くだろ。たいてい、従来のCPUより速けりゃ十分だろうし。
FPGAだけは別格で、GPUと同じコードじゃぜんぜん速度が出ないだろうが。
804:デフォルトの名無しさん
15/02/18 10:38:35.72 CGhwPhC5.net
SSEレジスタに乗ること期待して書いたchar16とかGPUに食わせたら憤死するで。
805:デフォルトの名無しさん
15/02/18 16:12:46.20 pennC58Z.net
アーキテクチャ毎に最適化しないと、
OpenCLで性能なんか出せないよ。
806:デフォルトの名無しさん
15/02/18 22:51:48.89 Z2YWe05s.net
>>797
ベクタ型は想定するターゲットで効果が見込まれる場合に使うべきで、そういう意味では
どっちかというとチューニングの範疇だろう。
そもそも、インテルのコンパイラならベクタ型使わずに普通に書いてSSE/AVXを
使ってくれるんだが。CL_DEVICE_PREFERRED_VECTOR_WIDTH_CHAR=1だしな。
下手に最適化しようとして却って駄目にしているように思える。
807:デフォルトの名無しさん
15/02/19 01:05:51.96 f67JHinc.net
かたやGPUになるとパイプラインのスカスカ具合見ながら
int2とかint4とか使って依存関係のない演算で埋めていかないとお話にならんしなぁ。
808:デフォルトの名無しさん
15/02/19 02:14:32.89 KUEe9MYM.net
アーキテクチャごとの最適化は、まだコンパイラとかの成長中の部分もあるだろうしなぁ
そのうち改善はしてくれるような気がするけど
809:デフォルトの名無しさん
15/02/19 22:30:01.89 t/UF4QVL.net
そうは言っても今のアーキが向かってる方向ってコンパイラ実装の難易度上がってるから
コンパイラの苦手な部分を補填してやらにゃ速くならないってのは改善される事はないと思う
むしろそこまで賢いコンパイラとか使いたくない
810:デフォルトの名無しさん
15/02/19 23:19:07.50 1LBnym+M.net
技術的側面もあるが
それ以上にIA64がコケたことが
コンパイラを賢くしてプロセッサを脳筋にする道を
決定的に閉ざした
コンパイラの賢さに関して言えば
足並みがそろってない事の方が問題だと思う
811:デフォルトの名無しさん
15/02/26 07:17:19.04 BKvgQceT.net
クロノスってなんかのアニメであったような
812:デフォルトの名無しさん
15/02/26 14:44:53.01 ZlyxtZ3O.net
クロノスはゼウスのお父さん
813:デフォルトの名無しさん
15/02/26 20:31:41.27 yDVFOiWq.net
マッシーンロボッ!
お前には、敵はない!
814:デフォルトの名無しさん
15/03/08 09:21:28.42 rJrv12ko.net
OpenCL2.1は発表されたが相変わらずNVIDIAはやる気なさそうだなぁ、コメントくれないし。
おかげでいまだに開発は1.1ベースだよ。
815:デフォルトの名無しさん
15/04/12 20:37:22.82 4fkLnYAO.net
OpenCLでHEVCをGPUに部分的にデコードさせる実験やってるな
まあ新製品はハードウェアでHEVCに対応してるから不要になっちゃうんだけど
816:デフォルトの名無しさん
15/04/12 20:37:43.88 4fkLnYAO.net
×やってるな
○やってたな去年の夏ごろ
817:デフォルトの名無しさん
15/04/12 21:03:58.32 b726GPIq.net
結局使えるのは、いつくらいになるのか…
818:デフォルトの名無しさん
15/04/25 14:51:39.69 zIE5htjK.net
vexcl使えばopenclもcudaも関係なくGPUが使えるっぽいけど
819:デフォルトの名無しさん
15/04/25 16:55:17.48 DlB5+dQK.net
NVIDIAでやっと1.2が使えるようになったと思ったらバグってんじゃねーか。
本当にやる気無いのな。
820:デフォルトの名無しさん
15/04/26 16:04:03.54 ljYoE8AT.net
そらやる気ないやろ。
cudaなら囲い込みできるのに、
cudaの焼き直しのOpenCLなんて協力するだけ損だし。
821:デフォルトの名無しさん
15/04/27 10:52:17.46 1JZfjbGY.net
URLリンク(pocl.sourceforge.net)
822:デフォルトの名無しさん
15/06/06 14:22:49.99 xHuAhJj5.net
Core i7 3990とGeForce使ってるんだけど、IntelHDが認識されてなくてデバイスマネージャに表示されない
OpenCLの性能評価を試したいんだけど、IntelHDのドライバをインストールすれば認識されますかね?
823:デフォルトの名無しさん
15/06/07 15:10:46.44 OFY6KtcL.net
>>815
モニタはiGPUとゲフォどっちにつないでる?
それと自作PCか?
824:デフォルトの名無しさん
15/06/07 15:14:39.85 OFY6KtcL.net
あ、それとintel Opencl driver インストールうまくできるか試してみて結果おしえて
825:デフォルトの名無しさん
15/06/07 20:39:44.84 NnypvtRT.net
>>816
モニタはGeForceに接続。ドライバインストール試してみる。
826:デフォルトの名無しさん
15/06/08 05:35:15.96 ewd9hwV4.net
Intelのにモニターをつなげないと
いけなかったはず。
827:デフォルトの名無しさん
15/06/08 13:13:32.81 rnRcmo2O.net
i7 3990は検索してもろくにヒットしないけど、Sandy Bridge-Eなら無理なのでは。
828:デフォルトの名無しさん
15/06/09 01:36:37.47 c7FHKlcw.net
そだね、そのくらい確認してるかと思って聞かなかったけど、
iGPUがついてないならそもそも無理だわな。
829:デフォルトの名無しさん
15/06/10 12:18:07.90 VIG2W0Y+.net
うまくいけばCPUの方はOpenCLで動かせるかもしれない
やる意味ないけどね
830:デフォルトの名無しさん
15/06/19 09:06:28.51 giF1KE9b.net
GPUのないノートのCPUでデバックしてから
GPUで実行できるなら俺はうれしい
831:デフォルトの名無しさん
15/06/19 21:38:40.35 s6jV56Gc.net
別途ドライバをインストールしなきゃならんってのが難点なんだよな。
SSE/AVXをお手軽に使えて、コア数に応じてマルチスレッドで実行してくれるから
使いではあると思うんだが。
832:デフォルトの名無しさん
15/06/19 23:20:08.11 KZJPVbVq.net
デバッグなんかよりチューニングが大事だからターゲットハード以外でコーディングしてもなぁ
833:デフォルトの名無しさん
15/06/20 00:21:14.39 46SUOvEb.net
なにがなんでも最高性能出さなきゃならん用途ばかりじゃあるまい。
一般的な並列化のみで大多数のハードでそこそこ速くなりゃ十分、という応用もある。
834:デフォルトの名無しさん
15/06/22 00:09:27.57 e4hiyCLD.net
CLはチューニングなしだとCPUに惨敗もありえるのでな。
835:デフォルトの名無しさん
15/06/22 01:11:03.05 rREKDKy5.net
メモリ転送とenqueueしてからの計算開始に時間かかるのがなぁ
836:デフォルトの名無しさん
15/06/22 07:39:26.22 FYteK6ai.net
CPUに惨敗してた処理がチューニングでどうかなるもんか?
単に並列化できてなかっただけじゃね?
837:デフォルトの名無しさん
15/06/22 21:40:24.04 e4hiyCLD.net
>>829
レジスタ数とか共有メモリサイズとかでブロックサイズだっけnVIDIAでいうところのwarp数とか
調整しないとてんでダメだよ。
838:デフォルトの名無しさん
15/06/22 21:41:31.55 e4hiyCLD.net
>>828
そのコストを払っても高速かどうかは実機でテストするしかないしな。
機種ごとにCLを使うか通常ルーチン使うか選別するくらいしないと効果なし
839:デフォルトの名無しさん
15/06/23 02:38:28.65 22fvktD/.net
チューニングは難しい
何となくやってみたら、処理時間が5倍遅くなったときの衝撃は大きかったな
840:デフォルトの名無しさん
15/06/23 08:25:00.27 drLPVFNo.net
ターゲットのハードに特化したチューニングをしないと使い物にならんようなことを
言っている人がいるが、そんなこといったらユーザー環境を特定せずに広く配布する
アプリなんて作れんな。
うちじゃ一般的なGPU向けチューニングしかしてないが、NV/AMD安いのから高いのまで
テストしてみてローエンドでもCPUの数倍くらいで動くから十分、速く動かしたいなら
高いGPU使え、ってなノリだな。
841:デフォルトの名無しさん
15/06/23 08:50:44.48 LQs/3Np0.net
一番遅いハードに合わせて作っとけば問題ないよ
842:デフォルトの名無しさん
15/06/23 22:58:24.67 VwORpFDM.net
>>833
AMDのHSAのAPUとAMDのOpenCl2のdGPUがHPCを除いたいまのデファクト
それ以外は無視で良い。Nvは一般用でGPGPUやる気ないし
HPC用ならターゲットのハードに特化したチューニングは当然だし
843:デフォルトの名無しさん
15/06/24 01:34:16.84 35TMs94C.net
madとかそういう複合命令(?)を使ってチューニングする程度で抑えたいところ
844:デフォルトの名無しさん
15/08/31 07:10:09.59 kH1QDWTh.net
Vexclの開発が止まってる
誰か引き継ぐ人はいないのか?
845:デフォルトの名無しさん
15/09/02 06:58:53.31 VNDyXTKC.net
早く2.0を使えるようにしてくれ
846:デフォルトの名無しさん
15/09/03 00:02:12.18 iQnjIkb4.net
NVIDIA無視すりゃ幸せになれるぞ
847:デフォルトの名無しさん
15/09/03 01:44:07.69 cb/ef9ik.net
>>839
こんなに対応が遅いと思わなかったんだよ
次からはAMDを信じるよ、あればだけど
848:デフォルトの名無しさん
15/12/19 10:21:19.84 7/8YsZOJ.net
プログラマはMacを使ってるってマジ?
スレリンク(news板)
849:デフォルトの名無しさん
15/12/19 10:23:37.79 qfRCvKdP.net
単なる世間知らずが踊らされてそう言ってるだけ
850:デフォルトの名無しさん
15/12/19 12:49:21.08 BBUxwf4S.net
マルチコピペだぞそれ
851:デフォルトの名無しさん
15/12/19 15:25:38.18 iG82T79N.net
100スレ以上にレスしてNGにならないのは運営が公認してるマルチってことか
852:デフォルトの名無しさん
15/12/19 16:25:03.85 2xl0Mjgh.net
GeForceはOpenCL2.xに対応した?
CUDAに同様の機能が在るから技術的に無理という事はないだろうけど
853:デフォルトの名無しさん
15/12/19 18:13:33.83 LGhGH2LK.net
358でやっと1.2正式サポートしたところ。
854:デフォルトの名無しさん
15/12/19 19:06:17.07 2xl0Mjgh.net
サンクス。IntelですらOpenCL2.0に対応しているのに業界最大手のnVIDIAがやらないのはなぁ
CUDAを使えという事なんだろうけど、それではnVIDIA専用になってしまうからそれは避けたい。
かといってnVIDIAを無視する訳にもいかないというジレンマ
そろそろOpenCL2.xをメインにしていきたいのだが
855:デフォルトの名無しさん
15/12/20 00:20:21.34 ujiFhYYe.net
VGAはいまAMDがすごく伸びてきているんだろ
来年の後半にはVGAの販売数シェアではAMDがNvidiaを上回るんじゃないのか
再来年には一般グラフィックではIntel、AMDが2強ってなるんじゃないか
856:デフォルトの名無しさん
15/12/20 00:47:13.59 14eB8c4R.net
NVIDIAのOpenCL対応はちょうどAppleが採用やめたあたりから停滞したな。
結局のところNVIDIAにとって、そういうOpenCLを望む大口の顧客でもいない限り
OpenCLに力を入れる理由はないんだろうな。
857:デフォルトの名無しさん
15/12/20 01:02:38.32 XNwlDZDb.net
nvidiaはopenAMP+だっけ?あっちに力いれてんじゃないのかね?
858:デフォルトの名無しさん
15/12/20 04:40:12.37 oUoqwn36.net
AMDもCUDAに対応するみたいなニュースをみたけど、どうなったんだろう?
GPGPUの技術も速く落ち着いて欲しい
859:デフォルトの名無しさん
15/12/20 07:41:04.82 MpbNAZoy.net
CUDAが各社GPU共通のならいいけどそうじゃないからなぁ
Intel iGPUでも使えないと困る
860:デフォルトの名無しさん
15/12/20 07:47:22.55 14eB8c4R.net
AMDのあれは、HSAをターゲットにしたHalideやvexclのような並列計算APIで、
それがNVIDIA向けにもコンパイルできるって話だな。既存のCUDAコードからも
コンバートできるというのは目新しいが。
861:デフォルトの名無しさん
16/03/29 10:04:21.74 /c8bAcK4.net
サッカーブッシュ日本代表日程ぷあたん(しゅっちょうまいくろ教育長交代)春文執行40代売上差額シュガーチョコ
URLリンク(www.youtube.com)宇ドナルドアナリストパワーストーンコーチングとしまえん
サッカーブッシュ日本代表日程古本屋よしたけしゅっちょうちょこしゅがー
ディーラー税務署天才開発者死亡詰みヨミドクターマイクロサービ
862:ス不足 サッカーブッシュ日本代表日程ぷあたんシフト光金さかい強制バイト人権侵害問題 春分資源執行ニューヨーク低原価ぼったステーキソルトレイク福岡横浜新橋奴隷課金パチシフト強制バイト問題新潟米センター生残 コスメ24チャリティー隠れ40代生活保護プレイボーイバイトレードいたりあん接待問題 マスコミKARDローンケーオーサービス不足婚活パーティー寄付金執行原発ビジネス FBIチャイニーズタイホテル売上事務所ガチャ決算ガチャキャンペーン(販売報道陣過激派組織向携帯最新情報提供終了 校長発言細心注意ノートン産廃エラー(著作権クレーム中国反応融資高額教育費)(中国捕鯨団体40代社員サッカーコメント 高額入学金ヤフウ新橋大学ヤフウ新橋理事長FX経費 おじや50代資産ガリバズフィード40代エリート
863:デフォルトの名無しさん
16/05/30 13:15:08.40 27ORFIrk.net
CUDA8.0RCでも1.2どまり
864:デフォルトの名無しさん
16/05/31 02:00:22.72 tLbBjsj4.net
CUDAが強すぎて、なかなか広がらないイメージ
865:デフォルトの名無しさん
16/05/31 15:24:04.45 o40hgVi5.net
あまり最適化されてない(できない、ifがそれなりに多い)プログラムをCPUとGPUで動かしてみて、
早い方を採用するには都合がいい。
866:デフォルトの名無しさん
16/08/08 11:44:01.40 OeTPyxgg.net
CUDAは強い強い言われてるけど結局一社独占の技術だから過渡期の産物で終わってメインストリームにはなれんよ
nvidia自体x86やARM関係なくCPUを締め出しにかかって古い仕様を拡張する気がなさそうだし
867:デフォルトの名無しさん
16/08/08 23:41:36.48 FOEjBVJr.net
しかしOpenCLも最近失速気味だしなぁ。規格は2.2まで出てるのにいまだに2.1のまともな実装すら出てないし。
AMDが体力続かなくて手を引いたりしたらOpenVXみたいにフェードアウトするんじゃないか?
868:デフォルトの名無しさん
16/08/13 04:34:37.27 C6tpw
869:DrS.net
870:デフォルトの名無しさん
16/10/29 09:17:30.79 W9gQheBG.net
AppleがGeForce採用すりゃNVIDIAもOpenCLをアップデートすると期待してたが、今回も採用なしか。
それとも逆に、いつまでもOpenCL 2.0対応しないから採用しないのかな。
871:デフォルトの名無しさん
16/10/29 12:19:11.69 YsxFht0u.net
OpenCLはオワコン
872:デフォルトの名無しさん
16/10/29 15:09:52.99 0Cs4HSkt.net
HIPだっけ?
あれでCUDAを汎用的に使えるようになるんじゃないの?
873:デフォルトの名無しさん
16/10/29 18:46:14.19 vjtn6SxB.net
>>862
C/C++使いはOpenCLも使えないと駄目ってなりつつあるんじゃないのか?
874:デフォルトの名無しさん
16/10/30 01:49:24.70 IKgBO44W.net
それはOpenMPでは
875:デフォルトの名無しさん
17/01/08 01:47:50.25 qDa6npPv.net
Vexcl難しい
サンプルコード少なすぎる
876:デフォルトの名無しさん
17/02/12 09:50:54.30 fljd0HzI.net
vexclは挫折してviennacl使ってる
使えるスキルある人ならvexcl良いと思うけど
自分には無理だった
877:デフォルトの名無しさん
17/02/12 14:41:00.16 VBfSC62c.net
boost.computeなら、どうだろうか?
878:デフォルトの名無しさん
17/02/16 11:11:01.71 sX4bqSJb.net
Boost.computeはcudaに対応してない
879:デフォルトの名無しさん
17/02/17 01:28:52.49 LtwBLUnB.net
OpenCLの話題だし、CUDA対応とかより、いかにOpenCLのコードが書きやすいかのほうが大切だと思うんだ
880:デフォルトの名無しさん
17/02/28 20:15:03.56 514SeM49.net
ここ1年くらい停滞気味で話題が少なかったけど、これはめでたい。
NVIDIA 378.66 drivers for Windows offer OpenCL 2.0 evaluation support
URLリンク(www.khronos.org)
一方で、前にいろいろぶち上げたAMDは何してるんだ?Ryzenで忙しいってか?
881:デフォルトの名無しさん
17/03/17 02:02:00.80 YSidBwLT.net
Vexclで行列計算したいけど行列掛け算のexampleしかない
qr分解とかライブラリ使って出来ないの?
Vienaclにはqr分解とか例が沢山あるのに
882:デフォルトの名無しさん
17/03/17 11:56:23.09 ol/nseXL.net
できる
883:デフォルトの名無しさん
17/03/30 08:07:31.22 sSr9ORWQ.net
過疎ってるところ恐縮ですが、質問です。
通常のCプログラムの中で、コプロ的な使い方でOpenCLをインラインアセンブラのように使うような使い方は可能なのでしょうか?
もしくは、その様な使い方を実現する方法はないでしょうか。
884:デフォルトの名無しさん
17/04/04 23:25:23.65 d4Y6801f.net
Openmpでgpuの並列計算も出来るようになってから
Viennaclは更新も止まって、もう実質一年ぐらい更新ない
Openmpがgpu計算の標準になるのかな
885:デフォルトの名無しさん
17/10/25 09:29:08.47 h/b8kKiY.net
開発環境自体もOpenCL 2.0で止まっている感じはするな
鈍足になった感じはする
886:デフォルトの名無しさん
18/04/03 04:40:48.84 mPevnajZ.net
cudaだと毎回計算結果違うとかビットエラーで整数計算も間違うことあるらしい
OpenCLをamdで動かすとどうなの?
887:デフォルトの名無しさん
18/04/03 11:25:01.62 R6gDm2yr.net
えっ
888:デフォルトの名無しさん
18/04/03 23:11:05.85 RICRRaNn.net
マイニング終了でRädeonの中古が格安で大量に売られてるので
何か使えないか
Openclってひょっとして再帰できない?
889:デフォルトの名無しさん
18/04/06 09:28:13.93 Z8wP2fEV.net
>>877
科学計算用のやつだと、ちゃんとエラー補正してくれるよ
890:デフォルトの名無しさん
18/05/18 19:25:23.10 RN2l/52Z.net
再帰できないってことはないだろ。
確認まではしてないけど、小さいの書けばすぐわかるからよろしくです
891:デフォルトの名無しさん
18/05/18 23:22:29.85 z36hYsyi.net
たしか昔はcudaも再帰できなかったと思う
ある時期までの規格なら再帰できないとかもありえる
あるいは製品依存とか?
892:デフォルトの名無しさん
18/05/19 10:52:19.90 iBGlap+k.net
再帰って、例えば階乗(n!)を関数内で1引いて乗算して、また自身を呼び出すみたいなことでしょ?
できないわけないよな……と脳内で思ってます。
色々な階乗をパラでやっても大丈夫だと思うし、一つの階乗をパラでやっても排他きちんとやれば大丈夫だと…
もしかして全く勘違いなこと言ってるのかな…
(最近CL書いてない、というか、並列プログラム自体ネタがなくて書いてないorz)
893:デフォルトの名無しさん
18/05/19 12:28:46.68 BjCA6AhS.net
再帰するにはスタックが必須になるから
そんな暗黙の領域管理をGPUにやらせるのかってことでしょ
再帰がなければ関数ごとに固定領域を決めればいいので楽できる
894:デフォルトの名無しさん
18/05/19 13:45:59.07 iBGlap+k.net
普通に関数呼んでreturnで帰って来るんだから、スタックなんて意識しなくていいんじゃない?
(関数の戻り先は、勝手にスタックに積んでreturnで勝手に取り出してくる)
スタック容量が少ないから別途管理しないといけないってこと?
895:デフォルトの名無しさん
18/05/19 14:22:31.54 7qbCVCh9.net
ふつう、関数はインライン展開される。
再帰だと原則それができない。
896:デフォルトの名無しさん
18/05/19 15:09:02.73 GMayPujS.net
888
897:デフォルトの名無しさん
18/05/19 16:23:46.57 KZiehyBT.net
マイニング負け組はこちらへどうぞ
intel Oprencl2.1が今はお勧め
書籍もいっぱいあるぞ!
構わないからデペロッパーになろう
898:デフォルトの名無しさん
18/05/19 19:18:17.82 fx9VLx2G.net
>>886
マジっすか。勉強になりました。
m(_ _)m
899:
18/05/20 14:06:31.19 JyKbNFIa.net
>>886
Yコンビネータを見よ
インライン展開された、いいかえると無名関数であっても、再帰は可能である
900:デフォルトの名無しさん
18/05/20 14:35:44.13 KmZcyykh.net
的外れすぎるw
Yコンビネータは無名関数で再帰ができるようになる程度の意味しかないだろ。
(末尾呼び出し最適化がない限り)関数呼び出し深さが不定であるのには変わりない。
もちろんOpenCLには末尾呼び出し最適化も第一級オブジェクトとしての関数もないし、
それどころか関数ポインタすらない。
901:デフォルトの名無しさん
18/05/20 16:22:27.06 V9eOsuAz.net
うむ
902:デフォルトの名無しさん
18/05/23 19:10:21.35 Au5e7VGg.net
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
H1I8V
903:デフォルトの名無しさん
18/05/24 10:34:27.52 cPlRxlDn.net
H1I8V
904:デフォルトの名無しさん
18/07/04 18:21:25.84 bZ79e0V+.net
これ人気らしいぞURLリンク(goo.gl)
905:デフォルトの名無しさん
18/07/04 21:44:26.88 gFgZc5FG.net
QOJ
906:デフォルトの名無しさん
18/07/05 16:14:25.67 AeL6VB/V.net
H1I8V
907:デフォルトの名無しさん
19/06/19 04:56:27.83 tVNS+22r.net
【出資】松本卓朗 人工知能詐欺【注意】
スレリンク(rikei板)
908:デフォルトの名無しさん
19/06/19 08:10:22.42 qaAgAiWI.net
久しぶりに何か書かれたと思ったら orz
909:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています