OpenCLプログラミング#1

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

http://www.khronos.org/opencl/

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

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

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

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

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

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

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

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

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

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

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

855デフォルトの名無しさん2016/03/29(火) 10:04:21.74ID:/c8bAcK4
サッカーブッシュ日本代表日程ぷあたん(しゅっちょうまいくろ教育長交代)春文執行40代売上差額シュガーチョコ
https://www.youtube.com/watch?v=NDq1QoJY0nY宇ドナルドアナリストパワーストーンコーチングとしまえん
サッカーブッシュ日本代表日程古本屋よしたけしゅっちょうちょこしゅがー
ディーラー税務署天才開発者死亡詰みヨミドクターマイクロサービス不足
サッカーブッシュ日本代表日程ぷあたんシフト光金さかい強制バイト人権侵害問題
春分資源執行ニューヨーク低原価ぼったステーキソルトレイク福岡横浜新橋奴隷課金パチシフト強制バイト問題新潟米センター生残
コスメ24チャリティー隠れ40代生活保護プレイボーイバイトレードいたりあん接待問題
マスコミKARDローンケーオーサービス不足婚活パーティー寄付金執行原発ビジネス
FBIチャイニーズタイホテル売上事務所ガチャ決算ガチャキャンペーン(販売報道陣過激派組織向携帯最新情報提供終了
校長発言細心注意ノートン産廃エラー(著作権クレーム中国反応融資高額教育費)(中国捕鯨団体40代社員サッカーコメント
高額入学金ヤフウ新橋大学ヤフウ新橋理事長FX経費 おじや50代資産ガリバズフィード40代エリート

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

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

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

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

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

861デフォルトの名無しさん2016/08/13(土) 04:34:37.27ID:C6tpwDrS
物理レンダリングが出たばっかりなのに失速とは

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

863デフォルトの名無しさん2016/10/29(土) 12:19:11.69ID:YsxFht0u
OpenCLはオワコン

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

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

866デフォルトの名無しさん2016/10/30(日) 01:49:24.70ID:IKgBO44W
それはOpenMPでは

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

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

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

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

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

872デフォルトの名無しさん2017/02/28(火) 20:15:03.56ID:514SeM49
ここ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で忙しいってか?

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

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

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

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

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

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

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

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

879デフォルトの名無しさん2018/04/03(火) 11:25:01.62ID:R6gDm2yr
えっ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

890デフォルトの名無しさん2018/05/19(土) 19:18:17.82ID:fx9VLx2G
>>887
マジっすか。勉強になりました。
m(_ _)m

891 ◆QZaw55cn4c 2018/05/20(日) 14:06:31.19ID:JyKbNFIa
>>887
Yコンビネータを見よ
インライン展開された、いいかえると無名関数であっても、再帰は可能である

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

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

893デフォルトの名無しさん2018/05/20(日) 16:22:27.06ID:V9eOsuAz
うむ

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

H1I8V

895デフォルトの名無しさん2018/05/24(木) 10:34:27.52ID:cPlRxlDn
H1I8V

新着レスの表示
レスを投稿する