修正處理器漏洞後 Intel 處理器的效能將低於 AMD 處理器,影響高達五倍以上
在 Slashdot 上看到 EXTREMETECH 總結了一份 Phoronix 上的測試報告:
一直覺得很重要、想寫但忘了,直到看到 gslin 的文 才又想起來。
主要的大意是說在 2018 年初爆出的處理器漏洞還蠻嚴重的,因為這是在硬體製程上做死的漏洞,只能從軟體層級做修正(作業系統層級),然後網站針對這些修正更新去進行測試,發現作業系統更新過後 Intel 處理器影響的效能最高達到 20% ,而 AMD 的影響只有 3%,測試結果 AMD 效能也略超過 Intel 。
在台灣資訊與媒體界來看似乎有些刻意淡化這個處理器漏洞的影響,導致有許多消費者甚至根本不知道有這個漏洞問題。這樣的狀況似乎有些糟糕啊。
主要是 x86 處理器大多有「預測執行」技術來提高運算,預測將要執行的指令並提前排入序列當中,藉此加快運算速度,因此才有機會發展出 SMT 技術(Simultaneous MultiThreading 單核模擬多序列), Intel 也透過這個方法開發出了 Hyper Threading (簡稱 HT, Intel 之外的叫 SMT ),透過預測執行技術讓 CPU 單核心的運算進入到模擬多序列運算,效能增幅最多 15 ~ 30% 左右(有興趣的可以看 wikipedia 介紹)。
所以現在的 CPU 很多都是採用單核模擬雙序、雙核心模擬四序的架構進行開發生產,但卻因此種下了致命傷,比較白話一點的說明是,因為預測運算有機會將錯誤的指令排入處理器當中,如果沒有適當的安全權限防護又共用處理器內存記憶體的情況下,單核心上的運算有機會讓某一序列預測排入錯誤的指令得以取得處理器內記憶體的資料而造成資安問題。
這個漏洞曝光後造成很大的資安威脅, 只要使用 x86 設計架構有採用此技術的 CPU 都可能受到影響,影響範圍除了 Intel 之外也還包含了 ARM 與 AMD ,在清查過後發現 Intel 現有橫跨三代採用 HT 技術的 CPU 幾乎都中獎,三代分別是 Skylake、Kaby Lake、與最新的 Coffee Lake。
且因為這是硬體層面的影響,唯一有效的解法是關閉 Hyper Threading 功能,就不會有這個漏洞問題,其它解法都只能從軟體層去避免或防範,但因為這是一項「預測執行」的技術,是一項邏輯缺陷,所有軟體層的解法都只能緩解,因為 CPU 的速度越快、能處理運算的指令越多、預測就越快、就越難防護(一種自己揮拳打自己還不斷加速揮拳的概念 XD),導致作業系統核心層面臨一場更新災難。
到去年底為止 Intel 推出了三種建議系統層修改的解決方案,都造成效能下滑,這也讓 Linux 之父 Linus 不開心,因為採用 Intel 解決方案將單核改為間接預測後,效能大幅下降,在某些指令上甚至達到 50%,這樣乾脆把 Intel 的 SMT (HT)功能關閉算了,因為單核 100% 的運算力透過 HT 技術最多也只增加了 15 ~ 30% ,然後打上程式補釘後有些指令只有不到 65% 的效能,不如關掉 HT 跑單核全運算就好,還不用補上安全更新來拖累效能,而線上伺服器與部份習慣良好的人已經這麼做了(關掉 HT),因為這是避免此漏洞的最佳解法。
報導中即是指出,如果在作業系統把現有的安全性更新都打開(預設所有更新程式都補上)之後,再將 Intel 的 HT 功能關掉的情況下(最安全的狀況下), Intel 處理器的效能最多影響了 20% (HT 關掉後吐掉了原本增加的 15% 效能、安全更新也拖累了作業系統的軟體效能),修正過後的系統效能已經略低於同級的 AMD CPU ,因為 AMD 高階與新版的 CPU 皆未受到此漏洞的影響所以不需要關閉 SMT、雖然同樣在作業系統層的安全更新全打開後也會受到一些影響,但只有不到 3%。簡單說就是 AMD 因禍得福, Intel 這些安全更新程式一打上去,外掛效能一死就是死整片的,而 AMD 多數的 CPU 根本不需要這些安全更新、即使有上更新影響也微乎其微啊。
業界才發現 Intel 把偷穿的溜冰鞋脫了之後跑得比 AMD 慢, AMD 的 CPU 架構技術基礎竟然比 INTEL 的好又強,再加上 AMD 第二季將要推出 7nm 版本 Zen2 CPU,消費者版本的處理器直接將核心拉到 16 core 不說還只賣 499 美金, Intel 的工程師大概都快哭了吧?
Intel 的工程師現在在幹嘛呢?預測 BUG !不斷針對可能的變種推出各式各樣的解法,否則就是準備挨告了(消費者:我花錢買比較貴的 CPU 回家更新系統後跑得竟然比別人慢!),而新的生產線又不能不開,所以有問題的 HT 架構又要繼續用下去,處理器運算力更高後、預測運算又用更快速的預測跑出漏洞出來,效能更高後 BUG 也更快,推出更新程式又把效能拉了回來,整個公司的研發力就被拖在這裡了。只能打一慘字。
就算是 Intel 決定壯士斷腕、推出新架構的 CPU ,換架構可不是一兩年就辦得到的事情,再加上單一個世代的 CPU 推出後至少會在業界存在 10 年以上,而現在影響的 CPU 已經超過 3 個世代以上,所以這些修正補釘程式要跟著這一代的作業系統幾乎一輩子的時間,AMD 這次在體質上正式超車之後,只要獲利健康大概就會慢慢甩開 Intel 了。
目前的資訊產品的動作自去年開始就是默默計畫要更換掉 Intel 的 CPU 作為產品主線,蘋果新機的顯卡早已展開跟 AMD 的合作,更換 CPU 的傳言也甚囂塵上(有可能換成蘋果自行設計的、也有說可能換成 AMD 的),由 Google 主導的 Chromebook 也推出 AMD 版本的筆電試水溫, Acer 等品牌也已準備好 AMD 版本的新機,AMD CPU 除了擴大原有的桌機市場之外,似乎準備全面重返筆電產品,而家用電玩主機上最受矚目的 Sony PS5(暫稱)當然也是繼續採用 AMD 的次世代 CPU,今年或許就是 AMD 準備翻轉的元年啊。