作者:
unknown (ya)
2025-09-02 08:51:29資料來源:
https://reurl.cc/daOYr8
以下Google機翻:
英特爾已獲得一項名為“軟體定義超核”(SDC)的技術的專利,該技術使軟體能夠融合多
個核心的功能,組建一個虛擬的超寬“超級核”,只要擁有足夠的並行工作能力,就能提升
單線程性能。如果該技術能夠按預期運行,那麼英特爾未來的 CPU 將在特定支援 SDC 的應
用程式中提供更快的單執行緒效能。目前,這只是一項專利,它可能會成為現實,也可能不
會。
英特爾的軟體定義超核 (SDC) 技術將兩個或多個實體 CPU 核心組合成一個高效能虛擬內核
,透過將單線程指令劃分為獨立區塊並並行執行,實現協同運行。每個核心運行程式的不同
部分,而專門的同步和資料傳輸指令則確保保留原始程式順序,從而以最小的開銷最大化每
個時鐘指令數 (IPC)。這種方法旨在提升單線程性能,而無需提高時脈速度或建立寬大的單
片內核,因為這樣會增加功耗和/或晶體管預算。
現代 x86 CPU 核心可以解碼 4-6 條指令,然後在將指令解碼為微操作後,每週期執行 8-9
條微操作,達到此類處理器的峰值 IPC 效能。相較之下,Apple 基於 Arm 的客製化高效
能核心(例如 Firestorm、Avalanche、Everest)在理想條件下每週期最多可解碼 8 條指
令,然後每週期執行超過 10 條指令。正因如此,Apple 的處理器通常比 Arm 同類產品具
有更高的單執行緒效能和更低的功耗。
雖然技術上可以建構一個 8 路 x86 CPU 核心(即一個超標量 x86 處理器,能夠每時脈解
碼、發出和退出多達 8 條指令),但在實踐中,由於前端瓶頸以及在功耗和麵積成本大幅
增加的情況下效能提升的收益遞減,這一目標尚未實現。事實上,即使是現代 x86 CPU,在
一般工作負載下通常也能達到 2、3 或 4 個持續 IPC,具體取決於軟體。因此,英特爾的
SDC 建議,與其建構一個 8 路 x86 CPU 核心,不如在可行的情況下,將兩個或多個 4 寬
單元配對,組成一個大核心進行協作。
在硬體方面,支援 SDC 的系統中的每個核心都包含一個小型專用硬體模組,用於管理配對
核心之間的同步、暫存器傳輸和記憶體排序。這些模組利用一個保留的記憶體區域(稱為蟲
洞位址空間)來協調即時輸入/即時輸出資料和同步操作,確保來自不同核心的指令以正確
的程式順序退出。該設計同時支援順序和無序核心,只需對現有執行引擎進行少量更改,從
而在晶片空間方面實現緊湊的設計。
在軟體方面,系統使用 JIT 編譯器、靜態編譯器或二進位偵測將單執行緒程式拆分為程式
碼段,並將不同的程式碼區塊分配給不同的核心。它注入了用於流程控制、暫存器傳遞和同
步行為的特殊指令,使硬體能夠保持執行完整性。作業系統的支援至關重要,因為作業系統
會根據運行時條件動態決定何時將執行緒遷移到超核模式或從超核模式中遷移出來,以平衡
效能和核心可用性。
英特爾的專利沒有提供精確的數位效能提升估計,但它暗示在特定場景下,期望兩個「窄」
核心的效能接近「寬」核心的效能是現實的。