⑴ 並行計算,有沒有人會這個
我會。
入門的話推薦你學習下MPI編程,
目前並行計算基本上有:MPI、OPENMP、OPENCL、OPENGL、CUDA
你只是想體驗的話用OPENMP最省事了,一句話就可以達到並行的效果
代碼我可以給你,但你要配好環境。先給你裸敲一個hello world的MPI程序吧
#include<stdio.h>
#include<mpi.h>
intmain(intargc,char*argv[])
{
intmypid,numprocs;
MPI_Init(&argc,&argv);//並行開始
MPI_Comm_size(MPI_COMM_WORLD,&numprocs);//獲取進程數
MPI_Comm_rank(MPI_COMM_WORLD,&mypid);//獲取本進程ID號
printf("helloworld!iam%dprocessof%dprocesses",mypid,numporcs);
MPI_Finalize();//並行結束
}
這就是MPI版的hello world 程序,你需要在編譯的時候確定同時打開幾個進程,比如說4個,程序可能運行結果為:
hello world! i am 2 process of 4 processes
hello world! i am 1 process of 4 processes
hello world! i am 0 process of 4 processes
hello world! i am 3 process of 4 processes
為什麼說可能呢,因為四個進程同時在執行上面的那段代碼,哪個進程先結束哪個就先輸出就這個道理。
想學並行編程的話,建議你在linux下學習。
望採納
⑵ CUDA架構的簡介
NVIDIA®(英偉達™) CUDA™是一款革命性的並行計算架構。作為一項同時支持硬體和軟體的技術,CUDA 可利用圖形處理器中的多顆計算核心進行通用計算處理工作,計算性能可獲得顯著提升。它包含了CUDA指令集架構(ISA)以及GPU內部的並行計算引擎。
開發人員現在可以使用C語言來為CUDA™架構編寫程序,C語言是應用最廣泛的一種高級編程語言。所編寫出的程序於是就可以在支持CUDA™的處理器上以超高性能運行。 將來還會支持其它語言,包括FORTRAN以及C++。計算行業正在從只使用CPU的「中央處理」向CPU與GPU並用的「協同處理」發展。為打造這一全新的計算典範,NVIDIA®(英偉達™)發明了CUDA並行計算架構,該架構現已應用於GeForce®(精視™)、ION™(翼揚™)、Quadro以及Tesla GPU(圖形處理器)上,對應用程序開發人員來說,這是一個巨大的市場。
在消費級市場上,幾乎每一款重要的消費級視頻應用程序都已經使用CUDA加速或很快將會利用CUDA來加速,其中不乏Elemental Technologies公司、MotionDSP公司以及LoiLo公司的產品。
在科研界,CUDA一直受到熱捧。例如,CUDA現已能夠對AMBER進行加速。AMBER是一款分子動力學模擬程序,全世界在學術界與制葯企業中有超過60,000名研究人員使用該程序來加速新葯的探索工作。
在金融市場,Numerix以及CompatibL針對一款全新的對手風險應用程序發布了CUDA支持並取得了18倍速度提升。Numerix為近400家金融機構所廣泛使用。
CUDA的廣泛應用造就了GPU計算專用Tesla GPU的崛起。全球財富五百強企業現在已經安裝了700多個GPU集群,這些企業涉及各個領域,例如能源領域的斯倫貝謝與雪佛龍以及銀行業的法國巴黎銀行。
隨著微軟Windows 7與蘋果Snow Leopard操作系統即將問世,GPU計算必將成為主流。在這些全新的操作系統中,GPU將不僅僅是圖形處理器,它還將成為所有應用程序均可使用的通用並行處理器。
⑶ cuda並行程序設計 gpu編程指南
你好,
首先,cg,opengl,glsl都是跟計算機圖形有關的。cg基本是做渲染的,opengl是一個開源圖形庫,和微軟的direct3d是一樣的。glsl是shading
language
,專門用來寫shader的,在gpgpu(
general
purpose
gpu)概念出來之前,好多人用glsl來做並行計算。
其次,cuda和opencl是兩個專門做gpu運算的庫。cuda非常好用,它有自己的nvcc編譯器,和各個系統都兼容很好,但是僅限於用於nvidia自己的顯卡。opencl雖然任何顯卡都可以使用,但是它的gpu的代碼要放到單獨的一個文本文件中編譯,操作上要比cuda要復雜。
最後,其實cuda和opencl學那個多一樣,因為並行運算的思想是一樣的。推薦你兩本書:
1.
programming
massively
parallel
processors
2nd(入門)
2.
cuda
programming
a
developer-'s
guide
to
parallel
computing
with
gpus
(高級一點)
謝謝,望採納
⑷ 有沒有一本講解gpu和CUDA編程的經典入門書籍
CUDA自帶的編程手冊就是最好的書籍,因為目前市場上你看到的精典書籍,對於一些架構的描述都已經過時了,怕你看完,如果對架構原理了解不透徹,反而容易誤入歧途,走火入魔。