Intel:GPGPU沒有未來 NVIDIA CUDA只是 … - 顯卡

By Annie
at 2008-07-09T02:36
at 2008-07-09T02:36
Table of Contents
SLI和multi GPU是不一樣的
CUDA有指令可以讓你選擇用那一塊GPU做運算
device0、device1..
理論上主機板能插幾張就能跑幾張,不同主機板我就不知道了
目前市面上最多好像是三張
在Programming_Guide_2.0列的最強是Tesla S1070,multi processor有4x30
我猜是裝了四張GeForce GTX 280
台灣不知道有沒有LAB有Tesla?
另外也不是買有支援CUDA(G80以後)的卡就好
84、85只有2顆multi processor(一顆multi processor包含8顆stream processor)
我想能加速的意義有限
因為所有CUDA的運算,都是要先從host(CPU這邊)丟資料到device(GPU這邊)的memory
才能運算,也就是還要扣傳送的時間和memory access time
別小看這代價是很大的,頻寬和memory的速度都很重要
今天在HKEPC,NV要在八月推出支援CUDA的IGP,就是兩顆multi p
好奇的是IGP不也是讀main memory,不知道能不能省掉傳送時間
順便提一下CUDA這玩意,我初學有一點心得,有興趣可以看一下
基本上,把CPU和GPU一起運算比較好
首先要用GPU來運算,基本上就一定要加速,沒加速就一點意義也沒有
換言之你使用CUDA最在意的就是效能
因此程式設計師必須很了解GPU的硬體架構
小心翼翼的使用memory(有bank conflict、Memory Hierarchy的問題)
資料基本上都是designer要自己配到顯示卡的memory(你寫CPU CODE時根本不太需要管吧)
切thread時也要考慮很多硬體問題
另外debug很困難,基本上程式在GPU上跑時是無法中斷、使用printf的
而且你必須自己去考慮memory Coherence & Consistency的問題
簡單來說,CUDA是一種把效能、平行化的問題丟給designer的一種語言..
程式沒寫好的話,只會比CPU來算還慢
一些天生適合平行化的領域,如image process、矩陣運算
演算法就比較好寫一些,加速能力無窮
但像video encoder,其實就不好寫
目前雖然有產品出來,但似乎還不完全
提外話
前幾天有看到使用PS3 cell processor 改x264 encoder,效能似乎也沒有很好
我猜想是程式不夠最佳化,我想multicore、multithread的時代來臨
效能最關鍵的將是software..
最後提一個無關的
CUDA已經放出G80之後裡面的硬解晶片給CUDA使用(CUDA Video Decoder API)
可以直接硬解MPEG-2/H.264
--
CUDA有指令可以讓你選擇用那一塊GPU做運算
device0、device1..
理論上主機板能插幾張就能跑幾張,不同主機板我就不知道了
目前市面上最多好像是三張
在Programming_Guide_2.0列的最強是Tesla S1070,multi processor有4x30
我猜是裝了四張GeForce GTX 280
台灣不知道有沒有LAB有Tesla?
另外也不是買有支援CUDA(G80以後)的卡就好
84、85只有2顆multi processor(一顆multi processor包含8顆stream processor)
我想能加速的意義有限
因為所有CUDA的運算,都是要先從host(CPU這邊)丟資料到device(GPU這邊)的memory
才能運算,也就是還要扣傳送的時間和memory access time
別小看這代價是很大的,頻寬和memory的速度都很重要
今天在HKEPC,NV要在八月推出支援CUDA的IGP,就是兩顆multi p
好奇的是IGP不也是讀main memory,不知道能不能省掉傳送時間
順便提一下CUDA這玩意,我初學有一點心得,有興趣可以看一下
基本上,把CPU和GPU一起運算比較好
首先要用GPU來運算,基本上就一定要加速,沒加速就一點意義也沒有
換言之你使用CUDA最在意的就是效能
因此程式設計師必須很了解GPU的硬體架構
小心翼翼的使用memory(有bank conflict、Memory Hierarchy的問題)
資料基本上都是designer要自己配到顯示卡的memory(你寫CPU CODE時根本不太需要管吧)
切thread時也要考慮很多硬體問題
另外debug很困難,基本上程式在GPU上跑時是無法中斷、使用printf的
而且你必須自己去考慮memory Coherence & Consistency的問題
簡單來說,CUDA是一種把效能、平行化的問題丟給designer的一種語言..
程式沒寫好的話,只會比CPU來算還慢
一些天生適合平行化的領域,如image process、矩陣運算
演算法就比較好寫一些,加速能力無窮
但像video encoder,其實就不好寫
目前雖然有產品出來,但似乎還不完全
提外話
前幾天有看到使用PS3 cell processor 改x264 encoder,效能似乎也沒有很好
我猜想是程式不夠最佳化,我想multicore、multithread的時代來臨
效能最關鍵的將是software..
最後提一個無關的
CUDA已經放出G80之後裡面的硬解晶片給CUDA使用(CUDA Video Decoder API)
可以直接硬解MPEG-2/H.264
--
Tags:
顯卡
All Comments

By Puput
at 2008-07-09T23:33
at 2008-07-09T23:33

By Rebecca
at 2008-07-13T12:28
at 2008-07-13T12:28

By Leila
at 2008-07-14T00:00
at 2008-07-14T00:00

By Madame
at 2008-07-14T22:02
at 2008-07-14T22:02

By Hardy
at 2008-07-16T16:47
at 2008-07-16T16:47

By Steve
at 2008-07-17T14:31
at 2008-07-17T14:31

By Christine
at 2008-07-22T13:08
at 2008-07-22T13:08
Related Posts
PowerColor HD 3650 DDR3 512MB實測

By Ivy
at 2008-07-03T22:04
at 2008-07-03T22:04
幾款還不錯用來對付 HD4850 的散熱器

By Irma
at 2008-07-02T10:14
at 2008-07-02T10:14
微軟 Direct X 9.0C 最新 6 月版釋出

By Dora
at 2008-07-01T16:34
at 2008-07-01T16:34
ATi HD4870/4850 測試一覽 & 消費電力比較

By Joe
at 2008-07-01T11:30
at 2008-07-01T11:30
ATI 4850 四種類型遊戲實測(賽車.射擊.動作.即時戰略)

By Kelly
at 2008-06-28T12:11
at 2008-06-28T12:11