中文简体版   English   星期五 ,9月 20日, 2019 (台北)
登入  申請試用  MY DIGITIMES231
 
對外貿易發展協會
活動+

Imagination PowerVR虛擬化 汽車GPU關鍵特性

  • 吳冠儀

在一個虛擬化環境中,能夠支援包含多種應用程式的汽車系統。

虛擬化是指可讓一台裝置作為一或多個虛擬機(VM)的主機的功能,而且每個虛擬機就像是獨立運作的機器,擁有自己的作業系統(OS),但所有的作業都是在相同的底層裝置硬體上執行。對GPU來說,這意味著,此功能可支援多個同時執行的作業系統,其中每個作業系統都能把繪圖工作負荷提交給單一的繪圖硬體單元來處理。

現在,GPU虛擬化已成為各種下一代應用的必備功能,從汽車、消費性電子到IoT(物聯網),內建硬體虛擬化技術的GPU可在各個應用程式/OS之間提供安全隔離(isolation),以提升安全性,並最大化底層GPU硬體的利用率。

因應市場的需求,Imagination的PowerVR GPU從Series6XT開始便支援硬體虛擬化技術,並在Series8XT系列中進一步增強其功能。在本文中,我們將討論虛擬化的基本概念,並透過介紹PowerVR GPU硬體虛擬化解決方案在汽車市場的應用,來說明此技術的強大功能。

虛擬化解決方案中的三個關鍵要素

首先是主機(host)OS:一個擁有OS的虛擬機,它具備完整的繪圖驅動程式堆疊,而且相較於客戶機(guest)作業系統,它對底層硬體擁有較高的控制能力。客戶機(guest)OS:一個擁有OS的虛擬機,並由hypervisor來代管。

可以有一或多個客戶機OS共享可用的底層硬體資源。每個OS都有完整的繪圖驅動程式堆疊。第三個要素是Hypervisor:基本上,它是代表作業系統的軟體元件,有一個共享的虛擬硬體平台,並管理作業系統的代管功能。

GPU虛擬化的類型

GPU虛擬化技術主要有兩種類型:半虛擬化(Paravirtualization):客戶機OS「知道」它是被虛擬化的,並與其他的客戶機共享相同的底層硬體支援。在半虛擬化解決方案中,客戶機作業系統需要透過hypervisor來提交任務,同時整個系統必須共同運作。

此解決方案會有hypervisor額外負擔(在CPU上執行),而且任務提交的延遲較長,因此有可能會降低底層GPU硬體的有效利用率。它也需要修改客戶機OS(增加進一步的功能性),使其能透過hypervisor來進行通訊。

以及第二種全硬體虛擬化(Full hardware virtualization):每個客戶機OS是在一個hypervisor下執行,且其運作模型好像是專屬地存取GPU,並不知道它是與其他的客戶機和主機OS共享硬體。通常,每個客戶機都有完整的驅動程式堆疊,並能以獨立、同步的方式直接向底層硬體提交任務。

此作法的優點是,在處理來自不同客戶機的任務提交時,不會有hypervisor額外負擔(在主機CPU上執行),因此可降低任務提交給GPU的延遲,最終可實現較高的利用率。

GPU虛擬化在汽車的使用案例

GPU虛擬化正成為汽車產業的必備技術。隨著汽車朝自動駕駛發展,日益需要支援更多的先進駕駛輔助系統(ADAS)功能。由於這些應用要求大量的平行運算能力,因此推動了GPU朝更強大的功能發展。

於此同時,擁有更多的高解析度螢幕也是日漸普遍的趨勢─包括儀表板、資訊娛樂系統(前座和後座)、抬頭顯示器(HUD)等。

傳統的做法是,這些不同的應用由單獨的晶片來處理,或是由單一晶片來執行軟體或半虛擬化技術。為了降低成本,一線供應商/OEM業者正朝功能更強大的單晶片解決方案進展。在單一晶片上執行軟體或半虛擬化技術,雖然也是選項之一,但它的缺點是效能/利用率下降、功耗較高,以及缺乏強韌性與安全性,尤其後者,是汽車產業的重要考量。

全硬體虛擬化技術能夠解決這些問題,確保每個應用程式之間的相互隔離,可提升安全性,並最大化底層GPU硬體的利用率。

如圖一所示,在每個虛擬機/客戶機OS上執行的汽車應用程式都是彼此隔離的,但是利用相同的底層GPU。有些關鍵性安全應用程式(在隔離的虛擬機中執行),例如儀表板和ADAS應用程式,通常是以保證的效能等能安全地執行。

其他的應用程式,如車載資訊娛樂應用,由於數位版權管理(DRM)的考量也需要確保安全性。此外,消費者也會希望能執行從第三方市集下載的非關鍵性與非安全性應用程式。為了避免惡意攻擊與複製安全內容,這些應用程式需要能與要求安全性的應用程式保持隔離,所有這些任務都能透過 PowerVR的全硬體虛擬化解決方案來實現。

功能更增強:PowerVR Series8XT的虛擬化技術

Imagination的PowerVR Series8XT GPU是第一代以Imagination的Furian架構為基礎的GPU。此強大的GPU系列產品建置了PowerVR的第三版硬體虛擬化技術,它的主要增強功能包括以下:

更精細的環境切換:利用Series8XT GPU,環境切換能以更精細的等級來執行,確保較低優先級的工作負荷能夠更快地被環境切換出去─並排程給較高優先級的工作負荷。現在,環境切換的精細度為:頂點處理:圖元(primitive )精細度、畫素處理:在圖塊中的圖元模塊─或最差情況,回到圖塊精細度。

個別的資料主檔刪除(Per data master killing):在此案例中,較低優先級的應用程式不會在定義的時間範圍內被環境切換出去,透過DoS機制可刪除或軟重置此應用程式,取決於資料主檔(data master)運算、頂點或畫素處理。

先前世代的PowerVR GPU只能支援運算刪除,而頂點和畫素處理需要軟重置,因此如果與不安全的較低優先級應用程式重疊執行的話,會對高優先級工作負荷造成影響。在Series8XT,所有的資料主檔都能被刪除,以確保即使高優先級/關鍵的工作負荷與需要逐出的應用程式重疊,它也不會受到影響。

個別的SPU工作負荷提交控制:在PowerVR虛擬化技術的第三版中,一個特定的應用程式能在GPU內被給予自有的專用SPU(可擴充處理單元),以執行其工作負荷。這對需長時間執行的運算式ADAS應用程式是很有助益的,因為應用程式能夠在其自有的專用SPU上不受干擾地執行,而其他的應用程式則利用其他機制(如,基於較高優先級任務的環境切換)來共享剩餘的GPU資源。

ImaginationPowerVR GPU解決方案

隨著ADAS功能日益提升,朝更高等級的自動駕駛邁進,再加上車內對更多高解析度顯示幕的需求,這些因素推動著快速、節能且支援虛擬化技術的GPU需求成長。硬體虛擬化解決方案可為底層的GPU硬體資源提供最大的利用率,並能在應用程式之間提供軟體與硬體的真正隔離,而且幾乎不會增加額外的效能負擔。

Imagination的全硬體虛擬化PowerVR GPU解決方案是滿足此市場需求的最佳選擇。它具備了高度的可擴充性設計,能提供各種所需的效能等級,是打算開發先進汽車SoC解決方案的業者的理想選擇。

PowerVR Series 8XT是第一代以高效能、低功耗Furian架構為基礎的GPU系列產品,它進一步提升了虛擬化功能並增加多項新特性,可使SoC製造商更輕鬆、以更具成本效益的方式,開發出高效、安全及強韌的產品。