有了Mantle,FX-8350遊戲性能可匹敵Core i7-4770K
在APU 13大會上,AMD以及DICE的演講中都特別提到了Mantle API的作用,我們只知道Mantle是一種底層API,可以減少遊戲運算中CPU帶來的間接成本(overhead),進而提升性能,但是Mantle目前還沒有公開的實際應用,我們只從DICE口中得知Mantle版《戰地4》性能會比DX11.1版更好,但是怎麼個好法呢,Mantle到底能給遊戲帶來什麼可見的好處呢?
在這次的大會上,Oxide Games也做了Mantle及他們的引擎Nitrous(液氮)相關的演講,其中就明確闡述了Mantle API帶來的好處,它優化了多核CPU的支援,CPU管理渲染命令的成本降低了10倍,部分渲染場景速度是非Mantle的3倍多,而且在Mantle的輔助下,AMD的FX-8350處理器實測性能已經匹敵Core i7-4770K,對於R9 290X這樣的顯卡來說,即便是降頻到2GHz的FX-8350都不再是性能瓶頸了。
為什麼推出Nitrous引擎
為什麼Oxide會設計Nitrous引擎,目前64位元及8核處理器已經很平常了,GPU也有了TFLOPS級別的運算能力,但是現在很難同時利用所有這些能力。
Nitrous引擎的特色
目前的瓶頸
現在的GPU性能非常強大,前提是CPU能充分喂飽它們。如今的PC也有很多核心及大量內容,如何利用好這些資源是個問題。對提高性能來說,SSE指令、緩存、記憶體管理都是很關鍵的因素,Nitrous引擎可以管理好上述因素,並且支援60fps速度處理器10000+單位。
支持Mantle只需要多增加1000行代碼
對於很多人擔心的支援Mantle需要耗費很多時間和精力的問題,Oxide表示對於現代的引擎,支援Mantle並不需要多大的代價,2人月的工作量就能支援Mantle,需要改進的代碼也不多,Oexide稱非Mantle的代碼大約是3500行,支持Mantle driver層大約要4500行代碼。
Mantle帶來的性能提升
至於Mantle帶來的性能提升到底是什麼樣的,Oxide也舉了實際的例子,在一個4核8執行緒的CPU系統中,設定場景大約有1萬個單元,5萬個批量腳本(batch)。
不支援Mantle的情況
不支援Mantle時,這種設定需要99毫秒的CPU執行時間,GPU執行時間忽略不計(時間都用在CPU執行上了),這樣總的幀時間就是99毫秒,期間需要6個額外的驅動執行緒。
支援Mantle的情況
如果支援Mantle,同樣的情況下CPU執行時間只要18毫秒,另有15毫秒的GPU等待時間,總的幀時間是33毫秒,而且完全不需要驅動執行緒,這樣算起來支援Mantle的性能幾乎是不支援Mantle的三倍。
如果有12個執行緒,執行8萬個批量腳本的幀時間也只要33毫秒
最終的結果
有了這樣的實例對比,我們再來看下Oxide的總結。
支持Mantle之後,API的間接成本減少了10倍,而且Mantle的效果可隨CPU核心數並行擴展,如果算上驅動層花費的時間,真實性能很容易就有10倍提升。在應用層面,StarWarm遊戲部分場景有2倍的性能提升。
關鍵的來了,Mantle與其說一個GPU優化API,倒不如說是CPU優化API,它減少的大多數都是CPU執行時間,這樣一來AMD的FX-8350處理器的性能都能匹敵Core i7-4770K(物理多核的優勢啊)。此外,Mantle也解放了CPU的性能,對與R9 290X這樣的顯卡來說,即便是2GHz頻率的FX-8350也不是問題,瓶頸還是在GPU上,喂不飽GPU的情況幾乎不存在了。
展望未來
看起來Mantle比較像是解放CPU的效能,反而變成GPU會跟不上CPU
高階CPU的差異化在遊戲上就變因此變得很小
對掌握GPU實力的AMD來說 的確是個神兵利器阿!
越來越期待在戰地風雲4的實際表現XDD
|