快捷登錄,享 免費下載
首頁 > 軟件列表 > CUDA

應(yīng)用范圍

計算行業(yè)正在從只使用CPU的“中央處理”向CPU與GPU并用的“ 協(xié)同處理”發(fā)展。為打造這一全新的計算典范 ,NVIDIA?(英偉達?)發(fā)明了CUDA(Compute Unified Device Architecture,統(tǒng)一計算設(shè)備架構(gòu))這一編程模型,是想在 應(yīng)用程序中充分利用CPU和GPU各自的優(yōu)點?,F(xiàn)在,該架構(gòu)現(xiàn)已應(yīng)用于GeForce?(精視?)、ION?(翼揚?)、Quadro以及Tesla GPU( 圖形處理器)上,對 應(yīng)用程序開發(fā)人員來說,這是一個巨大的市場。

在消費級市場上,幾乎每一款重要的消費級視頻 應(yīng)用程序都已經(jīng)使用CUDA加速或很快將會利用CUDA來加速,其中不乏Elemental Technologies公司、MotionDSP公司以及LoiLo公司的產(chǎn)品。

在科研界,CUDA一直受到熱捧。例如,CUDA現(xiàn)已能夠?qū)MBER進行加速。AMBER是一款分子動力學(xué)模擬程序,全世界在學(xué)術(shù)界與制藥企業(yè)中有超過60,000名研究人員使用該程序來加速新藥的探索工作。

在金融市場,Numerix以及CompatibL針對一款全新的對手風(fēng)險 應(yīng)用程序發(fā)布了CUDA支持并取得了18倍速度提升。Numerix為近400家金融機構(gòu)所廣泛使用。

CUDA的廣泛應(yīng)用造就了GPU計算專用Tesla GPU的崛起。全球財富五百強企業(yè)現(xiàn)在已經(jīng)安裝了700多個GPU集群,這些企業(yè)涉及各個領(lǐng)域,例如能源領(lǐng)域的斯倫貝謝與雪佛龍以及銀行業(yè)的 法國巴黎銀行。

隨著 微軟Windows 7與蘋果Snow Leopard 操作系統(tǒng)的問世,GPU計算必將成為主流。在這些全新的 操作系統(tǒng)中,GPU將不僅僅是 圖形處理器,它還將成為所有 應(yīng)用程序均可使用的通用并行處理器。

發(fā)展歷程

隨著 顯卡的發(fā)展,GPU越來越強大,而且GPU為顯示圖像做了優(yōu)化。在計算上已經(jīng)超越了通用的CPU。如此 強大的芯片如果只是作為 顯卡就太浪費了,因此NVidia推出CUDA,讓顯卡可以用于圖像計算以外的目的。

目前只有G80、G92、G94、G96、GT200、GF100、GF110、GK100、GK104、GK107平臺(即GeForce 8~Gecorce GTX780Ti)的NVidia顯卡才能使用CUDA,工具集的核心是一個C語言 編譯器。G80中擁有128個單獨的ALU,因此非常適合 并行計算,而且數(shù)值計算的速度遠遠優(yōu)于CPU。

CUDA的SDK中的 編譯器和開發(fā)平臺支持Windows、Linux系統(tǒng),可以與Visual Studio2005,2008,2010集成

在一起。

Geforce8CUDA(Compute Unified Device Architecture)是一個新的基礎(chǔ)架構(gòu),這個架構(gòu)可以使用GPU來解決商業(yè)、工業(yè)以及科學(xué)方面的復(fù)雜計算問題。它是一個完整的GPGPU解決方案,提供了 硬件的直接訪問接口,而不必像傳統(tǒng)方式一樣必須依賴圖形API接口來實現(xiàn)GPU的訪問。在架構(gòu)上采用了一種全新的計算 體系結(jié)構(gòu)來使用GPU提供的 硬件資源,從而給大規(guī)模的數(shù)據(jù)計算應(yīng)用提供了一種比CPU更加強大的計算能力。CUDA采用C語言作為 編程語言提供大量的 高性能計算指令開發(fā)能力,使開發(fā)者能夠在GPU的強大計算能力的基礎(chǔ)上建立起一種效率更高的密集數(shù)據(jù)計算解決方案。

從CUDA 體系結(jié)構(gòu)的組成來說,包含了三個部分:開發(fā)庫、運行期環(huán)境和驅(qū)動(表2)。

開發(fā)庫是基于CUDA技術(shù)所提供的應(yīng)用開發(fā)庫。目前CUDA的1.1版提供了兩個標(biāo)準(zhǔn)的數(shù)學(xué)運算庫——CUFFT(離散 快速傅立葉變換)和CUBLAS(離散基本線性計算)的實現(xiàn)。這兩個數(shù)學(xué)運算庫所解決的是典型的大規(guī)模的 并行計算問題,也是在密集數(shù)據(jù)計算中非常常見的計算類型。開發(fā)人員在開發(fā)庫的基礎(chǔ)上可以快速、方便的建立起自己的計算應(yīng)用。此外,開發(fā)人員也可以在CUDA的技術(shù)基礎(chǔ)上實現(xiàn)出更多的開發(fā)庫。

