英偉達編譯器
Ⅰ 什麼是CUDA
CUDA(Compute Unified Device Architecture),顯卡廠商NVidia推出的運算平台。 CUDA™是一種由NVIDIA推出的通用並行計算架構,該架構使GPU能夠解決復雜的計算問題。 它包含了CUDA指令集架構(ISA)以及GPU內部的並行計算引擎。
隨著顯卡的發展,GPU越來越強大,而且GPU為顯示圖像做了優化。在計算上已經超越了通用的CPU。如此強大的晶元如果只是作為顯卡就太浪費了,因此NVidia推出CUDA,讓顯卡可以用於圖像計算以外的目的。
簡單來講,比如通過CUDA架構,視頻播放軟體可以充分挖掘NVIDIA系列顯卡的GPU並行計算能力,輕松進行高清影片的播放,與軟體高清解碼相比,CPU佔用可以下降一半以上。當然,CUDA的應用領域絕不僅僅是視頻、圖形、游戲,包括各種3D和建模,醫療、能源、科學研究等,到處都可見到這種技術架構的應用。
支持CUDA的硬體環境需要有NVidia GF8系列及以上型號的顯卡,並且安裝185版本以上的顯卡驅動程序。以QQ影音播放器來講,要想開啟CUDA硬體解碼加速,可以打開QQ影音的「播放器設置」,進入「高清加速」面板,在「硬體優化」中選擇「自定義優化模式」,然後在「濾鏡配置」中的「視頻解碼器」中自定義選擇相應的「QQ CUDA Video Decoder(CUDADecFilter.ax)」即可。而關閉CUDA加速,只需取消選擇「QQ CUDA Video Decoder(CUDADecFilter.ax)」,或者切換到「智能高清模式」或「穩定兼容模式」通過這種高清解碼定義的開啟,並不是說你的畫質能夠提升多少,而是提升高清視頻播放時的流暢以及降低CPU的佔用。這個時候,節約下來的CPU空間,可以允許你再去做別的工作,這樣就會大大提升你的工作效率,而不至於除了看視頻,其他的什麼都不能做了。
Ⅱ cuda安裝完成後nvcc -V報錯
應該是你的CUDA 運行庫的路徑不對,如果是Windows,請查看 系統屬性/高級/環境變數 裡面的CUDA_PATH是否正確。
Ⅲ C語言cg平台卡住
C語言cg平台卡住很正常,可能是項目管理比較大,所以運行會這樣。
2002年6月13日,北京—圖形處理解決方案領域的全球領袖NVIDIA公司(Nasdaq代碼:NVDA)今日宣布推出面向新業界標准Cg圖形編程語言的NVIDIACg編譯器。同樣也是今天宣布推出的Cg語言(CforGraphics)是一種高級圖形編程語言,可為內容開發商提供一個全面的編程環境,使其更輕松、快捷地創建特殊效果和實時電影效果。NVIDIACg編譯器是一種突破性的技術,可生成用於創建引人注目的實時視覺效果的優化圖形匯編程序。
NVIDIACg編譯器是NVIDIACg編程環境的核心。面向標准DirectX8或DirectX9兼容圖形晶元(GPU)編寫的程序可進行編譯並可運行在任何兼容硬體上。所形成的程序是一種高效的頂點或象素渲染引擎,其性能水平相當於或優於手工編碼圖形程序。NVIDIA的Cg編譯器的設計目的是為了充分利用NVIDIAGPU的功能和通道,確保最優性能和視覺質量。此外,NVIDIA的Cg編譯器還可獨具特色地支持OpenGL。面向OpenGL平台編寫的Cg渲染引擎被編譯和優化,以充分利用NVIDIAGPU里的擴展圖形功能。NVIDIA的Cg編譯器還是一種交叉平台,可支持面向Windows、OSX、Linux、Mac和Xbox編寫的程序。
NVIDIA的Cg編譯器的最強大功能是其前向和後向兼容性。NVIDIACg編譯器借用NVIDIA著名的統一驅動架構(UDA),並最終採用了統一編譯架構(UCA)。程序一旦編寫完畢,將可運行在老一代或新一代Cg兼容GPU上,並可在系統GPU運行時間里進行自動優化。這種獨特的功能可使開發商無須承擔GPU優化的重擔。
NVIDIACg工具套件Beta1.0版將包括:
NVIDIACg編譯器Beta1.0—對GPU上渲染引擎進行編程的類C語言
NVIDIACg瀏覽器—帶有大型Cg渲染引擎庫的原型設計/可視化環境
Cg標准庫—一套專門幫助熟悉一般計算機應用的編程人員的內嵌功能
?
Ⅳ 關於Nvidia的幾個常識
physx 是一套由 nvidia 設計的執行復雜的物理運算的技術.在 2005年7月20日,索尼同意在即將發售的 playstation3 中使用 nvidia 的 physx 和它的 sdk —— novodex 。nvidia 聲稱,physx 將會使設計師在開發游戲的過程中使用復雜的物理效果而不需要sSbBwW.cOm像以往那樣耗費漫長的時間開發一套物理引擎,而且使用了物理引擎還會使一些配置較低的電腦無法流暢運行。nvidia 更宣稱 physx 執行物理運算的效率比當前的 cpu 與物理處理軟體的組合高出 100 倍。游戲設計語言 dark basic pro 將會支持 physx,並允許其用戶利用physx 執行物理運算。
CUDA(Compute Unified Device Architecture),顯卡廠商NVidia推出的運算平台。
隨著顯卡的發展,GPU越來越強大,而且GPU為顯示圖像做了優化。在計算上已經超越了通用的CPU。如此強大的晶元如果只是作為顯卡就太浪費了,因此NVidia推出CUDA,讓顯卡可以用於圖像計算以外的目的。
目前只有G80、G92、G94和GT200平台的NVidia顯卡才能使用CUDA,工具集的核心是一個C語言編譯器。G80中擁有128個單獨的ALU,因此非常適合並行計算,而且數值計算的速度遠遠優於CPU。
你的顯卡可以
Ⅳ nvidia/cuda 公開源中的devel和runtime有什麼區別
從很多方面來看,CUDA和OpenCL的關系都和DirectX與OpenGL的關系很相像。如同DirectX和OpenGL一樣,CUDA和OpenCL中,前者是配備完整工具包、針對單一供應商(NVIDIA)的成熟的開發平台,後者是一個開放的標准。
雖然兩者抱著相同的目標:通用並行計算。但是CUDA僅僅能夠在NVIDIA的GPU硬體上運行,而OpenCL的目標是面向任何一種Massively Parallel Processor,期望能夠對不同種類的硬體給出一個相同的編程模型。由於這一根本區別,二者在很多方面都存在不同:
1)開發者友好程度。CUDA在這方面顯然受更多開發者青睞。原因在於其統一的開發套件(CUDA Toolkit, NVIDIA GPU Computing SDK以及NSight等等)、非常豐富的庫(cuFFT, cuBLAS, cuSPARSE, cuRAND, NPP, Thrust)以及NVCC(NVIDIA的CUDA編譯器)所具備的PTX(一種SSA中間表示,為不同的NVIDIA GPU設備提供一套統一的靜態ISA)代碼生成、離線編譯等更成熟的編譯器特性。相比之下,使用OpenCL進行開發,只有AMD對OpenCL的驅動相對成熟。
2)跨平台性和通用性。這一點上OpenCL佔有很大優勢(這也是很多National Laboratory使用OpenCL進行科學計算的最主要原因)。OpenCL支持包括ATI,NVIDIA,Intel,ARM在內的多類處理器,並能支持運行在CPU的並行代碼,同時還獨有Task-Parallel Execution Mode,能夠更好的支持Heterogeneous Computing。這一點是僅僅支持數據級並行並僅能在NVIDIA眾核處理器上運行的CUDA無法做到的。
3)市場佔有率。作為一個開放標准,缺少背後公司的推動,OpenCL顯然沒有占據通用並行計算的主流市場。NVIDIA則憑借CUDA在科學計算、生物、金融等領域的推廣牢牢把握著主流市場。再次想到OpenGL和DirectX的對比,不難發現公司推廣的高效和非盈利機構/標准委員會的低效(抑或謹慎,想想C++0x)。
很多開發者都認為,由於目前獨立顯卡市場的萎縮、新一代處理器架構(AMD的Graphics Core Next (GCN)、Intel的Sandy Bridge以及Ivy Bridge)以及新的SIMD編程模型(Intel的ISPC等)的出現,未來的通用並行計算市場會有很多不確定因素,CUDA和OpenCL都不是終點,我期待未來會有更好的並行編程模型的出現(當然也包括CUDA和OpenCL,如果它們能夠持續發展下去)。
Ⅵ NVIDIA顯卡的的CUDA核心是什麼
CUDA核心,理論上流處理器縮寫是SP。但NVIDIA自己稱呼他們的SP是CUDA Core。
CUDA Core只是N卡流處理器而已,只是一個流處理器名詞。
CUDA是一個統一計算架構,屬於軟體+硬體架構統稱。他不是一個軟體也不是一個純硬體。而是軟硬結合的計算體系。
你可以理解為CUDA是一個基於NVIDIA GPU平台上面NV自己定製的特殊計算體系。是NV自己發明的運算演算法,在NV平台和軟體支持上面才能發揮最高效率。CUDA在NVIDIA定義是一種類C語言,本身兼容C語言。CUDA雖然是一種獨立語言提供開發學習,但CUDA本身和C差距不算非常巨大,很多有經驗的開發者很快能學會。
CUDA在全球屬於NVIDIA私人生態區,他的勢力並不比IOS小。甚至在高端計算領域和圖形領域。CUDA算的上是權威標准。 Quadro和Tesla這2個統治世界的著名計算平台就是靠著CUDA生態區才能提供客戶一體化服務,否則如果大家都像AMD那樣只賣個浮點看起來很高的物理節點,那麼老黃根本不敢自封視覺運算公司,那不是普通半導體公司搞的授權么?
CUDA是一個計算結構,是一個理念。是一個軟硬平台,是一個NV提供綜合性服務的東西。他不是一個顯卡授權,也不是一個集群。也不是一個驅動。
Ⅶ NVIDIA顯卡支持CUDA,什麼是CUDA
關於CUDA:
CUDA(Compute Unified Device Architecture)是一個新的基礎架構,這個架構可以使用GPU來解決商業、工業以及科學方面的復雜計算問題。它是一個完整的GPGPU解決方案,提供了硬體的直接訪問介面,而不必像傳統方式一樣必須依賴圖形API介面來實現GPU的訪問。在架構上採用了一種全新的計算體系結構來使用GPU提供的硬體資源,從而給大規模的數據計算應用提供了一種比CPU更加強大的計算能力。CUDA採用C語言作為編程語言提供大量的高性能計算指令開發能力,使開發者能夠在GPU的強大計算能力的基礎上建立起一種效率更高的密集數據計算解決方案。
關於NVIDIA CUDA技術
NVIDIA CUDA技術是當今世界上唯一針對NVIDIA GPU(圖形處理器)的C語言環境,為支持CUDA技術的NVIDIA GPU(圖形處理器)帶來無窮的圖形計算處理性能。憑借NVIDIA CUDA技術,開發人員能夠利用NVIDIA GPU(圖形處理器)攻克極其復雜的密集型計算難題,應用到諸如石油與天然氣的開發,金融風險管理,產品設計,媒體圖像以及科學研究等領域。
CUDA™ 工具包是一種針對支持CUDA功能的GPU(圖形處理器)的C語言開發環境。CUDA開發環境包括:
nvcc C語言編譯器
適用於GPU(圖形處理器)的CUDA FFT和BLAS庫
分析器
適用於GPU(圖形處理器)的gdb調試器(在2008年3月推出alpha版)
CUDA運行時(CUDA runtime)驅動程序(目前在標準的NVIDIA GPU驅動中也提供)
CUDA編程手冊
CUDA開發者軟體開發包(SDK)提供了一些範例(附有源代碼),以幫助使用者開始CUDA編程。這些範例包括:
並行雙調排序
矩陣乘法
矩陣轉置
利用計時器進行性能評價
並行大數組的前綴和(掃描)
圖像卷積
使用Haar小波的一維DWT
OpenGL和Direct3D圖形互操作示例
CUDA BLAS和FFT庫的使用示例
CPU-GPU C—和C++—代碼集成
二項式期權定價模型
Black-Scholes期權定價模型
Monte-Carlo期權定價模型
並行Mersenne Twister(隨機數生成)
並行直方圖
圖像去噪
Sobel邊緣檢測濾波器
MathWorks MATLAB® 插件 (點擊這里下載)
新的基於1.1版CUDA的SDK 範例現在也已經發布了。要查看完整的列表、下載代碼,請點擊此處。
技術功能
在GPU(圖形處理器)上提供標准C編程語言
為在支持CUDA的NVIDIA GPU(圖形處理器)上進行並行計算而提供了統一的軟硬體解決方案
CUDA兼容的GPU(圖形處理器)包括很多:從低功耗的筆記本上用的GPU到高性能的,多GPU的系統。
支持CUDA的GPU(圖形處理器)支持並行數據緩存和線程執行管理器
標准FFT(快速傅立葉變換)和BLAS(基本線性代數子程序)數值程序庫
針對計算的專用CUDA驅動
經過優化的,從中央處理器(CPU)到支持CUDA的GPU(圖形處理器)的直接上傳、下載通道
CUDA驅動可與OpenGL和DirectX圖形驅動程序實現互操作
支持Linux 32位/64位以及Windows XP 32位/64位 操作系統
為了研究以及開發語言的目的,CUDA提供對驅動程序的直接訪問,以及匯編語言級的訪問。
