|
||||
CPU/GPU互搶內存帶寬成為瓶頸
上文我們分別介紹了APU的CPU和GPU兩個部分各自的不足之處,或許會有人說CPU和GPU的融合纔是APU的精髓。的確,融合理念是AMD多年拼命宣傳的口號,但直到最近APU的真正出現,融合之道纔露出雛形,因為CPU和GPU能夠開始能夠共享內存了,傳統的內存和顯存帶寬被整合為一,但真的能做到1+1>2嗎?
從上面的示意圖中不難看出,為了降低GPU訪問內存的延遲和復雜度,APU特意增加了Radeon Memory Bus和Fusion Compute Link兩條並行總線,用於緩解GPU對高速帶寬的需求。如此設計看似很完美,可事實情況並非如此。
我們知道,傳統的集成顯卡都被整合到北橋,同樣是共享內存設計(訪問方式稍有不同)。不過當時的集顯規格都十分有限,對帶寬的要求並不苛刻,並且許多主板都帶有板載顯存予以緩解,也可以很大程度上減小對內存帶寬的依賴。但如今APU裡的GPU規格已經不可同日而語,對帶寬的要求迅速飆昇,如此以來問題就暴露出來。
GPU可以直接訪問內存,高負載下與CPU爭搶帶寬成為不可避免的矛盾
最突出的矛盾就是在高負載情況下,GPU與CPU爭搶內存帶寬的問題。在分析問題之前,我們先來看一下目前APU對內存規格的支持。可以看到A8、A6系列都可以上到DDR3 1866MHz,那麼1866MHz的DDR3內存能為APU提供多少帶寬呢?
前面說到過,APU內部同樣集成了雙通道128bit內存控制器,所以總得帶寬就是1866MHz*128bit/8≈29.8GB/s。也就是說,即便APU搭配最高頻率的1866MHz DDR3內存,在雙通道模式下最大能夠提供約29.8GB/s的理論帶寬,而且還是CPU和GPU共享的。(這只是理論值,實際情況要大大低於理論值,參照以往的測試結果大約為17-18GB/s左右。)
相比之下,類似規格的桌面版HD 5570能夠享受多少帶寬呢?HD 5570可以選擇搭配900MHz的DDR3或者900-1000MHz的GDDR5顯存,前者帶寬為900MHz*2*128bit/8≈28.8GB/s,後者帶寬則有900(1000)MHz*4*128bit/8≈57.6GB/s(64GB/s),要遠遠高於APU中GPU所能享受到的最大帶寬。
以目前的情況來看,雖然APU做到了CPU和GPU的初步融合,能夠統一共享內存帶寬,但恰恰是這個問題成為了幾乎不可調和的矛盾。一方面AMD希望APU的GPU性能提高一個層次來CPU性能的弱勢,所以將GPU規格提昇到了入門獨顯的水平;而另一方面,隨著GPU規格的提高對帶寬要求也瞬間飆昇,在有限的內存帶寬下還要和CPU共享,二者不僅不能充分發揮各自的性能,還互相絆腳。雖然,目前這個問題還沒有充分顯現出來,但隨著APU各方面規格的進一步提昇,早晚會成為APU未來道路上的一處瓶頸。