AMD 放大招了…推出 Boltzmann Initiative、支援 CUDA 程式的轉移!

NVIDIA 的 CUDA 架構,基本上應該算是現階段最成功的 GPGPU 環境之一。他在新一代、專門用來做大量平行計算的環境裡面,算是推出最早的,所以相對起來、發展的也算是最完整的;而後來雖然 Khronos 有推出跨硬體平台的開放標準 OpenCL(Intel、AMD、NVIDIA 都有支援),但是就 Heresy 所知,還是有許多開發人員是偏好 CUDA 的。

而 AMD 在 GPGPU 這一塊…個人是覺得發展的始終有點悲劇吧?Heresy 有紀錄的部分,他最早是推出自家的「Stream SDK」,而之後就徹底捨棄自己的語言、完全轉投向 OpenCL、Stream SDK 也改名為「AMD APP SDK」了。

儘管 AMD 也試著在靠 OpenCL、以及後來所推出、基於 AMD APU 的「Heterogeneous System Architecture」(異質系統架構、官網)來做平行計算的發展方向(AMD 稱之為「Heterogeneous Computing」、異質計算),但是實際上…就個人所知,成效似乎不算是很好。

閱讀全文

Khronos GDC 2015 新消息:Vulkan 與 OpenCL 2.1

這篇算是簡單整理一下 Khronos 在 GDC 2015 發表的一些消息。今年 Khronos 發表的消息,主要是下一代的 OpenGL、「Vulkan」,以及 OpenCL 兩個部分;而實際上,繪圖和計算這兩部分,看來已經越來越一體化了。

整體性的介紹,可以參考官方的投影片:Khronos GDC Press Briefing : Mar15.pdf

閱讀全文

OpenCV 3.0 Beta 版發布

OpenCV(官網)的 3.0 版終於推出 beta 版了!官方的消息是《OpenCV 3.0 Beta》,雖然這個版本還不是正式版,但是在經過之前 alpha 版的測試後,穩定性已經提升不少,應該算是比較可以拿來用了。

目前 3.0 版的文件是在:http://docs.opencv.org/master/,而如果想要下載的話,則可以在官方下載頁面(連結)取得最新的 pre-build 的檔案,或是從 GitHub 上下載原始碼(連結)。

而 OpenCV 3.0 和 2.x 比起來,到底有哪些不同呢?首先,基本上 OpenCV 3 可以視為是 OpenCV 2 的改善,但是 3.0 和 2.x 並不完全相容,主要的變化包括了:

閱讀全文

OpenCL 的 C++ 函式庫:Boost.Compute

這是前幾天在 GPGPU.org 上看到的消息,原文是《Boost.Compute v0.2 Released》。

基本上,Boost.Compute 是一個基於 OpenCL 的 C++ GPGPU、大量平行化函式庫,主要的設計目的,是用來簡化 GPGPU 程式的開發。Boost.Compute 實際上是一個 OpenCL C API 的一個 C++ wrapper,讓開發者可以用 C++ 的概念、以及 STL-like 的程式風格、來開發 OpenCL 的程式。個人會覺得他的形式應該相當接近 nVIDIA CUDAThrust 這個函式庫。

他的原始碼目前是放在 GitHub 上,網址是:

https://github.com/kylelutz/compute

目前還僅只是 0.2 版、同時也還沒有被納為 Boost C++ Libraries 的一部分,基本上,應該還是算是在測試階段吧~

閱讀全文

Khronos 更新一系列 3D 圖形以及計算標準

Khronos 在今年的 GDC(Game Developer’s Conference)上,發表了一波標準的更新,包括了:

  • OpenGL ES 3.1 Specification
  • WebCL 1.0 Specification
  • EGL 1.5 Specification
  • SYCL 1.2 Provisional Specification
  • OpenCL 2.0 Adopters Program

其官方新聞稿是《Khronos Releases Wave of New Standards and Initiatives for 3D Graphics, Heterogeneous Computing and API Interop》。

閱讀全文

Khronos 發布 OpenGL 4.4、OpenCL 2.0 以及 OpenCL SPIR 1.2

一年一度的電腦圖學盛事、SIGGRAPH 又到了~而 Khronos 今年也針對了其管理的 Graphic API、OpenGL,以及平行計算用標準 OpenCL 進行了更新。

