咦? 紫皇大的網站因為他老人家當兵去才暫停的,
現在他已經回來了, 遲早會回復的吧?

總之這個要問他了. 硬體家族不是我管的....
我自己的網站在私人資料有寫....
引用:
Originally posted by impressurePS 不是對pixel做運算 VS而是對頂點(其實也算是pixel)做運算
未甚們不相同 一樣是對pixel
還有疑問未甚們vs無法產稱頂點
|
抱歉喔,您的發文沒有標點所以有些地方看不懂,我猜測您想問的問題好了.
與其說是"無法產生頂點", 倒不如說是"現在還不能產生頂點",
DX8/9的VS只能對晶片內的Local Vertex Cache進行讀寫
(NV2x的Cache大小約16個頂點),並且這個Cache只有FIFO的功用.
簡言之,VS不能做dependent類型的運算的主因,是因為”規格定成這樣”.
至於為什麼定成"不生成/消滅頂點"這樣呢?
1.可以減少彼此的資料相依性, 降低VS的複雜度.
別忘了VS是業界(雖然不是整個)共同協調出來的架構,
不可能無限上綱, 會有成本考量.
今天PS2的EE內建兩個VU,地位接近VS,
但是規格上它就可以做相依性運算,因為它能夠讀寫主記憶體.
(當初應該是計劃拿來處理NUMBs, 不過好像沒多少公司在用)
2.降低複雜度之後自然容易加快速度
比如說只要增設VS就可以立刻收到加速的效果.(NV25)
如果有相依性運算的話需要讀寫記憶體, 速度會受到記憶體控制器影響,
就算增設VS也不會達到線性效率提昇.
3.目前沒有比較好的機制處理額外生成的頂點.
代表Programmer對模型品質沒辦法控制.
NVIDIA和ATI都做過類似的東西(NUMBs),下場都蠻慘的.
PCWatch的訪談裡,雙方的主管階級都提過這方面的甘苦談.
至於Vertices 與 Pixel 之間的差異,
過了Triangle Setup Engine之後就屬於Rasterizer的工作範圍了.
DX7的時期,流程是
CPU輸出Vertex List
進入TCL--Transform(移轉)模型,clipping(切割)視線範圍,Lighting(打光)之後變成Polygon
過Triangle Setup Engine,之後才轉為Pixel,進到pixel pipeline.
也就是說,彼此之間的資料型態相差蠻多的.
(T&L/VS都是浮點,Pixel pipeline PS在DX8前是整數)
DX8引入Programmable的理由是認為”如果有足夠效能的話,
Lighting理應是Pixel Pipeline的工作”,所以引入Per Pixel Lighting的技術,
進一步改善Texture的效果.
(雖說透過DOT3 Bump, NV1x已經能達到部分的Per Pixel Lighting能力了),
但總之大略上還是一樣, Vertex和Pixel之間差異很大.
DX9說起來與DX8”差異”並不是那麼大,指令能做的事情差不多,但是可以容許的指令長度長了很多,所以能寫的Shader變大了;另外要求Pixel Pipeline配備浮點的理由是為了讓MultiPass不會因為重複處理喪失精確度(過去DX8的PS是整數的,所以重複運算的時候會喪失精確度)
DX10讓VS和PS共用同一份指令集應該是為了其他理由
(如Universal Shader Model之類), 而不是因為VS/PS的工作性質類似.
所以我覺得把Vertex視為和Pixel類似這點有不小的問題.
引用:
Originally posted by impressure
最後你也是工科的學生嗎
不知道你想不想研究gpu
如果你想 台灣只有交大有而已(小弟我沒考到 而且只有一個老師)
建議最好還是進去(台青礁成)
不然圖誠和凌陽是不會要這種的學生
小弟我就是被拒絕(國防役)[/b]
|
嗯, 真不妙, 我是私立學校的倒數生說.(噗)
而且我沒有想過國防役的事情…. 覺得要凹到畢業都有點難了.
對GPU很有興趣但是不認為自己有機會碰到.... XD
國防役啊....好遙遠說.XD