運行期環(huán)境提供了應(yīng)用開發(fā)接口和運行期組件,包括基本 數(shù)據(jù)類型的定義和各類計算、類型轉(zhuǎn)換、 內(nèi)存管理、設(shè)備訪問和執(zhí)行調(diào)度等函數(shù)。基于CUDA開發(fā)的程序代碼在實際執(zhí)行中分為兩種,一種是運行在CPU上的宿主代碼(Host Code),一種是運行在GPU上的設(shè)備代碼(Device Code)。不同類型的代碼由于其運行的物理位置不同,能夠訪問到的資源不同,因此對應(yīng)的運行期組件也分為公共組件、宿主組件和設(shè)備組件三個部分,基本上囊括了所有在GPGPU開發(fā)中所需要的功能和能夠使用到的資源接口,開發(fā)人員可以通過運行期環(huán)境的 編程接口實現(xiàn)各種類型的計算。

由于目前存在著多種GPU版本的NVidia 顯卡,不同版本的GPU之間都有不同的差異,因此驅(qū)動部分基本上可以理解為是CUDA-enable的GPU的設(shè)備抽象層,提供 硬件設(shè)備的抽象訪問接口。CUDA提供運行期環(huán)境也是通過這一層來實現(xiàn)各種功能的。目前基于CUDA開發(fā)的應(yīng)用必須有NVIDIA CUDA-enable的 硬件支持,NVidia公司GPU運算事業(yè)部總經(jīng)理Andy Keane在一次活動中表示:一個充滿生命力的 技術(shù)平臺應(yīng)該是開放的,CUDA未來也會向這個方向發(fā)展。由于CUDA的體系結(jié)構(gòu)中有 硬件抽象層的存在,因此今后也有可能發(fā)展成為一個通用的GPGPU標(biāo)準(zhǔn)接口,兼容不同廠商的GPU產(chǎn)品

工具包

是一種針對支持CUDA功能的GPU(圖形處理器)的C語言開發(fā)環(huán)境。 CUDA開發(fā)環(huán)境包括:

· nvcc C語言編譯器

· 適用于GPU(圖形處理器)的CUDA FFT和BLAS庫。

· 分析器

· 適用于GPU(圖形處理器)的gdb調(diào)試器(在2008年3月推出alpha版)

· CUDA運行時(CUDA runtime)驅(qū)動程序(目前在標(biāo)準(zhǔn)的NVIDIA GPU驅(qū)動中也提供)。

CUDA編程手冊

CUDA開發(fā)者軟件開發(fā)包(SDK)提供了一些范例(附有 源代碼),以幫助使用者開始CUDA編程。這些范例包括:

· 并行雙調(diào)排序

· 矩陣乘法

· 矩陣轉(zhuǎn)置

· 利用計時器進行性能評價

· 并行大 數(shù)組的前綴和(掃描)

· 圖像卷積

· 使用Haar小波的一維DWT

· OpenGL和Direct3D圖形互操作示例

· CUDA BLAS和FFT庫的使用示例

· CPU-GPU C—和C++—代碼集成

· 二項式 期權(quán)定價模型

· Black-Scholes期權(quán)定價模型

· Monte-Carlo 期權(quán)定價模型

· 并行Mersenne Twister(隨機數(shù)生成)

· 并行直方圖

· 圖像去噪

· Sobel邊緣檢測濾波器

· MathWorks MATLAB?

新的基于1.1版CUDA的SDK 范例現(xiàn)在也已經(jīng)發(fā)布了。

技術(shù)功能

· 在GPU( 圖形處理器)上提供標(biāo)準(zhǔn)C編程語言

· 為在支持CUDA的NVIDIA GPU( 圖形處理器)上進行 并行計算而提供了統(tǒng)一的軟 硬件解決方案

· CUDA兼容的GPU( 圖形處理器)包括很多:從低功耗的 筆記本上用的GPU到高性能的,多GPU的系統(tǒng)。

· 支持CUDA的GPU( 圖形處理器)支持并行 數(shù)據(jù)緩存和線程執(zhí)行管理器

· 標(biāo)準(zhǔn)FFT( 快速傅立葉變換)和BLAS(基本線性代數(shù)子程序)數(shù)值 程序庫

· 針對計算的專用CUDA驅(qū)動

· 經(jīng)過優(yōu)化的,從 中央處理器(CPU)到支持CUDA的GPU( 圖形處理器)的直接上傳、下載通道

· CUDA驅(qū)動可與OpenGL和DirectX圖形驅(qū)動程序?qū)嵪嗷ゲ僮?/p>

· 支持Linux 32位/64位以及Windows XP 32位/64位 操作系統(tǒng)

· 為了研究以及開發(fā)語言的目的,CUDA提供對驅(qū)動程序的直接訪問,以及匯編語言級的訪問。

發(fā)展現(xiàn)況

