去年在Tiger Lake-U上市前寫瞭一篇基於測試板上進行過的有關i7-1165G7的測試,其實我對Tiger Lake-U的表現還是比較滿意的,最近上市的NUC獵豹峽谷便搭載瞭這款處理器,這次有瞭實機必須要好好體驗一下。
性能釋放
獵豹峽谷最吸引我的一點就是性能釋放更加激進,單核心睿頻非常穩定,風扇噪音小,測試中其單核頻率能長時間保持在4.7GHz左右,能更好發揮整個平臺的性能,這也是獵豹峽谷的一大亮點。
其實BIOS裡還能調節PL1 PL2設置,進一步壓榨性能發揮,不過建議量力而行,默認設置已經足夠高瞭。我個人比較關心整個機器的性能,所以會把重點放在性能數據上,不會過多介紹產品外觀。
獵豹峽谷集成度很高,方便移動攜帶,擁有2個雷電接口,配合自帶的HDMI和Mini DP可支持最多四屏輸出,輕松實現桌面級多屏辦公體驗的同時還不占地方,桌面更加整潔,如果工作的地方和傢裡已經備有顯示設備,獵豹峽谷也可以隨時在不同場合輕松辦公。
Tiger Lake平臺升級
Tiger Lake平臺在CPU內集成雷電控制器,擁有2個40Gbps帶寬Port,每個Port支持2個雷電接口,整個平臺支持最多4個雷電接口,獵豹峽谷上則是兩個滿血帶寬雷電3接口的配置。相比雷電3,雷電4要求更高,支持DP1.4協議、輸出8K視頻信號成為硬性要求,但兩者帶寬同樣都是40Gbps,並且8K顯示設備現在比較稀少,嚴謹來說獵豹峽谷這是一臺除PD充電以外全部雷電4功能的雷電3接口。機器最高支持64GB雙通道DDR4 3200MHz筆記本內存,有利於提升日常使用流暢度和核顯性能。
獵豹峽谷支持PCIe 4.0 NVME或SATA3固態硬盤,還有2.5Gbps有線網卡,支持Wi-Fi 6的AX201網卡以及HDMI 2.0b和DP1.4接口,你可以不用,但獵豹峽谷不能沒有。
CPU GPU核心架構升級
Tiger Lake CPU采用Intel 10nm最新工藝,經過全面優化達到更高頻率,在此基礎上,10nm Tiger Lake的頻率已經與10代Comet Lake相當,同時架構升級為Willow Cove,核顯最高有96個EU單元,這次測試的獵豹峽谷搭載i7-1165G7處理器,單核頻率最高4.7GHz,核顯頻率最高1300MHz。
微架構設計介紹(內部設計和緩存)
Tiger Lake CPU采用Willow Cove內核設計,該設計基於Ice Lake微架構的Sunny Cove微架構改進而來,而相比Sky Lake微架構設計的Comet Lake產品,架構特性和復雜度已經有瞭極大改進,流水線設計的微架構處理器,秉承“更寬,更深,更多”的思路提高架構性能。CPU目前可將流水線路徑分為前端—(亂序)緩沖區—後端,前端為取指譯碼,緩沖區為調度和暫存亂序執行下的微指令,後端為執行指令,獲取操作數據並寫回結果,而需要改進的就是這些部分。
Ice Lake在緩存和緩沖區上的眾多改進
1:第二級TLB 4K大小(緩存一般頁表)的頁面文件達到2048個隊列,2M/4M(緩存較大尺寸頁表)頁表共享上面提到2048中的1024個隊列,另外一組1024隊列用於1G超大緩存頁表的TLB,而在Sky Lake中該數值為1536個隊列(4K/2M/4M)+16隊列(1G)。
2:μop微指令緩存由1.5K指令數提高到2.25K指令數,分支預測性能有一定提升,指令譯碼進入亂序區指令隊列深度從每線程64隊列提高到每線程70隊列。
3:訪存L/S亂序緩沖區為128個Load隊列+72個Store隊列,Sky Lake為72+56。
4:調度器可調度160個完全就緒的微指令,通過尋找指令相關性,確保指令並行並調度進行執行單元,Sky Lake是97個隊列。
5: ROB亂序提交重排緩沖區大小,現在也被統稱為亂序執行窗口,其用於暫存亂序執行前進行等待操作數的微指令,或者已經完成執行後等待最終按既定順序提交指令而進行等待的微指令空間,由Sky Lake微架構的224個隊列拉高到352個隊列,可以說是一次拉滿的節奏。
6:一級數據緩存提高到每核心48KB,二級緩存提高到每核心512KB,4核心一共8M L3緩存。
更寬的流水線
Ice Lake在流水線寬度上,前端譯碼寬度為4個簡單指令(一般直接譯碼為一個μop)和1個復雜指令(一次譯碼多個μop)譯碼器,μop Cache發射指令寬度為6μops,與Sky Lake保持一致,但allocation寬度從4uops提高到5μops。
(配圖示意為Willow Cove,區別在於L2緩存為1.25MB/Core)
後端執行部分由原來4個功能指令執行寬度和4個訪存子系統執行寬度提高到4個功能指令執行寬度和多達6個訪存執行端口,而且數據帶寬翻倍,以便適應全新的AVX512寬矢量數據流,端口4、9為Store Date端口,端口2、3為Load Data端口,這樣Load/Store各2個端口,理論上實現瞭每周期2個Load數據+2個Store數據操作的數率,相比Sky Lake微架構,此前可實現最高在執行AVX數據L/S時,達到一共2*256bit Load+1*256bit Store的數據寬度,Sunny Cove達到瞭2*256bit Load+2*256bit Store,同時在執行AVX512數據Load/Store時可以實現每周期2*512bit Load+1*512bit Store(2個256bit Store共同完成)。
更多執行單元
Ice Lake在0、1、5、6四個端口上均增加瞭多個功能單元,如今程序更多瓶頸位於訪存和前端指令分派上,能利用4個功能端口同時並行發射執行的機會極少,實際上絕大多數程序也很難測出IPC接近4的情況,但在單個情況下,盡可能增加某種功能的執行單元會提高整體效率,Intel將LEA從2個擴大到4個,這旨在幫助計算內存地址移位計算的速度,並且新增專用IDIV除法器,將提高64位整數除法的計算。我們可以在Cannon Lake處理器上看到除法計算性能提升,而在除法指令延遲上,主要是大幅降低IDIV延遲。
AVX512擴展介紹(基本定義和擴展子集)
SIMD是代碼現代化中的重要組成部分—向量化的標志性指令,在Sunny Cove微架構上,SIMD支持從最高處理256位數據的AVX2 FMA來到512位AVX512 FMA。更寬的單次數據寬度功耗會略有提高,同樣功耗在頻率不是非常高的情況下,使用AVX512的能耗是要好於AVX2。
AVX512與以往AVX指令格式類似,指令助記符依舊為V開頭,如VaddPS,Vpmdd+3個操作數配合新增的512位ZMM寄存器使用,AVX512相比AVX2的YMM寄存器,可用數量也從16個增加到32個。
AVX512新增8個新的Opmask寄存器,用於條件執行和目標操作數的高效合並。每個Opmask寄存器的寬度為64位,它們被標識為k0-k7。8個Opmask寄存器中7個(k1-k7)可與EVEX編碼的Intel AVX-512F指令集結合使用,例如僅部分填充寄存器的矢量化餘數。當需要對所有數據元素進行無條件處理時,Opmask寄存器k0通常被視為“無掩碼”。另外Opmask寄存器也用作向量標志/元素級向量源,以引入新的SIMD功能,AVX512 SIMD寄存器和操作掩碼寄存器由操作系統使用XSAVE / XRSTOR / XSAVEOPT指令進行管理。
上圖為一個操作掩碼寄存器k1的示例,默認是一個雙精度浮點的512位矢量加法,寄存器打包8個雙精度浮點數來計算,匯編助記符等式可看作是相當於ZMM1=ZMM2+ZMM3的結果,K1作為條件執行寄存器,1為執行,0為不執行,所以當k1置1位置的數進行瞭加法,置0位置的數仍然是原本ZMM1的數據,不做ZMM2+ZMM3操作。
2017年的Sky Lake(Server)產品開始另外擁有AVX512CD/DQ/BW/VL這幾個子集,用於更精細字節/單字/雙字/四字操作,如AVX512DQ主要是加速對高精度運算需求的HPC業務,如石油和天然氣、地震建模、金融服務行業、分子動力學、光線追蹤、雙精度矩陣乘法、快速傅裡葉變換、卷積和RSA密碼學。AVX512BW指令組支持字節/字操作,這可以使某些企業應用程序、多媒體應用程序受益,還有支持EVEX編碼下的128/256位矢量計算(AVX512VL)指令。
在Sky Lake(Server)中,端口0和端口1的FMA單元可以單獨各自執行一條256位AVX指令,或融合執行一條512位指令,端口5的FMA單元隻能用於512位計算,這會使得這個單元在執行256/128位SIMD的時候無法發揮作用,並非所有型號都會開啟端口5的512位FMA單元,之前我們稱其為半吞吐的AVX512處理器。目前客戶端的處理器產品均為半吞吐512FMA處理器,這導致依托於端口5的512位FMA操作,向量整數乘法,浮點計算均隻能依靠端口0和端口1的256為單元融合執行(從端口0發射),但整數向量加法、邏輯和shuffle操作則與其他全吞吐處理器一樣。上文圖上標明的執行單元諸如向量ALU、FMA、Mul、Add、Div單元均表明為其是執行常見的整數和浮點型加減乘除或融合乘加操作,這些基本運算和之前AVX2指令集轉變為512位的指令都被歸為AVX512 Foundation指令集。在端口1上ICL新增瞭一個shuffle單元,但該單元不能執行512位shuffle操作,用於快速洗牌128位向量寄存器中的數據,而一些特殊的實現在圖中沒有標明其具體名稱,這些特殊的實現組成一個Ice Lake上才有的AVX512子集系列以及非AVX512,但依舊依托SIMD指令格式的新指令部分,部分指令專用性較強。
AVX512 VAES:將原本AES指令改為Vector(助記符+V)並可使用Zmm寄存器,可以實現4個128bit或1個512bit吞吐,但實際上Sunny Cove本身的非Vector AES單元也獲得瞭升級,從Cannon Lake開始不使用VAES而使用傳統AES指令也相當於原本的2倍,VAES則是原來Sky Lake架構的4倍吞吐峰值。
SHA指令集:該指令集並非AVX512擴展,其本質與AES指令集同類型,基於XMM寄存器,已經在Gemini Lake/Apollo Lake/Cannon Lake上使用,Ice Lake是一個大規模在高性能處理器上使用的世代,其支持SHA-1和SHA2-256計算,不支持SHA3,更重要的是新架構使用AVX512指令執行會很有優勢。
AVX512 IFMA:壓縮多個無符號整數的高52位或低52位整數(保持整數型數據精度)相乘,將其加入64位累加器計算得出FMA結果,可用於IFFT、RSA加密。由於客戶端產品FMA吞吐為半吞吐,效果將會受一定程度影響,但相比直接使用AVX512F的整數型FMA指令,效率依舊能有1倍峰值提升。
AVX512 VPOPCNT:POPCNT指令是計算數據中1的數量,可用於漢明重量計算。
Galois Field New-Instruction:伽羅華域計算指令,可用於加密領域、糾錯和位矩陣乘法。
AVX512 VNNI:主要適應以較低精度實現推理和訓練的AI計算模型。較低精度操作有兩個主要好處,首先是許多深度學習操作因數據密集性受內存帶寬限制,在這些情況下降低的精度使得數據格式更短,可能會更好使用緩存並減少內存瓶頸,可以更快移動數據並最大化計算資源。其次較低精度的乘法器需要較少芯片面積實現更低運行功耗,可以使硬件每秒執行更多操作從而進一步加速工作負載。由於這些優點,在不久的將來,尤其是對卷積神經網絡使用低精度運算有望成為標準做法。
Skylake-X系列的AVX512處理器通過使用低精度乘法與高精度數值累加,加速深度學習計算,也就是將兩個8位值相乘並將結果累加為32位需要3條指令,並要求其中一個8位數值為無符號int8(u8) 格式,另一個為有符號int8(s8)格式,最後累加數值為有符號int32(s32)格式。這樣相對之前完全使用32位數據,就可以增加4倍輸入(在512位寄存器中可以打包64個int8,隻能打包16個32位數據),需要3條指令來完成,也就是3倍指令獲得4倍吞吐,提升33%效率。
參見下圖:
AVX512 VNNI提供兩個指令,本質含義是低精度的乘與正常精度累加的指令,這兩個指令VPDPBUSD是將兩個8位相乘然後與32位數累加,一條指令直接實現一個有符號int8和一個無符號int8相乘並與一個32位有符號數累加得出32位結果,相當於通過int8計算累加得出32位結果,實現4倍輸入速度,VPDPBUSD的B即為byte,8bit,U和S代表有符號和無符號數。
VPDPWSSD則是16位相乘與32位數累加得出32位結果,實現2倍輸入速率提升,這裡的VPDPWSSD,W則是word,16bit,SS則是兩個有符號的數,即兩個相乘的16位數均為有符號位的int16相乘,目標用於訓練任務,但實際使用較少。
AVX512 VBMI/VBMI2:VBMI1(置換,移位)和VBMI2(擴展,壓縮,移位),用於列式數據庫訪問、字典的解壓縮、離散數學和數據挖掘負載(bit位的置換和位操作的矩陣乘法)。
AVX512 BITAL:包括POPCNT和Vec bit shuffle指令。
Willow Cove新增:
AVX512 VP2INTERSECT包括具體兩個指令VP2INTERSECTD/VP2INTERSECTQ,D和Q指的是雙字(32bit)與四字(64bit)的意思。
示例:VP2INTERSECTQ k1+1、zmm2、zmm3(512位寄存器/單個值64位),即在一對生成相應掩碼的奇偶掩碼寄存器中,存儲Zmm3與Zmm2相應位置存在交集的數值,並置0。
Willow Cove改進主要緩存
Sunny Cove在架構設計上相比Comet Lake所屬的Sky Lake微架構改進頗多,從Willow Cove架構設計來說,主要改進在緩存設計上。在過去十年,從第一代酷睿系列處理器Nehalem微架構開始,Intel客戶端處理器的架構、緩存部分持續使用32KB指令緩存+32KB數據緩存的L1,每核心256KB的L2以及最高每核心2MB的L3,采用inclusive設計。但這個情況在Ice Lake微架構時期發生瞭輕微變化,L1數據緩存從32KB擴大到48KB,L2緩存從256KB提高到512KB, L3最高每核心2MB/inclusive。與此同時,服務器端產品緩存設計也發生改變,Sky Lake(Server)微架構在保持32KB+32KB的L1緩存設計時,L2擴大到每核心1MBL3對應為每個核心可以擁有1.375MB容量,由inclusive設計改為non-inclusive。
inclusive LLC將固定映射保存L2數據,當核心在LLC出現緩存缺失,即可斷定其他內核的L2上同樣不會存在所需要數據,或直接在LLC上拿到其他內核的L2緩存數據。
non-inclusive並非完全等同於exclusive,嚴格來說L3與L2不是絕對互斥, L2與L3為同等地位,差異僅是訪問所需延遲差別。當LLC/L3緩存缺失時,可通過page確認其他內核L2是否有需要的數據,如果遇到需要提取其他內核L2數據時,此時延遲會比inclusive設計高,但L2和L3增加容量能保證在L2 L3命中幾率。在此基礎上,Tiger Lake結合瞭最新Ice Lake微架構的L1設計和Sky Lake(Server)的大L2、non-inclusive L3設計,並且利用10nm工藝,將L2和L3容量大幅提高,最終實現32KB L1指令緩存+48KB L1數據緩存,每核心1.25MB L2和最高每核心3MB L3配置,L3為non-inclusive。
TGL的1.25MB L2/Core也將組相聯數提高到20路,不過每核心1MB L2的Sky Lake(Server)采用16路組相聯,提升25%容量的TGL也增加瞭25%路數。
理論上來說,更大緩存有利於提升高吞吐需要的密集計算效率,尤其是矩陣乘為基礎的大規模數值計算,更大緩存有利於降低矩陣分解難度,可以將更大矩陣放入緩存中,大L2可以進一步提高響應速度,但如果是一些針對L3優化的程序過多cover到L3上,這反而會對TGL的緩存帶來壓力,因此TGL作為L2備選存在的大L3可能會帶來更高延遲,過多在L3上可能會不如過去inclusive的L3效率高。
架構升級帶來單線程性能大幅提升
本次測試我以桌面端i9-10900K為參照,為瞭解決此前主板無法睿頻到5.3GHz的問題,我決定選擇Z590芯片組主板,最終i9-10900K單核睿頻接近5.3GHz。i9-10900K隻開啟6個核心的情況下,設置單核睿頻4.8GHz,全核睿頻4.5GHz,模擬桌面高頻i5-10600K 6核12線程的情況下使用核顯,對比獵豹峽谷的性能表現,想必所有人都會覺得,i9-10900K會毫無懸念的擊敗搭載i7-1165G7的獵豹峽谷,即便在6核心的情況下,也能輕松壓制隻有四核心的i7-1165G7,雖然功耗可以釋放到40瓦,但4核睿頻最多也隻有4.1GHz,相比桌面級高頻處理器,其功耗差距也相當大,那麼i7-1165G7真的就無能為力嗎?我們來看看理論和應用實測,以下測試數據均來自獵豹峽谷。
理論單線程性能測試
SPEC 2017單線程測試
SPEC CPU 2017是一個專業的CPU性能測試軟件,分為整數和浮點兩個大類,擁有大量專業應用項目。使用Intel Classic Compiler在Windows 10下進行測試。註意,該項目在不同編譯器和系統上分值可能不同,所以需認準相同情況下對比。
編譯基本選項為采用QxCore-AVX2,O3優化級別。
最終整數得分7.34比7.63,i7-1165G7略低3.5%,浮點得分獵豹峽谷搭載的i7-1165G7高於i9-10900K,達到13.5比12.7高出瞭6%,i7-1165G7的單線程性能表現不俗。
Geekbench 5單線程測試
在相對更輕量化,測試時間極短,手機平臺也能運行的Geekbench 5中,i7-1165G7拿到瞭1619分的單核成績,比i9-10900K高出10%還多。當然,我們仔細看看子項就知道,加密解密的項目憑借AVX512 VAES指令集,i7-1165G7顯著高於i9-10900K,而在整數和浮點運算部分,i7-1165G7則以微弱優勢擊敗i9-10900K,也體現出i7-1165G7的單核性能已經達到甚至超過瞭i9-10900K這樣的10代頂級桌面級處理器,更別說其他處理器瞭。
單線程和日常辦公基準測試
首先是PCmark10基準測試,獵豹峽谷使用搭載PCIe4.0 SSD進行測試,桌面Comet Lake-S平臺則使用傲騰900P SSD進行測試。在日常程序啟動和網頁瀏覽的基本常用功能項目上,兩者性能相當。在視頻和圖像編輯領域,全新核心顯卡發揮出絕對實力,擊敗瞭桌面平臺。
接下來是基於PCmark10專業版,使用Office 365套件測試Word、Excel、PowerPoint辦公性能以及Edge瀏覽器的網頁瀏覽性能。在Word和Edge網頁瀏覽上,獵豹峽谷表現還是很不錯的,擊敗瞭i9-10900K的組合。
架構升級,多核也有良好表現
主流多線程測試
常見多線程應用場景包含科學計算、渲染,在視頻編碼測試中常規的渲染和編碼多核測試i7-1165G7的R20成績2660分,基本上是i7-1165G7最大性能水平,R20單核成績為593分。
AVX512+大緩存,多線程彎道超車
AVX512 VNNI AI性能
使用AIXPRT基準測試,利用int8低精度數據格式配合VNNI指令集,采用Resnet-50和Mobilenet v1兩種網絡模型做AI推理計算,i7-1165G7縮小瞭與i9-10900K的差距,並且能擊敗Comet Lake-S處理器,下圖為不同Batch Size下的平均每秒圖片識別速率。
AVX512 VAES加密解密性能
采用SiSoftware的加密解密測試,該測試軟件AES多線程計算帶寬高度依賴於內存與緩存,內存帶寬、緩存容量帶寬是決定結果的關鍵。i7-1165G7憑借每顆核心1.25MB L2與3M L3緩存的優勢,AES性能力壓Comet Lake-S,SHA則介於6核與10核Comet Lake-S之間,可以說表現想當不錯。
AVX512 IFMA52高精度整數計算
IFMA可進行64位整數壓縮保留低52位或者高52位進行乘法,與64位整數累加的功能,可大幅提高高精度整數FMA性能,用於RSA加密、數學常數計算、繪制分形圖等高精度需求場景。
首先y-cruncher是一個非常好的向量化圓周率計算軟件,支持AVX512 IFMA,所以對功耗釋放需求很顯著,獵豹峽谷的高PL1設定能很好服務這類計算任務,同時較大的數據量對內存帶寬和緩存也有較高要求。我們分別計算2.5億和25億圓周率,最終獵豹峽谷與Comet Lake-S性能相當。
在SiSoftware多媒體測試中,i7-1165G7表現依舊亮眼,超越瞭6核的Comet Lake-S。
核顯加速圖像和視頻編輯
Procyon基準測試中包含圖像和視頻處理測試,測試基於真實Adobe應用軟件而來。圖像測試使用Adobe photoshop和LightRoom進行測試,測試版本取決於用戶真實安裝版本,視頻測試則使用Adobe Premiere Pro進行視頻編碼導出測試,使用的Adobe軟件版本為Adobe Photoshop 22.2.0,Adobe LightRoom Classic 10.1.1,Adobe Premiere Pro 14.9.0.52。
圖像處理兩個部分總的來說互有勝負,最終成績相當,看得出來i7-1165G7這塊處理器性能基本與桌面平臺相當。
視頻編輯處理主要測試視頻編碼導出性能,分別對1080P H264和4K UHD H265的視頻進行CPU和GPU測試,我們可以看到CPU部分略有差距,而參與加速的GPU部分表現亮眼,用時明顯低於桌面平臺組合,最終總分也要比桌面平臺高,可見GPU加速對內容創作的重要性。
遊戲娛樂
獵豹峽谷的全新核心顯卡支持AV1解碼能力,最高支持8K 30fps的AV1視頻。而在遊戲圖形方面,獵豹峽谷的優化和性能釋放其實相當不錯,在DDR4 3200MHz內存的加持下,其圖形性能與高端筆記本也非常接近。
總結
獵豹峽谷日常使用體驗與桌面平臺相差無幾,這不僅僅是主觀感受,在量化的跑分測試中也有所體現。處理器強大的單核性能無論是理論測試或者實際應用測試都有不俗表現,全新核顯大幅提升內容創作性能。在Adobe軟件中,通過GPU加速的i7-1165G7獲得超越桌面平臺的性能。雖然獨立顯卡加速很強,但目前是一卡難求,價格也水漲船高,而一個強力的核心顯卡帶來優秀的異構加速能力,無疑是一個省錢省事的方案。
多線程在AVX512加持下具備彎道超車能力,在部分計算項目上,也展現瞭越級反殺的能力,有相關需求的用戶同樣可以關註這臺獵豹峽谷。機器支持15W無線充電和雙滿血雷電接口,雷電接口不僅能給筆記本電腦充電,還可以擴展出額外網絡接口直接與筆記本組成局域網。
當然這些優秀成績也離不開獵豹峽谷強大的性能釋放,對單核睿頻獨到的調教才讓這臺機器優秀性能展示出來,用戶可自行更換和搭配內存以及硬盤獲得更大容量的計算和內容創作空間。
轉載:JZWSVIC