詳細了解 Cluster 出發的 DynamIQ 到底與 big.LITTLE 大小核是什麼關係?

2017.03.24 06:59PM
是詳細了解 Cluster 出發的 DynamIQ 到底與 big.LITTLE 大小核是什麼關係?這篇文章的首圖

ARM 在這個月公布了一項全新的多核技術,稱為 DynamIQ , ARM 稱其為 ARM 未來多核設計的全新基礎,但或許是因為一張投影片將 ARM 自多核心、 big.LITTLE /大小核與 DynamIQ 並列,使得部分媒體把 DynamIQ 視為取代 big.LITTLE 的技術,不過實際上兩項概念仍能共存,尤其是針對行動裝置領域, ARM 也提出 DynamIQ big.LITTLE 概念。

 

從 ARM 的多核技術演進,第一世代的 Mulitcore ,是定義了多個核心可容納在一個 Cluster 內, Multicore 可追溯到 ARM11 世代,故初期智慧手機的多核處理器多半依循此多核定義;初代的 Multicore 定義了一個 Cluster 最多 4 個核心,而四個核心之間需要是時脈同步、相同架構,且僅允許單個 Cluster 運作。

3dc233e6ec2021c52b625f8a3d5e2170

至於 big.LITTLE 則是讓 ARM 架構邁向複數 Cluster 的重要技術,此技術發表於 2011 年,不過正是導入終端產品則是在 2013 年,由三星與海思半導體率先採用;此技術將原本單一個 Cluster 設計進化到可以 2 個 Cluster ,利用一大、一小的 Cluster 使性能與能耗分配更合理,而聯發科的 3 叢集可視為此技術的變化應用。

 

big.LITTLE 依循 Multicore 對於單一個 Cluster 最多四核心、時脈需要同步以及同一個 Cluster 內核心架構需要相同,在完整版的 big.LITTLE 理論上可實現大小 Cluster 切換、大小 Cluster 協作,以及 Cluster 內的核心可以進行休眠,不過一但 Cluster 內第二個以上的核心開啟,時脈就需要同步。

0b8f68ccd0eaa1febccf94f84dfe07fc

big.LITTLE 雖是目前相當普遍的處理器設計,不過在裝置越來越重要最高效能與長續航力的情況下, big.LITTLE 也面臨較難以合理分配能源的狀況,尤其是在混用高效能核心與省電核心的高階產品上。例如 Cortex-A73 雖較 Cortex-A53 效能高出一些,但能耗卻需要消耗更多。

 

而智慧手機的使用現況基本上也是絕多數時間處於低能耗的狀態、僅有少數時間會動要到高效能核心,但這也取決在系統以及軟體本身資源分配的問題,畢竟高效能架構開啟時,光啟動單一核心就幾乎達到小核心四核心全開的水準,若系統設定不佳導致需要較長時間啟用高效能核心,甚至需要開啟多個高效能核心,就會使電池以驚人的速度消耗。

74d22259a6d9bc819d18072d2257efcc

全新的 DynamIQ 則是自 Cluster 設計著手,不僅在一個 Cluster 內可以提供到 8 核心,同時提供省電核心、高效能核心混搭,還有各個核心時脈獨立管理,以及核心開、關、休眠的能力,這也使得 Cluster 的規畫可以更彈性,也能夠依照不同負載下的效能需求進行深度且差異化的配置。

 

簡單來說,原本單一個 Cluster 內的核心都是相同的組合,但是支援 DynamIQ 的新 Cluster 能夠將高效能核心與省電核心配置在一起,即便具備多個相同架購的核心,時脈也可進行細分,例如以 100MHz 作為區別,甚至可在同一 Cluster 內配置從 1.0GHz 到 1.7GHz 等八個不同時脈、相同微架構的核心。

 

所謂的 DynamIQ big.LITTLE ,指的則是在一個 Cluster 裡面具備大核心與小核心,透過獨立的電源管理分別讓大核心與小核心可依照其電力需求供電,故在單一個 Cluster 可以構成 1 大 7 小、 1  大 3 小或是 2 大 3 小等最多 8 核心組合,每個核心可自行構成同時脈的群組,也可細分到每一顆核心的時脈都獨立。

b7e0c080cbebc2db37468635dcb82f0b

相較於先前的 big.LITTLE 是透過個別的 Cluster 進行切換, DynamIQ big.LITTLE 是在同一個 Cluster 運作,不須像本來需要進行 Cluster 轉移與記憶體分配,直接在原本的 Cluster 就可移轉到大核心,使運作的方式簡化;但若有需要,例如需要配置超過 8 個核心,還是可以透過多 Cluster 的方式實現。


當然這是以手機的場合看 DynamIQ 的配置方式,在伺服器或是運算等級應用,仍可配置多個 Cluster ,尤其對於人工智慧架構需求,全新的 DynamIQ 就不需要如過去 big.LITTLE 世代需要為了不同負載配置大核 Cluster 與小核 Cluster ,能使 ARM 伺服器擁有應付更複雜的運算級應用,超越現階段主要集中在資料中心的應用。