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

閱讀更多»

nVIDIA 推出公開版的 CUDA 5 Release Candidate

nVIDIA 在五月的時候,就推出新版的 CUDA 5 的預覽版(介紹)了,不過當時應該是要是有註冊的開發者才可以下載。而現在,nVIDIA 再進一步、針對所有使用者推出了 CUDA 5 Release Candidate、讓所有有需要的開發者都可以使用了!

CUDA 5 的主要變化,應該還是:RDMA for GPUDirect、GPU Library Object Linking、Dynamic Parallelism 這三項了~這部分和之前的 Preview 版基本上都是相同的。而版本編號是從 Preview 的 5.0.7 變成了 5.0.27,裡面還整合了新的專用版的顯示卡驅動程式(Windows 是 305.60),不用另外下載;不過從官方的 release note 裡(連結),似乎沒有看到和之前的 Preview 版差在哪裡。

閱讀更多»

nVIDIA 發表 CUDA 5 預覽版、Eclipse 版 Nsight、以及 Kepler 架構 Tesla!

之前 nVIDIA 在推出新的 GPU 架構、也就是 Kepler(克卜勒、GeForce GTX 680/670)的時候,只有把 自家的 CUDA 做小改版、而沒有大變化,這點其實讓 Heresy 滿訝異的。

不過現在,nVIDIA 在 GTC 2012 上,終於發表了新的 CUDA 5 Preview 了!他的官方介紹是《CUDA 5 Preview Release Now Available》這篇文章,目前也已經可以下載來使用了~

他的下載頁面是:http://developer.nvidia.com/rdp/cuda-50-preview-package
和以往版本最大的一個差異,就是這一版開始,nVIDIA 終於把 CUDA SDK 和 CUDA Toolkit 整合在一起,可以只安裝一個東西就好了~當然,目前要使用 CUDA 5.0 Preview 也還需要新的 Beta 版、302.59 的顯示卡驅動程式了~

閱讀更多»

C++ AMP 相關資料

之前 Heresy 已經有在《微軟發表用於 GPU 大量平行計算的 C++ AMP》中介紹過由微軟所提出,在下一代的 Visual C++、也就是 Visual C++ 11 裡,基於其自家 Direct X 11 技術的新的 GPGPU、使用顯示卡來做通用計算的語法、C++ AMP(Accelerated Massive Parallelism)了~而隨著 Visual Studio 11 Beta 的推出,現在要試玩的話,也都可以開始用了。

在 Heresy 來看,C++ AMP 最大的好處,是在於它的語法概念是採用 C++ STL 的 Function object 的概念,和 STL 提供的 algorithm 的用法非常地相近,在簡單的範例上非常地好寫~下面就是一個簡單的 C++ AMP 的例子:

閱讀更多»

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 以及官方介紹

閱讀更多»

在 x86 處理器上執行 CUDA 程式

首先,先講一下,Heresy 雖然之前花了不少時間在 nVIDIA CUDA 這個 GPGPU 的框架上,但是基本上,後來是沒有繼續玩下去的,頂多就是注意一些新消息而已,到後來,連消息都很少在注意了。而實際上,這篇《Running CUDA Code Natively on x86 Processors》也是去年八月的文章了…不過 Heresy 是前幾天才看到,他的主題,就是「在 x86 CPU 上執行 CUDA 的程式」;雖然 Heresy 不確定現在的狀況是否和當時還是相同(尤其 CUDA 4.1 的編譯器又換成 LLVM-based 的了)?不過 Heresy 自己是應該還算滿有參考價值的,所以還是轉錄一

基本上,Heresy 只是照的該文章的意思大概翻譯一下,用自己的說法講出來,不是逐字翻譯的;而第二頁開始,他是開始講 PGI 的 CUDA-x86(之前也有介紹過)的細節,Heresy 也就跳過了~所以最後,就是剩下第一頁的概論性的東西了。 ^^"

閱讀更多»

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 也做了重新的設計、會更方便使用。

閱讀更多»

超簡單的 GPGPU 程式開發標準:OpenACC!

Heresy 之前已經介紹過好幾種使用 GPU 來進行平行計算的程式(GPGPU)開發標準了~包括了這方面的領先者 nVIDIA CUDA、跨平台/跨硬體的 OpenCL、微軟的 DirectX 的 DirectCompute、以及將在 VIsualStudio 11 推出的 C++ AMP…基本上,這些各式各樣新標準的出現,都不斷底降低 GPGPU 這類 data-parallel 程式開發的門檻。

而現在,以 PGI、nVIDIA 為首的幾家公司(CRAY、CAPS…),在今年的 SC11 上,又推出了一個簡化到極致的新標準了!這個新標準的名字,就是 OpenACC(註一)~他的官方網站是:http://www.openacc-standard.org/

閱讀更多»

OpenCL 1.2 Specification Release

OpenCL (簡介)是由 Khronos 所管理,一套不用授權金、跨平台的平行計算程式開發標準,主要是針對 GPGPU(拿顯示晶片來做通用計算),不過也可以針對一般的多核心 CPU 來做平行化程式的開發~

以目前個人電腦來說,nVIDIA 的 GPU、Intel 的 CPU、AMD 的 CPU + GPU 都可以支援,支援性算是相當不錯了~(不過現在應該只有 nVIDIA 把 OpenCL 的支援內建在驅動程式裡,裝好就可以直接用)

OpenCL 1.1 發布隔了一年半,khronos 終於更新 OpenCL、推出 1.2 版了!詳細的消息,可以參考 OpenCL 官方網站,或是《Khronos Releases OpenCL 1.2 Specification》這篇官方的新聞。而這一版主要是加強了平行計算程式開發上的彈性、功能、並做效能的提申,下面是官方的更新說明:

閱讀更多»