• 3

請教高手_串流處理器Stream Processors的工作原理


cs90126 wrote:


那個人多就爆 跟...(恕刪)


現今的olg 大部份都不會以線路造成畫面上的延遲為主來設計的
這種發生lag時的特徵 就是走路走一走 突然回到剛剛出發的地方(送出封包 sever未處理)
或是 走路走了老半天 啥米東西都沒遇到(因為沒收到來自sever的資料 除了固定物件以外的東西都不會出現)

那 人很多 電腦能負載的話 基本上你的畫面是不會因此出現lag的狀況 因為這些處理都是由你自己的電腦在處理的
如果是網路有問題 那應該的情況是 這邊一堆人 但是走到一半之後完全沒人 一個都沒有

至於現在的olg 人多lag是一定的 因為畫面上的物件多到超出你的主機的運算能力時 就會出現一頓一頓的畫面
cs90126 wrote:
那個人多就爆 跟顯示...(恕刪)


有關係...
放特效可以殺死顯卡慢又愛開特效的玩家...
他只看到自己大lag...
連反應都來不急 就趴了...
換張強一點的顯卡就沒事了

網路慢嗎 網路是一點都沒變
土城加藤鷹
3樓比喻的立論點必須建立在nVIDIA和ATi 的SP架構以及設計是一樣或極其相似的基礎上,

然而事實上兩家的SP架構以及設計上的差異算是蠻大的,

不過現實上nVIDIA確實被ATi 的SP海打的節節敗退,

但nVIDIA著重的點已經趨向通用計算的道路上了...
filia wrote:
怎麼感覺這是某某學校...(恕刪)


囧 我念材料系的齁 非資訊或資工資管,只是想增加知識跟解除移惑而已

囧阿.....
tingtin wrote:
串流處理器Strea...(恕刪)

其實這並不是完全的因素..
shader運算單元的設計是可以處理兩組4元素向量的, 像是(a1,b1,c1,d1) x (a2,b2,c2,d2)兩組四個元素向量去算,
而ati跟nvidia在設計這個的時候原理不一樣,
ati得是一次就是乖乖用一組4 vs. 4去算, 即使他只是要一個a*b這麼簡單的運算也是一樣,
nvidia則不一樣, 如果收到四組a*b這種簡單運算, 那麼他會把這四個a*b放到同一個shader單元去算,
也就是說, 當碰到這種情形的時候, ati的一組只能算一個運算, nvidia的卻可以算四個.
道理大概就像是周伯通的雙手互博吧XD
只是nvidia這麼做把雙腳也算進去了XD
nvidia從8800GT (G92核心)之後就是強在這個scheduler跟resource dispatch的技術~
遊戲中其實真正需要4x4運算的地方並不多, 特效當頭的現在, texture的(u,v)運算(2元素運算)與粒子運算系統(1元素運算)其實才是真正較常用到的運算, 所以nvidia這是比較不浪費資源的做法,
但也因此他的邏輯閘複雜很多, 面積挺大, 反過來ati的就沒那麼複雜, shader數量可以較輕易的往上堆~
(請注意我寫的是"較輕易", 相對概念XD)
alvinli wrote:
其實這並不是完全的因...(恕刪)


你講的是很久以前DX9的情形, R500.....

ATI從R600以後是改成VLIW架構. 其實是 4+1 組SP.
如果運算都是A * B這一類.
VLIW Compiler軟體會把A * B 和 a * b兩個運算, 重組成
vec2(A,a) * vec2(B, b)的一組二元素向量運算.
...當然也可比照辦理 變成四元素向量vec4 * vec4
所以SP閒置的機率不高,
只要能湊到整組, VLIW架構就可以接近全速.
除非某些情形下運算有相依性, 湊不到一組....不過半組也行!
4+1個SP大部分閑置的情形非常非常少見.

遊戲的Shader其實目前還是3~4元素為主.
我想有生之年應該都不會變. 因為顏色一定是RGB, 座標一定是XYZ.
Shader永遠都在算這一類資料.

Vertex Shader是處理矩陣, 頂點座標, 法向量, 全都是3~4元素.
Pixel Shader都是處理像素 RGB+A. 是3元素+1元素,(不過那Alpha通常不必算)
光照運算也只是把光的3元素向量和表面的3元素法向量做dot.
所以其實遊戲裡的大部分運算都是三元素為主.

UV其實大多數時候是不需要算的.
因為UV是事先決定好, 寫在模型資料裡.
Shader通常只是把UV座標再pass給材質處理器.....不必用SP做計算.
材質的存取是Texture unit自動進行, 和SP無關.

ATI的SP之前在ATI某開發文件有看到遊戲實測的VLIW滿載率大約7~8成上下.
大概是4+1通常只用到4或3或3+1. 湊滿5個一起算的機率不高,但也不會完全湊不到.
即使如此, ATI還是有明顯優勢, 就算平均用3.5個, 也比 NV的1SP跑2倍時脈要稍快一點.

ATI的架構雖然浪費的運算比較多 , 但是4+1個SP 的體積只和NV的1個SP一樣大.
就算扣掉浪費的,扣掉時脈差距. 在運算密度上還是比較好.
所以往往ATI可以用比較小的die來達到相同的性能.
.......或者說NV必須把die做到更大, 才能勝過ATI.
(不過die太大就會難產.....結果fermi/GT300....)

雖然NV的Scalar架構不浪費運算資源....但是浪費電晶體. 結果塞不進更多的SP.
導致運算能力並沒有因為不浪費而提高(相對來說)
畢竟你放一個2倍時脈的高效率Scalar SP, 同尺寸人家可以放5個稍低效率的VLIW SP......
高效率也補不回數量上的龐大差距.
.........就算一個戰士可以打的贏2~3個民兵, 但是同成本可以請5個民兵圍毆1個戰士.
有時候雜兵海快攻, 比龜到帝王時代生城堡兵還強.
這就是為什麼高效率不一定是高性能的原因.



NV的scheduler跟resource dispatch都是硬體, 會佔不少電晶體,
NV用電晶體來提升指令效率.
而ATI用VLIW架構是把這些指令最佳化的工作透過 driver的VLIW Compiler來做.
完全沒有電晶體成本...........把那些成本用來塞更多SP.
所以才能運算密度這麼高.

Waffenss01 wrote:
你講的是很久以前DX...(恕刪)

大大的解釋真是清楚,以前都想說為啥ATI的sp數量比NV大那麼多,晶圓卻還比較小,原來兩家的工作型態差那麼多,所以就是NV的sp是高效率,但成本很高,ATI是架構簡單,成本低,以量取勝的意思囉
其實我是以結果論 去反推的
一般人,是不需要去了解那麼多的
數量少,要做到跟數量多一樣的效果
效能一定是要做到較好才行

玩家幾乎都是買來玩遊戲
看哪家比較能拉攏遊戲廠商
還比較實際...



cs90126 wrote:
那個人多就爆 跟顯示卡又沒關係= =
是伺服器個關係或是網路 載入資料過多 造成LAG...(恕刪)

你確定是這個原因嗎?
要不要開你的工作管理員看看網路使用率?
保證比你開BT抓檔案還低的多

另外, 可否給我個解是......伺服器/網路lag跟你的電腦FPS低有什麼關係?
FPS是你電腦硬體運算的結果, 又不是伺服器/網路叫你電腦算, 你電腦才能算
那樣台灣ADSL平均100ms的延遲, 根本什麼都不用做了
cs90126 wrote:
那個人多就爆 跟顯示...(恕刪)


又一位分不清楚硬體LAG跟網路傳輸LAG的人

  • 3
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?