你需要了解關(guān)于HSA規格的更多知識!
2000年以前,個(gè)人電腦(PC)通常只有一顆使用者可編程的處理器──也就是中央處理器(CPU);多年來(lái)有許多添加不同種類(lèi)處理器的嘗試,但一直到繪圖處理器(GPU)發(fā)明,異質(zhì)多工處理技術(shù)才成為PC市場(chǎng)的常見(jiàn)功能。
本文引用地址:http://dyxdggzs.com/article/201604/289122.htm從那時(shí)候開(kāi)始,PC與類(lèi)PC裝置如平板電腦、智慧型手機內的處理器數量與種類(lèi)快速增加;今日所謂的系統單晶片(SoC)處理器,通常包括一個(gè)支援音訊、數據機與多媒體處理的數位訊號處理器(DSP),一個(gè)加速攝影機相關(guān)運作的影像訊號處理器,以及支援感測器融合、資料通訊與資料儲存的其他專(zhuān)用處理器。
多工處理被多家不同的供應商導入成為PC平臺的特色;因為作業(yè)系統開(kāi)發(fā)商并沒(méi)有提供必備的架構支援,那些供應商被迫在繼承自較簡(jiǎn)易周邊裝置的驅動(dòng)程式模型內運作。其最大的限制在于需要CPU協(xié)調主處理器與各個(gè)協(xié)同處理器本地記憶體之間的資料傳輸與指令。
隨著(zhù)協(xié)同處理器的數量與重要性提升,這種以CPU為中心的解決方案變得很不方便,有太多潛在性能在那些不必要的協(xié)調任務(wù)中被浪費,也會(huì )因為需要在多個(gè)實(shí)體與虛擬位址空間之間轉譯而產(chǎn)生太多錯誤與安全性弱點(diǎn)。
因此──雖然時(shí)間有點(diǎn)遲──相關(guān)解決方案應運而生,而被認為最全面的起點(diǎn)是AMD在2011年推出的融合系統架構(Fusion System Architecture,FSA);FSA演變成今日的異質(zhì)系統架構(Heterogeneous System Architecture,HSA)規格,由HSA基金會(huì )負責維護。HAS基金會(huì )包括7家創(chuàng )始成員(除AMD之外,包括ARM、Imagination、聯(lián)發(fā)科、 Qualcomm、Samsung與TI),還有42家一般會(huì )員,分成數個(gè)小組。

HSA基金會(huì )在2015年公布了1.0版的HSA規格,并于同年12月出版了一本題為《異質(zhì)系統架構──全新的運算平臺基礎架構(Heterogeneous System Architecture -- A New Compute Platform Infrastructure)》的書(shū)籍,詳述了該規格的背景與實(shí)作建議,由美國伊利諾大學(xué)香檳分校(University of Illinois at Urbana-Champaign)的Wen-Mei W.編輯。
HSA最重要的功能(筆者認為),是系統中所有的HSA處理器(代理/agent)采用單一記憶體模型(single memory model)、單一排隊模型(single queuing model)以及單一虛擬指令集;此外針對搶占(preemption)與本文切換(context switching)也有一些標準化。
但基本上不同種類(lèi)的處理器(例如CPU與GPU),會(huì )有程度不等的本文切換延遲,使其不可能延伸單一本文切換模型以適應每一種HSA代理。還有許多附加功能建立在那些基礎上:原子記憶體(atomic memory)運作標準、例外狀況處理(exception handling)、除錯、執行時(shí)期應用程式介面(runtime APIs)等等。
HSA的記憶體模型也值得詳述;該規格將在競爭CPU、系統與作業(yè)系統供應商影響下獨立發(fā)展的記憶體子系統之許多特性標準化,展望未來(lái),那些設計與編程HSA代理的廠(chǎng)商會(huì )需要在虛擬定址(virtual addressing)、連貫性與一致性支援單一組規則,不同于今日相互矛盾、混淆、錯誤誘導的混雜定義。
身為一位花費多年時(shí)間提倡架構現代化的工程師,我贊賞HSA基金會(huì )的進(jìn)展,但我認為仍有進(jìn)一步改善的空間(而且相當充裕);特別是當快閃記憶體被發(fā)明出來(lái),我認為傳統上對于“記憶體”與“儲存”的定義已經(jīng)過(guò)時(shí),但PC產(chǎn)業(yè)仍固執地抵制一些在其他運算應用領(lǐng)域被證實(shí)已經(jīng)成功的想法。
在上述的HSA新書(shū)中也有些未提及的議題,并非只有CPU、GPU與DSP等類(lèi)型的處理器可能在PC中應用,例如FPGA正成為PC與高性能運算都有興趣的方案;但是到目前為止HSA還是著(zhù)重在CPU、GPU與DSP這些類(lèi)型的處理器。
此外系統架構雖定義了系統安全性的限制,但安全性完全未在此書(shū)中提及──至少那個(gè)名詞并沒(méi)有出現在書(shū)籍的目錄中。令人遺憾的現實(shí)是,HAS會(huì )產(chǎn)生像是那些像是在CPU上的病毒那么危險的、寄生在GPU病毒,系統配置者應該被教育如何將這些新的威脅最小化,但此書(shū)并不能提供協(xié)助。
最后作為一位獨立評論者,我必須指出顯而易見(jiàn)的一點(diǎn):英特爾(Intel)不支持HSA (特別聲明,我個(gè)人與英特爾并沒(méi)有業(yè)務(wù)上的合作關(guān)系,也不是HSA基金會(huì )的成員)。英特爾在全球PC市場(chǎng)的占有率高達八成,對于共享虛擬記憶體以及其他一些HSA的元素有他們自己的實(shí)作方法?;诩兇鈱?shí)用主義的理由,這一點(diǎn)可能有助于HSA基金會(huì )解釋其解決方案的差異性與優(yōu)越性所在。
對此我曾詢(xún)問(wèn)過(guò)HSA基金會(huì )主席John Glossner,他表示(在HAS基金會(huì )的官網(wǎng)上也有說(shuō)明),目前市場(chǎng)上大多數對HSA的關(guān)注是來(lái)自于行動(dòng)平臺供應商,雖然也很歡迎英特爾加入,該公司在行動(dòng)裝置市場(chǎng)的能見(jiàn)度并不高,只有一些例如Win 10平板電腦等數量相對很少的利基產(chǎn)品,因此英特爾的缺席并不會(huì )對HSA的廣泛采用造成障礙。
Glossner進(jìn)一步解釋?zhuān)?.0版HSA規格的主要目標是協(xié)助供應商利用自己的IP、“從上到下”在平臺上布置HSA;那些供應商通常對于那類(lèi)議題關(guān)注較少,因為他們掌控設計的所有元素,而且對于以標準為基礎的特殊應用共同處理器興趣更高。而正在開(kāi)發(fā)中的1.1版HSA規格,將有助于來(lái)自不同供應商的IP整合到個(gè)別SoC方案;在這樣的環(huán)境中,安全性、字節序(endianness)等等類(lèi)似的問(wèn)題將需要更進(jìn)一步的關(guān)注。
評論