雖然開啟HT在大部分多線程應用中有明顯的性能提升,但是有關HT會降低CPU性能的論據也不少,早前Bitsum就發文聲稱HT技術會「傷害」CPU性能,其論據主要是微軟支持庫的文章,在Windows 2003 Server優化指南中微軟建議禁用超線程技術以提高性能,因為這種可以自我調整的HT算法會帶來一些混亂,操作系統的調度器(Scheduler)往往不能識別物理核心和虛擬核心的區別,可能把本該物理核心處理的任務分配給虛擬核心。
SA網站針對這個論點做了測試,對比了i7-3770K在開啟HT與關閉HT下的成績,結果如下:
大部分情況下關閉HT的性能都要低於開啟HT的情況,結果也與我們做過的CPU測試相同,平均下來關閉HT時的性能只有HT開啟時的90%。
SA作出的結論是否定HT技術的想法是杞人憂天,大部分情況下超線程技術帶來的是性能提升而不是降低,而且優勢還很明顯,何樂而不為。
事情到此並不算完,下面的讀者在評論中稱開啟HT技術在有些項目確實有提升,但是遊戲幀數不如關閉HT時平滑,特別是最低幀方面,並貼出了在Overclock網站的發帖,他舉了戰地3的例子,開啟HT時平均幀在84fps左右,最低幀在34-51幀左右,而關閉HT後平均幀在86fps上下,最低幀為40-59fps。他的表述也得到了很多玩家的贊同,表示遊戲中開了HT確實不如關閉時更流暢。
還有其他玩家援引Xtremesystems論壇以及Youtube上的視頻來證明自己的說法,這裡就不一一列舉了。
從自己做過的測試來看,在多線程支持較好的應用中HT效果還是很明顯的,但是遊戲跟應用程序不太一樣,它們普遍只對雙核優化,真正對四核優化的都不多,更別說開啟HT之後的8個核心了,而且遊戲幀數波動比較大,偶爾幾次的fps數據很難證明就是HT導致的。
但是從另一方面看,HT虛擬出的核心畢竟不是真的物理核心,微軟在Windows 2003的優化中肯定也是做過研究的,系統的調度器存在分配不當的可能,不過這個問題也算是解決了,今年初微軟發佈的任務調度補丁名義上是給AMD的推土機準備的,實際上則是優化了調度器的任務分配,因為推土機的模塊化架構也算是一種超線程技術,不過是物理核心,而Intel是虛擬核心。
這樣的爭議還會一直存在,而HT超線程總體上還是利大於弊,多線程應用中效果明顯,至於所說的性能降低問題,如果玩家覺得遊戲中幀數確實不夠流暢,可以試試關閉HT(前提是硬件配置沒問題,顯卡不是瓶頸),畢竟四核或者八核對遊戲來說沒區別。
沒有留言:
發佈留言