[問題] OpenCL請教

作者: leoloveivy (cried)   2015-07-15 19:11:17
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
VS2012
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
OpenCL OpenCV
問題(Question):
BGR_image => GRAY_image
基本平行處理程式寫法
由於在GPU寫程式
我轉灰階方法去掉浮點數運算
不知道這樣可不可以加速及解決精度問題
以及kernel如何改善
餵入的資料(Input):
high resolution image 4K 8K 16K image
http://imgur.com/LxtoRvA
預期的正確結果(Expected Output):
http://imgur.com/y2A7Jfa
錯誤結果(Wrong Output):
程式碼(Code):(請善用置底文網頁, 記得排版)
host http://ideone.com/hbnwdB
kernel http://ideone.com/PRZSA6
補充說明(Supplement):
這是我現在大概了解的寫法http://imgur.com/N7GyP7v
但我想學習以下http://imgur.com/BsKFm6d
像區塊的平行運算 因為對於我學習影像處理
希望有人可以請教交流
作者: Feis (永遠睡不著 @@)   2015-07-15 19:19:00
去掉浮點運算會加速? 這蠻神秘的. 可能我太久沒寫 GPU如果兩年前的經驗還有用的話. 你就是一個 kernel 多做點事一個算十個 pixel 之類的.事實上可能一個算百個以上會比較划算 (?
作者: johnjohnlin (嗯?)   2015-07-16 09:26:00
反正是 memory bound,隨便寫都會頂到最高效率
作者: mike0227 (我又小看了那複雜的世界)   2015-07-17 03:45:00
找個filter的範例來寫吧 才會用到local memory還有GPU上通常用float算都比int快
作者: s86097john (鍋子)   2015-07-25 14:59:00
關於你想學的第二種方法,可以嘗試用在kernel code那用read_image 還有write_image的opencl kernelbuilt-in function 去實作,當然agent code那邊也要做相對應的修改,你可以google "image object" "opencl"

Links booklink

Contact Us: admin [ a t ] ucptt.com