Intel漏洞門性能影響深度測試:果然優化了過於流暢的Bug
2018年年初,Intel突然投下一顆震撼彈,CPU被確認包含嚴重的安全漏洞。由Intel開始各家CPU廠商均被捲入,甚至連NVIDIA都宣布更新顯卡驅動來修補相關漏洞。
由於這次的漏洞事件波及甚廣,且具有很強的攻擊能力,所以從軟體到操作系統,甚至CPU固件都必須更新。
現在修補措施大致到了初步完善的程度,所以針對現有的修補措施對漏洞門帶來的影響做一次較為詳細的測試。
Intel 漏洞門簡述:
首先簡單介紹一下這次的漏洞門事件。
- 漏洞的分類:這次的漏洞門產生了Meltdown(熔斷)和Spectre(幽靈)兩個主要的漏洞分支。
- 影響的廠商:Intel(1995年起幾乎全線的產品)、AMD、ARM的CPU大都不同程度地受到波及,NVIDIA也宣稱顯卡需要更新驅動。
- 漏洞的危害:漏洞門會導致專門設計的病毒軟體可以直接讀取設備內存中的任何部分,所有的系統內核保護和安全軟體的沙盒都會直接失效。
- 漏洞的修補:漏洞的修補主要分為四個部分,瀏覽器內核更新、系統補丁安裝、CPU微碼升級(刷BIOS)、顯卡驅動更新(NV)
- 漏洞修補的分級:瀏覽器和系統補丁等軟體更新主要針對「熔斷」;CPU微碼和顯卡驅動主要針對「幽靈」。
- 修補的後果:修補後會明顯降低CPU的性能,按照CPU的迭代,越是古老的產品受到的影響越明顯。CPU的日常使用功耗會明顯上升。
- 修復效果的確認:GRC上發布的軟體「inspectre」可以幫助大家快速診斷漏洞修復的程度,顯示綠色的「NO」即代表對相應的漏洞可以免疫。
各家廠商受到的影響及應對建議(針對PC市場):
首先說一下軟體的修補進度,目前瀏覽器和操作系統均提供了針對性的更新,下文中就不再反覆提及。
Intel:
- 波及程度:Intel是波及程度最深的(因為是亂序執行最堅定的擁躉),「熔斷」和「幽靈」均中招。
- 修補方式:需要針對瀏覽器內核更新、系統補丁安裝、CPU微碼升級(刷BIOS)進行全部更新。
- BIOS進度:目前115X主流級別,從第六代及以上會有BIOS更新;X系列,從X99平台及以上會有BIOS更新。需要注意各家主板廠商的BIOS修復進度並不相同,甚至會出現BIOS中部分微碼更新並不到位的情況。
- 性能變化:
同時做軟體和BIOS修復的情況下,對性能的影響是最大的。目前針對Intel部分我這邊的測試數據比較齊全,所以就詳細分解一下。需要備註的是無論是什麼修復方式,磁碟性能都會明顯受到影響,這邊主要討論的是實際使用的性能變化。
第八代酷睿:八代酷睿通過超頻L2較好的抵消了性能損失,總體變化相對較小。
第六、七代:在只進行軟體修復的情況下,性能損失並不明顯。緩存的補償較少,所以軟硬體同時修補的情況下,多核性能有較為明顯的性能損失。
第四、五代:目前並沒有BIOS放出,只針對軟體更新的話,目前已知以5820K為例,滿載轉碼的性能損失在8%左右。預計第四、五代產品的影響會大於 第六、七代的產品。
更早產品:由於緩存機制上第四代起有較大的更新,所以預計單純軟體修補也會帶來較為顯著的性能損失。(微軟官方的說法用戶可以明顯感知到的性能損失)
- 功耗變化:
進行修復之後CPU的負載會比以前更高,相應功耗會增大。尤其是在辦公、看片、上網等場景變化尤其明顯。第八代酷睿主要是依靠超頻L2來抵消修復的性能損失,所以在低負載場景下,功耗最高會提升30%。
- 修復建議:
由於本次漏洞門中JS代碼比較容易受到攻擊,預計瀏覽器會是主要的受攻擊媒介。所以無論什麼情況下,都必須更新瀏覽器,國產瀏覽器用戶建議用回相 應內核的官方瀏覽器(國產瀏覽器內核更新肯定很渣)。
建議第六代及更新的CPU用戶應更新微軟的系統補丁,這樣對性能損失並不會太顯著。BIOS建議不要更新。
第四、五代的CPU用戶,更新補丁預計滿載性能下降較大,但安全起見還是建議更新。BIOS現在暫時沒有上,想更新也更新不了。
更早產品的用戶,預計CPU性能影響更大,是不是更新系統補丁我表示很蛋疼。但是無論如何,瀏覽器都必須使用最新版內核,不然會死的很慘。
- 注意事項:
目前Intel的CPU微碼被認定會導致電腦出現死機重啟的狀況,DELL、HP、華擎都已經宣布下架相關的BIOS。如果BIOS更新後出現相關狀況,建議嘗試回滾BIOS版本。
即使是拿到了CPU微碼,還是不建議大家自行修改BIOS進行更新,可能會產生額外的BUG。
由於部分廠商對Intel微碼做了回滾撤回處理,所以不排除後續Intel更新微碼後,性能再次出現變化的可能性。
目前Intel又讓微軟再次發布了屏蔽Intel BIOS漏洞修復補丁的補丁(真TM繞),相比系統補丁方式屏蔽,個人還是更加建議大家直接回滾BIOS。
AMD:
- 波及程度:AMD「熔斷」是確認免疫的,但是「幽靈」還是會中招。
- 修補方式:需要針對瀏覽器內核更新、系統補丁安裝、CPU微碼升級(刷BIOS)進行全部更新。
- BIOS進度:目前AMD已經宣布提供微碼給主板廠商,但暫時還沒有看到具體的BIOS更新。
- 性能變化:由於BIOS暫未發布,所以實際的性能影響未知。但從各方的消息來看,影響程度應小於Intel。
- 功耗變化:暫不確定。
- 修復建議:目前的話只要針對瀏覽器和操作系統進行更新即可,主板BIOS還需要等待。
- 注意事項:微軟第一版的系統補丁對AMD較早的CPU產品(速龍、皓龍等)支持會有問題,導致微軟收回第一版補丁。目前只要是微軟自動更新的補丁都可以正常使用,建議下載離線包的話要注意確認補丁代號。
NVIDIA:
- 波及程度:「熔斷」是確認免疫的,但是「幽靈」還是會中招。
- 修補方式:更新顯卡驅動即可。
- BIOS進度:不存在的。
- 性能變化:根據初步的粗略測試,性能影響不大。
- 功耗變化:暫不確定。
- 修復建議:目前的話只要針對瀏覽器和操作系統進行更新即可,主板BIOS還需要等待。
- 注意事項:暫無。
測試平台介紹:
由於目前只有Intel有完整的修補方案,所以暫時先針對Intel來測試。AMD的部分需要等BIOS放出後再來測試。
這次測試主要用到的i3-8100和i5-7500,可以較好地7覆蓋到目前BIOS更新較完善的6、7、8三代產品的變化。
八代酷睿的測試平台是Z370-HD3。
七代酷睿的測試平台是Z270-Phoenix GAMING。
內存是海盜船的DDR4 8G*4。實際運行頻率是2666C15。
顯卡採用的是迪蘭恆進的VEGA 64水冷版。
SSD是三塊Intel,系統盤用的是比較主流的535,以保證測試更接近一般用戶。240G用作系統盤,480G*2主要是拿來放測試遊戲。遊戲越來越多,只能加SSD了。
為了稍後測試MVNe效率,這邊還用到了750 400G。
散熱器是九州風神的船長240RGB。
測試平台是Streacom的BC1。
測試項目簡述:
相比一般的測試,這次的測試項目設計上會略顯複雜一點,所以首先進行說明。
本文測試會分為簡略結論和詳細測試兩個部分,由於補丁測試的個體項目差異會很明顯,裡面會有很多有意思的東西。所以還是建議大家還是應該去看詳細測試數據。
測試數據中結合了我以前漏洞門測試的文章,所以測試數據會有五列。其中會以i3-8100初始狀態作為對比基準。
- i3-8100未升級測試(初始狀態,包含完整測試數據,作為測試基準)
- i3-8100完全升級測試(完全補全狀態,包含完整測試數據)
- i5-7500未升級測試(初始狀態,僅包含CPU部分測試數據)
- i5-7500系統升級測試(系統補丁安裝但BIOS未更新,僅包含CPU部分測試數據)
- i5-7500完全升級測試(完全補全狀態,包含完整測試數據)
性能測試項目介紹:
對於有興趣進一步了解對比性能的童鞋,這邊會提供詳細的測試數據。如果不想看的話可以直接跳到最後的總結部分。
測試大致會分為以下一些部分:
- CPU性能測試:包含系統帶寬、CPU理論性能、CPU基準測試軟體、CPU渲染測試軟體、3DMARK物理得分
- 集成顯卡測試:包含集顯基準測試軟體、集顯遊戲測試、集顯專業軟體基準
- 搭配獨顯測試:包含獨顯基準測試軟體、獨顯遊戲測試、獨顯專業軟體基準
- 功耗測試:在集顯、獨顯平台下進行功耗測量
CPU性能測試與分析:
測試表格說明,為了幫助大家跟好的甄別,所以這邊我會把性能縮水比較明顯的項目用顏色標出來。8100對比組黃色是性能差距4%,紅色是性能差距10%。7500上,考慮到原生7500相比8100性能會有1~2%的差異,所以7500的標示上會相應壓縮1%,黃色是性能差距3%,紅色是性能差距9%。
系統帶寬測試,內存帶寬上,漏洞修補帶來的變化很小。緩存帶寬上分化則比較明顯。8100明顯在L2上有比較大的提升,平均超過10%。而7500在L2和L3上都出現了一定成都的下滑,尤其是L2的讀取和L3的複製變化尤其明顯。
CPU理論性能測試,是用AIDA64的內置工具進行的,可以測試很多CPU的基本性能。8100和7500在這個項目上表現都比較穩定,理論性能均平均提升0.25%。
CPU性能測試,主要測試一些常用的CPU基準測試軟體,還會包括一些應用軟體和遊戲中的CPU測試項目。這個項目的測試總體比較雜,更接近於一般使用環境。
最為顯眼的莫過於PCMARK 8測試,7500崩盤的比較明顯,8100則在ADOBE這一項上有較大的縮水。
另外由於兩顆CPU在緩存優化的策略上有差異,所以7-ZIP和WINRAR的性能差異明顯拉大(8100略微提升,7500略微降低)。
CPU渲染測試,測試的是CPU的渲染能力。CineBench三個版本測試,8100在R10的OPENGL測試中表現尤其不好,R11上多線程性能也有明顯下降。7500則在三個版本的多線程測試中均出現了明顯的性能下滑,且版本越新情況越嚴重。
3D物理性能測試,測試的是3DMARK測試中的物理得分,這些主要與CPU有關。8100總體表現尚數平穩,僅ICE EX這一項下滑比較大。而7500則呈崩盤之勢,整體表現相當不好。
CPU性能測試部分對比小節:
CPU綜合統計來說8100整體的受影響程度較小,變化不大。7500則隨著負載的增加,性能逐步遞減,這也印證了Intel關於漏洞門對低負載影響較少的論述。從漏洞修補的角度來看,7500的性能影響主要源於BIOS的更新,系統補丁影響較小。
其實還有一個比較糾結的問題就是單線程和多線程,這邊也做了一下分解。
單線程:8100基本上變化不大。7500則相對更加明顯,不過幅度也不算大。
多線程:8100基本上變化不大。7500的受影響幅度較大,達到了5%左右。
集顯性能測試:
集顯3D基準測試,主要是跑一些基準測試軟體,與理論性能測試,集顯性能基本不受影響。受CPU性能影響最大的ICE測試中,7500的表現比較糟糕。
集顯專業軟體基準測試,專業軟體部分以SPEC viewperf 12為基準測試,兩者總體變化都不是很大,不過7500有一項下滑達到了5%。
集顯性能測試小節:
總的來說集顯性能受影響並不多。
搭配獨顯測試:
現在顯卡更新為VEGA 64水冷版,這樣顯卡的瓶頸問題會解決很多。
獨顯3D基準測試,主要是跑一些基準測試軟體,總體上性能影響較小,不過可以明顯看到不同的測試項目性能變化比較大,有相當多的項目出現了較明顯的性能下滑。但3DMARK的X分,CATZILLA的4K有明顯提升。
獨顯3D遊戲測試,表格中將DX9~DX12不同世代的遊戲進行了分類,這樣會更加清晰一些。
8100的遊戲性能變化比較雜,27款遊戲中有11款出現比較明顯的性能下滑,而塵埃拉力賽和中土世界戰爭之影則逆勢提升10%左右。
7500的遊戲性能測試表現比8100還是要更弱一些(考慮到原生性能略高),27款遊戲中有7款出現比較明顯的下滑,所以可見7500的整體下滑更為平均。
按照API世代來分解,從前面測試中就可以發現如果是取平均數,性能下滑幅度不會特別明顯。相對而言,這次的補丁對DX11遊戲相對友好,DX9和DX12遊戲下滑幅度會比較明顯。
分解到解析度來看的話,1080P受到的影響高於4K解析度,說明遊戲中CPU的性能表現還是有下滑的。
獨顯專業軟體基準測試,專業軟體部分以SPEC viewperf 12為基準測試,這個測試是針對顯卡的專業運算測試,可以看到有兩個項目性能下滑比較明顯。
搭配獨顯測試小節:
從測試結果來看,雖然總體性能下滑幅度並不大,但是還是要看具體的測試項目,部分項目性能下滑非常顯著。
磁碟性能測試:
磁碟測試部分用的是CrystalDiskMark 5,1G的數據文件跑9次,這樣基本可以排除測試誤差。測試的SSD分別是535 480G和750 400G,都是掛從盤。
簡單科普一下這個測試里的概念,SATA介面和PCI-E通道都是可以從CPU或晶元組引出的(看CPU廠商怎麼設計)。這邊為了統一,測試的都是晶元組引出的SATA和CPU引出的PCI-E。
從測試結果上來看,真心是比較崩。圖表中的統計是對測試項目簡單取平均數,如果按照AS SSD這類軟體的加權體系,預計表格出來會更難看。
總體來說讀取受影響的程度會比寫入略好一點。8100在SATA SSD的測試中性能表現尚數正常,但是NVME的測試中,讀寫的4K深隊列都嚴重下滑,不足原來的60%,淺隊列的4K寫入也有30%的下滑。
7500的狀況就更差了,SATA的部分就能看到非常嚴重的下滑。NVME的測試則與8100的情況比較接近。
考慮到我用的535屬於性能優化十分溫和的產品,如果使用性能更為激進的SATA SSD,跑分差距應該會更明顯。
平台功耗測試:
8100性能大致保持住代價還是比較大的,集顯模式下待機功耗提高了30%,獨顯模式下也提高了近25%。
較為突出的是8100在4K遊戲下功耗相比原生狀態明顯提升,這也解釋了為什麼部分遊戲4K下性能會有上浮。
7500在待機時功耗提升並不大,但滿載時功耗還是比較高的。可能是因為7700K這顆熱得快的關係,Intel對7代酷睿總體的調教比較保守。
簡單總結:
關於CPU的性能:
從測試結果來看八代酷睿經過調教,總體性能變化並不會很大,而七代則會明顯一些。
CPU綜合性能上,8100的總體影響較小,基本保持原來的性能。7500多核滿載性能影響較大,考慮到8100與7500的原生性能差距,實際7500的性能下降會在5%左右
遊戲性能上,8100與7500整體上受影響都不算很大,不過7500部分遊戲性能損失較為顯著。
功耗表現上,8100由於L2超頻,功耗提升較為明顯,待機與高清測試平均上升20%+。7500原生功耗就較高,但也有一定的功耗上升。
關於CPU的功耗:
八代酷睿的功耗提升比較明顯,對於散熱選擇比較緊張的人,應該要考慮一下散熱問題。8600K及以上的CPU建議主板至少需要七相供電。
關於漏洞修復的策略:
1月29日,Intel又讓微軟再次發布了屏蔽Intel BIOS漏洞修復補丁的補丁。
在更早的時間,Intel還宣布會發布完全硬體修補的新架構的CPU,不過預計中間還會夾一代14nm的產品。Cannon Lake還要往後推,果然產品名字叫了Canno的都會牙膏。
所以現階段必做的還是瀏覽器和系統層面的補丁,其他的還是先做吃瓜群眾比較好。
至於漏洞門的性能測試要出到第幾篇才是大結局?2017的CPU盤點什麼時候能做?我也很絕望啊!


TAG:快科技 |