原始資料請參考 nVIDIA 官方部落格的《New Versions of Parallel Nsight and the CUDA Toolkit》一文。基本上,主題有兩部分:
其一,就是推出了新的 3.2 RC 版的 CUDA Toolkit,官方網站是《CUDA Toolkit 3.2 RC (September 2010)》這個頁面;雖然部落格上是只說 toolkit,但是實際上除了新的 toolkit外,還是包含了新版的 SDK 以及新的驅動程式。不過由於目前還是 RC(release candidate)版、還不是最終版,所以也還沒有正式讓所有開發者下載,需要是 nVIDIA 的開發註冊會員才能抓了。
而新功能有那些呢?包括了:
- 新的 library:
- CUSPARSE,稀疏矩陣(sparse matrix)函示庫
- CURAND,亂數產生器 GPU 版,支援 host 和 device 的 Sobol quasi-random/XORWOW pseudo-random
- 現有 library 效能加強:
- CUFFT 效能調整(針對 Fermi 架構、基數 3, 5, 7 的轉換)
- CUBLAS 在 Fermi 架構下,矩陣乘法和轉置效能增進 50% 到 300%
- 之前在 GPU Computing SDK 的 H.264 encode/decode 函示庫現在是 CUDA Toolkit 的一部分
- CUDA Driver & CUDA C Runtime:
- 支援 6GB 記憶體的 Quadro 和 Tesla
- 支援大於 4GB device 記憶體的 GPU 偵錯
- 在標準 Windows 驅動程式套件裡支援 Tesla Compute Cluster (TCC)
- 開發工具:
- CUDA-gdb 和 Parallel Nsight 支援多 GPU 偵錯
- Fermi 架構的 GPU 加入 cuda-memcheck 支援
- Visual Profiler UI 改善,加入更多的分析流程
- NVCC 支援 64bit Linux 下的 Intel C Compiler (ICC) v11.1
- 其他:
- 支援在 CUDA C 的 kernel 裡呼叫 malloc() / free()
- NVIDIA System Management Interface (nvidia-smi) 支援回報 GPU 使用率、以及數個 GPU 效能的計數器。
- 新的 GPU Computing SDK 範例程式
感覺上呢,似乎 CUDA 3.2 沒有加入多少真正的新功能?主要應該是加入新的函示庫、並針支援性做加強,並對新的 Fermi 架構的 GreForce 400 等產品作支援性上的加強了(另,64bit 的定只是這版的新功能嗎?不是很確定)。
不過 Heresy 覺得比較討厭的是,這一版的 CUDA nvcc 依然不支援 Visual C 10(2010)的 cl,要編譯的時候還是會說只支援 MSVC8、MSVC9,而無法完成編譯…看來要在 Visual Studio 2010 下使用 CUDA,可能要等看看 CUDA 3.2 的正式版到底會不會支援了…
下方是官方介紹影片的截圖。
比較有趣的還有所謂的 Tesla Compute Cluster 這一類叢集的部分。他似乎是真的把 GPU 當成計算裝置,而非顯示裝置;如此一來,CUDA 計算的部分可以避免顯示卡的額外負擔,進而做到一些校能增進。同時,也終於可以在 Windows 的遠端桌面環境(Remote Desktop Peotocol)下使用 CUDA 了!不過,Heresy 這邊沒有 Tesla,所以也沒辦法玩了。
除了 CUDA 3.2 外,另外就是之前介紹過,整合 Visual Studio 的 GPU 開發工具 Parallel Nsight(參考《nVIDIA 推出整合於 VisualStudio 的大量平行化開發工具:Parallel Nsight》)推出對應 Visual Studio 2010 的 Parallel Nsight 1.5 版了∼他的官方網站是在 ParallelNsight,不過目前在網站上還沒有看到 1.5 版的消息、下載(似乎是要等到 9/22)。
而根據官方部落格的說法,新功能主要包括了:
- 支援 Visual Studio 2010(話說,CUDA 不是還不支援嗎? @@)
- 單一系統偵錯
- Tesla Compute Cluster 偵錯
- 對應 CUDA Toolkit 3.2(支援新硬體、支援 4GB 記憶體、64bit 指標)
等到他真的可以下載的時候,Heresy 應該也會來用用看了吧∼