英特爾介紹Thread Director:硬體層面上讓混合架構完美運行
在 Architecture Day 演講中,英特爾介紹了 Thread Director, 這是 “Alder Lake” 晶片上的一個硬體元件,它使處理器的混合架構能夠完美運行。 “Alder Lake-S” 是第一款具有兩種 x86 CPU 內核的台式機處理器——較大的 Performance P 內核和較小的 Efficient E 內核,不過工作原理和 ARM 的 big. LITTLE 有所不同。
基於 x86 的 「Alder Lake」 處理器具有更複雜的 ISA, 並且 E 核不具備 P 核所具備的所有指令集或硬體功能。 這兩個內核在非常不同的性能/瓦特頻段下運行,並針對截然不同的工作負載進行了優化。
將工作負載發送到錯誤類型的內核不僅會影響性能,還會由於 ISA 不匹配而導致崩潰。 英特爾意識到僅僅只是在操作系統級別上無法解決問題的,因此創造了 Thread Director。
簡單來說,Thread Director 就是一個高度專業化的硬體抽象層 (HAL),一方面作為操作系統和軟體的介面,另一方面是兩組 CPU 核心的介面。 它的工作是在粒度級別(即線程級別)分析工作負載,將其分配到 P-core 或 E-core 集群中。 如果應用程式的特定線程不調用某些類型的指令並被確定為低優先順序,則將它們分派到 E-core 集群。 失去優先順序的線程也從 P 核停放在 E 核上。
當線程需要 P 核專有的指令(例如 AVX-512 或 DLBoost) 時 ,P 核獲得優先權。 Thread Director 還與OS內核一起工作,以區分後台任務和前臺/優先任務。 這可能適用於包含在 Chipset INF 軟體中的軟體端元件,如果不是專用驅動程序的話。
Thread Director 確保輕量級或低優先順序的任務不會不必要地調用 P 核,並且當系統空閒時,處理器的電源管理可能會為 P 核提供電源以實現主要節能(這是假設 Alder Lake 具有電源門控技術類似於 “Lakefield”)。
英特爾將推薦Windows 11 作為 “Alder Lake” 的最佳作業系統,因為它與 Thread Director 與操作系統調度程式對混合處理器架構的認識相得益彰。 然而 ,Thread Director 是否需要這個還有待觀察。