[問題] OpenCL的問題
最近在自學OpenCL
不過對程式的有些運作不太清楚
我有下面兩個問題 :
1. OpenCL有分成 Host Code 跟 Kernel Code
Host Code是像一般的C/C++語言編譯完後執行即可
在編譯 Host Code 的時候 Kernel Code 是否也有作編譯?
還是要等到執行"編譯完的Host Code的執行檔"後
才會把 Kernel Code 作編譯
把編譯完的機器代碼傳給 OpenCL 裝置執行
假如我寫一個 OpenCL 的程式
從寫完 編譯 執行 的流程
以及要如何運作?
2. 因為上面那個問題,所以有了第二個問題 @@"
我之前看到的程式幾乎都是把工作傳到 GPU 上運行
那我可不可以寫一個程式 (kernel code)
同時給 GPU 與 CPU 來平行處理:
例如 : 我有一個GPU跟一個四核心的CPU
把一部份工作給GPU來執行
另一部分工作給CPU上的某兩個核心來執行
假如這樣可行的話
那在編譯的過程中要怎麼知道這個程式要同時給 GPU 與 CPU 執行
並且要分開來編譯?
麻煩了解OpenCL的版友可以替我解答~
假如我上面的觀念有錯,麻煩糾正我
謝謝大家!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.72.233
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章