支持CUDA的GPU銷量已逾1億,數(shù)以千計的 軟件開發(fā)人員正在使用免費的CUDA 軟件開發(fā)工具來解決各種專業(yè)以及家用 應(yīng)用程序中的問題。這些 應(yīng)用程序從視頻與音頻處理和物理效果模擬到 石油天然氣勘探、產(chǎn)品設(shè)計、醫(yī)學(xué)成像以及科學(xué)研究,涵蓋了各個領(lǐng)域。

CUDA 的核心有三個重要抽象概念: 線程組層次結(jié)構(gòu)、共享存儲器、屏蔽同步( barrier

synchronization),可輕松將其作為C 語言的最小擴展級公開給程序員。

CUDA 軟件 堆棧由幾層組成,一個 硬件驅(qū)動程序,一個 應(yīng)用程序編程接口(API)

和它的Runtime, 還有二個高級的通用數(shù)學(xué)庫,CUFFT 和CUBLAS。 硬件被設(shè)計成支持輕

量級的驅(qū)動和Runtime 層面,因而提高性能。

所支持的OS(operating system)

CUDA目前支持linux和Windows操作系統(tǒng)。進行CUDA開發(fā)需要依次安裝驅(qū)動、toolkit、SDK三個 軟件。在 安裝目錄/C/src目錄下有很多的例程可以進行學(xué)習(xí)。

NVIDIA進軍高性能計算領(lǐng)域,推出了Tesla&CUDA高性能計算系列解決方案,CUDA技術(shù),一種基于NVIDIA 圖形處理器(GPU)上全新的 并行計算體系架構(gòu),讓科學(xué)家、工程師和其他專業(yè)技術(shù)人員能夠解決以前無法解決的問題,作為一個專用高性能GPU計算解決方案,NVIDIA把超級計算能夠帶給任何工作站或服務(wù)器,以及標(biāo)準(zhǔn)、基于CPU的 服務(wù)器集群

CUDA是用于GPU計算的開發(fā)環(huán)境,它是一個全新的軟 硬件架構(gòu),可以將GPU視為一個并行數(shù)據(jù)計算的設(shè)備,對所進行的計算進行分配和管理。在CUDA的架構(gòu)中,這些計算不再像過去所謂的GPGPU架構(gòu)那樣必須將計算映射到圖形API(OpenGL和Direct 3D)中,因此對于開發(fā)者來說,CUDA的開發(fā)門檻大大降低了。CUDA的GPU編程語言基于標(biāo)準(zhǔn)的C語言,因此任何有C語言基礎(chǔ)的用戶都很容易地開發(fā)CUDA的 應(yīng)用程序。

由于GPU的特點是處理密集型數(shù)據(jù)和并行數(shù)據(jù)計算,因此CUDA非常適合需要大規(guī)模 并行計算的領(lǐng)域。目前CUDA除了可以用C語言開發(fā),也已經(jīng)提供FORTRAN的應(yīng)用接口,未來可以預(yù)計CUDA會支持C++、Java、Python等各類語言。可廣泛的應(yīng)用在圖形動畫、科學(xué)計算、地質(zhì)、生物、物理模擬等領(lǐng)域。

2008年NVIDIA推出CUDA SDK2.0版本,大幅提升了CUDA的使用范圍。使得CUDA技術(shù)愈發(fā)成熟

背景

計算正在從CPU"中央處理"向CPU與GPU"協(xié)同處理"的方向發(fā)展。 為了實現(xiàn)這一新型計算模式,英偉達發(fā)明 了英偉達? CUDA? 并行計算架構(gòu)。該架構(gòu)現(xiàn)在正運用于英偉達? (NVIDIA) Tesla?、英偉達? Quadro (NVIDIA Quadro) 以及英偉達? 精視? (NVIDIA GeForce) GPU上。對 應(yīng)用程序開發(fā)商來說,英偉達? CUDA? 架構(gòu)擁有龐大的用戶群。

在科學(xué)研究領(lǐng)域,英偉達? CUDA? 受到狂熱追捧。 例如,英偉達? CUDA? 能夠加快AMBER這款分子動力學(xué)模擬程序的速度。全球有6萬余名學(xué)術(shù)界和制藥公司的科研人員使用該程序來加速新藥開發(fā)。 在金融市場,Numerix和CompatibL已宣布在一款對手風(fēng)險 應(yīng)用程序中支持英偉達? CUDA? ,而且因此實現(xiàn)了18倍速度提升。

在GPU計算領(lǐng)域中,英偉達? Tesla? GPU的大幅增長說明了英偉達? CUDA? 正被人們廣泛采用。 目前,全球《財富》五百強企業(yè)已經(jīng)安裝了700多個GPU集群,從能源領(lǐng)域中的斯倫貝謝和雪佛龍到銀行業(yè)中的 法國巴黎銀行,這些企業(yè)的范圍十分廣泛。

版本列表

  • CUDA-Z v0.9.231.0 官方版

    CUDA-Z v0.9.231.0 官方版

    CUDA-Z就像我們常用的GPU-Z,但是具體參數(shù)就變成了針對CUDA應(yīng)用方面的信息 ...

    軟件大小:2.17 MB 更新時間:2014-12-08
    詳情