三年架構大革命!R520脫胎換骨全測試
當3D模型的數據按照用戶的視角轉換成為了屏幕上的像素的信息之后,現在就需要進行最重要的操作了,這也是圖形處理中最關鍵,性能消耗更大的部分。
這個時候的像素信息,是不完全的像素信息,只知道這個像素是屬于哪個三角形的,還有很多方面是沒有確定的:
這個三角形上貼的圖是什么?這個三角形收到那些光源的照射?這個頂點是否在三角形的邊緣,會不會在抗鋸齒操作中被處理?等等
所以整個像素渲染引擎是整個3D圖形生成過程中最麻煩的一個操作過程,也是對性能要求最大的一個部分。
ATI在這次R520上特別增加了一個被稱之為“Ultra—Thearding Dispatch Processor”的部件,這個單元負責將線程分派給下面的像素渲染管線。
我們知道,對于一個畫面,是有很多數據需要處理的,而這些數據幾乎都是平等的,像素之間,或者頂點之間。于是我們的每個圖形芯片都需要能夠同時執行這些操作,也就是并行運算。
但是現在出現了一個矛盾:一方面為了要求并行計算,很多像素要求同時進行操作,將畫面分成一個個小塊來處理將能夠很明顯的提高效率,但是如果一個塊中的像素需要進行不同的操作,那么將適得其反。
另一方面,如果將每個像素作為最小的單位進行處理,那么出現問題的可能就沒有了,但是這樣效率將會很低,因為不同的像素的處理要求是不同的,簡單的處理的快,復雜的處理的慢。
ATI的Ultra—Thearding Dispatch Processor便是用來解決這個問題的,首先,我們可以將每一個像素的處理過程理解成為一個“線程”,那么這個Ultra—Thearding Dispatch Processor的功能就是分配這些線程的執行。它可以動態檢測到每個像素渲染單元的工作情況,避免了空閑的情況存在。
借助于這個單元,R520可以同時處理多達512個線程,這樣就可以大大的提高效率,這也是R520只有16個像素渲染管線同樣能夠表現得如此好的原因了。
如果要理解這個概念,我們就必須先理解“粒度”這個概念,粒度就像是砂子的顆粒的大小,過小會數目增多而影響速度,過大而會導致沖突增多浪費資源。
R520同時處理的像素塊的大小是16像素,也就是4*4像素的一個方塊,這個數據相對于G70來講要小一些。
我們來看一個例子:

我們看到,我們現在要進行的是一個陰影處理的情況,一共分為三種可能,一種是在陰影中,一種是不在陰影中,還有一種就是處在陰影的邊緣。




我們看到,由于分支處理的操作能夠和線程的操作并行進行,所以節省了操作需要進行的時間。原來需要20個流程周期完成的任務只需要14個就可以完成了。
關注我們


