在這麼多的安裝CUDA後
一直很奇怪爲什麼CUDA裏面沒有帶有OpenCL,開始我以爲是因爲是安裝方法錯誤
後來才知道是在較新的CUDA中NVIDIA沒有將OpenCL集成到CUDA中
而是隻專注於自己的CUDA了
OpenCL動態庫libOpenCL.so僅僅在驅動安裝的時候被
放置到了/usr/lib下面
但是cuda沒有把它和libcuda.so關聯起來
要想在cuda-5.5中實現OpenCL還的自己來實現
具體方法可以看這裏
http://streamcomputing.eu/blog/2011-06-24/install-opencl-on-debianubuntu-orderly/
在安裝完了CUDA之後可以按照這個把OpenCL集成到CUDA中
並且這樣也就解決了不從官方網站下載NVIDIA官方顯卡驅動
而是從bumblebee中下載NVIDIA-3**驅動沒有帶有OpenCL庫的問題
通過這樣可以有bumblebee管理顯卡驅動,達到省電的目的
還提供了OpenGL的3D加速功能,因爲NVIDIA官方的顯卡驅動無法提供OpenGL的3D加速功能
只有通過bumblebee的mesa裏的OpenGL庫纔可以完美實現3D加速功能
同時由於NVIDIA的驅動問題,NVIDIA還被linus鄙視了一番。。
http://www.ipetitions.com/petition/opencl-examples-in-cuda-5-sdk/
這篇文章有介紹CUDA和OpenCL的關係
可以看出來CUDA僅僅支持NVIDIA的顯卡
但是OpenCL卻支持很多平臺,包括DSP,FPGA,移動處理器,和一些現代化CPU
所以看的出來OpenCL是更有前途的
但是每一個新的標準(比如說OpenCL)都是需要被廣泛支持的
只有這樣它才能夠被更廣泛的發展
但是問題是NVIDIA公司,作爲Khronos的重要成員之一
卻在最新的SDK中刻意的忽略OpenCL的支持
這看起來是令人無法接受的
他的目的很簡單,迫使人們使用CUDA,也就更專注於他的硬件(NVIDIA顯卡等)
OpenCL開發者需要SDK以及profiler框架
但是CUDA沒有提供
如果想要了解更多,可以關注一下StreamComputing