在繼去年推出 OpenGL 4.3 之後,今年 Khronos 也再度發布 OpenGL 4.4 的更新,讓 OpenGL 有更多的功能可以使用。官方的新聞是《Khronos Releases OpenGL 4.4 Specification》,他主要的新功能包括了:

閱讀全文

AMD 推出支援 Bolt C++ Template Library 的 APP SDK 2.8

這算是前一段時間的消息了。不過當時 Heresy 在忙別的事,沒有時間認真看,所以就還拖到現在才寫了。整體來說,就是 AMD 針對了自家的 GPGPU 開發軟體,做了一批的更新~不過,由於 AMD 自己正在搞 APU、希望可以同時使用 CPU 和 GPU 來做計算,所以這邊的字樣,似乎也都變成「Heterogeneous Computing」(HC)了。

首先,就是 AMD 最主要的 APP(Accelerated Parallel Processing) SDK 的版本更新到了 2.8,也加入了對 OpenCL 1.2 的正式支援(之前 2.6 算是 preview);他的方網站是:http://developer.amd.com/tools/heterogeneous-computing/amd-accelerated-parallel-processing-app-sdk/,目前也已經可以下載了。

閱讀全文

AMD 新的 GPU 程式開發輔助工具:CodeXL

去年已經有介紹過,AMD 有收購、推出一套 GPU 的偵錯程式、gDEBugger 了~這套軟體,主要是可以針對 OpenCL 和 OpenGL 的程式,來進行偵錯。

而現在,AMD 又推出了一套新的工具:AMD CodeXL,除了本來的 GPU 偵錯功能,更加入了針對 AMD CPU 和 GPU 的 Profiling 的功能,來輔助程式開發者進行偵錯、以及最佳化了!它的官方網站是:

http://developer.amd.com/tools/hc/CodeXL/Pages/default.aspx

閱讀全文

201204 GPGPU 新消息

雖然已經沒在這一塊了,不過姑且還是更新一下消息。

  • Intel 推出新版 OpenCL SDK,Ivy Bridge 處理器的 GPU 支援 OpenCL!

    官方網站是:http://software.intel.com/en-us/articles/vcsource-tools-opencl-sdk/

    重點就是新版的 OpenCL SDK(現在似乎改名為「Intel SDK for OpenCL Applications」了?)除了支援 OpenCL 1.1 外,也支援第三代的 Intel Core i 處理器、也就是 Ivy Bridge。而更重要的,就是 Intel 的 GPU 終於也可以跑 OpenCL 了~不過,也只有 Ivy Bridge 的 Intel HD Graphics 4000/2500 可以就是了。

    完整的訊息請參考 Release Notes 以及官方介紹

閱讀全文

nVIDIA CUDA 4.1 RC2 & AMD APP SDK 2.6 Preview

算是兩個 GPGPU 相關的新聞。

nVIDIA CUDA 4.1 RC2

第一個,是 nVIDIA 在 GTC Asia 上,推出了新版的 CUDA 4.1 的 RC2(release candidate)以及對應的偵錯工具 Parallel Nsight 2.1 RC2。

這一版 CUDA 最大的變化,就是 nVIDIA 把編譯器整個換掉、改成以 LLVM(Low Level Virtual Machine、維基百科)為基礎的新編譯器了!這個新的編譯器號稱可以提高應用程式 10% 的效能,同時也可以有效地縮短編譯所需的時間。

而且,nVIDIA 這次還透過「CUDA Platform Source Release」,分享這個新的編譯器的原始碼!如此一來,如果有心的話,還可以透過這個機制、讓 CUDA 編譯器支援新的語言,甚至新的處理器~不過,基本上這個分享機制,是要經過 nVIDIA 審核的,所以應該沒辦法看到 AMD 拿這個來做自己的 CUDA C 相容編譯器。 :p

當然,除了編譯器以外,CUDA 4.1 還是有不少其他的改進。其中比較重要的,應該就是在影像處理方面(NPP library)加入了一千個以上的新函式,可以直接使用。而 Visual Profiler 也做了重新的設計、會更方便使用。

閱讀全文