GPU是強大的并行處理器,CPU是強勁的串行處理器,那么CPU和GPU如果各取所長,聯(lián)合在一起的話,是不是可以發(fā)揮最強大的能力呢?AMD在APU推出后,就在全力發(fā)展CPU和GPU的異構(gòu)計算,HAS聯(lián)盟就是AMD在異構(gòu)計算上最大的殺招。
異構(gòu)計算走上舞臺
AMD在APU發(fā)展?jié)u漸成熟后,除了考慮到CPU和GPU硬件架構(gòu)上的融合外,在軟件層面也開始為APU做出準備。實際上,APU等類似融合產(chǎn)品的軟件才是最關(guān)鍵的因素。因為無論硬件性能怎么強大,都需要使用軟件才能真正發(fā)揮作用,軟件才是類似融合設(shè)備發(fā)展的最大難題。這個市場需要AMD和合作伙伴來給出軟件開發(fā)架構(gòu)、各種API和開發(fā)環(huán)境,并且有持續(xù)不斷的開發(fā)指導,技術(shù)發(fā)展,最終才能讓APU代表的異構(gòu)計算成為人們生活中不可分割的一部分,才能為AMD以及其合作伙伴帶來利潤。
這樣的話說起來很簡單,但是做起來相當困難。目前的APU在硬件上的融合并不深入,軟件使用方面更是CPU和GPU分開。AMD的希望是未來的異構(gòu)計算下的軟件,能做到自然的用戶界面、更大的顯示面積、利用協(xié)同交互、云計算等新興科技帶來完全不同的使用體驗。相比之下,目前的CPU和GPU計算還是獨立的、分開的,沒有統(tǒng)一的軟件環(huán)境和自動調(diào)用CPU、GPU的優(yōu)勢來進行程序處理的能力。
為了達到這個目的,AMD和一些廠商成立了HSA,全稱是Heterogeneous System Architecture,中文為異構(gòu)計算聯(lián)盟。這家聯(lián)盟的創(chuàng)始人包括了AMD、高通、ARM、三星、德州儀器等廠商,發(fā)起者和支持者包括LG、索尼、美滿電子、意法愛立信等業(yè)界翹楚,此外,HAS聯(lián)盟還得到了多家大學和研究機構(gòu)的支持。
高效內(nèi)存利用 未來更美好
HSA架構(gòu)目前主要支持的內(nèi)容包括GPU計算使用C++這樣的大眾化語言,擁有用戶模式調(diào)度、完全一致性的CPU和GPU內(nèi)存、GPU可以通過CPU指針使用頁面內(nèi)存、GPU計算可搶占性以及GPU計算上下文可以切換。尤其是GPU可以使用頁面內(nèi)存、GPU計算可搶占以及GPU上下文切換等,在傳統(tǒng)的GPU中是難以實現(xiàn)的,因為需要涉及到很多判斷和分支。在HSA中,這樣的設(shè)計將成為整個系統(tǒng)最重要的內(nèi)容,最終為CPU和GPU的融合帶來更深入、更智能的一面。
目前的AMD已經(jīng)走完了一些路程,比如在APU上,AMD實現(xiàn)了統(tǒng)一內(nèi)存尋址。統(tǒng)一內(nèi)存尋址的優(yōu)勢在于可以使所有的計算單元訪問相同的數(shù)據(jù),這樣一來CPU和GPU的計算就可以交替運行。當然,AMD的希望在于設(shè)計一種更為智能的計算架構(gòu),不需要人工去指定CPU還是GPU,硬件方面也不用區(qū)分CPU模塊和GPU模塊,任務(wù)會根據(jù)需求自動使用相關(guān)的部件來高效、快速的完成計算,所有的計算任務(wù)都可以和諧的工作在一塊芯片上。這就是HSA終極目的。
不過僅僅如此顯然是不夠的。AMD和HSA聯(lián)盟還需要做大量的工作,比如在驅(qū)動層面的支持以及軟件環(huán)境的支持等。但就現(xiàn)在的情況來看,根據(jù)AMD公布的一些數(shù)據(jù),HSA在部分特定的任務(wù)中,使用APU能夠比單獨使用CPU和單獨使用GPU都表現(xiàn)得更好,特別是性能和功耗上的表現(xiàn)——其實這兩者都來源于合理的利用最恰當?shù)慕M件進行計算。比如將GPU計算更快的任務(wù)交由GPU計算就能獲得更好的性能功耗比以及速度,因此一旦成功,HSA會在效能和功耗表現(xiàn)上擁有比CPU和GPU單獨或者簡單聯(lián)合都好的表現(xiàn),畢竟CPU和GPU采用的是PCI-E總線,而HSA聯(lián)盟目前的主要目標APU以及其他異構(gòu)計算單元都是直接單芯片內(nèi)連接組建,速度更快,支持更簡單。
目前HSA還處于起步階段,支持的軟件也非常稀少,除了一些傳統(tǒng)支持GPU加速的軟件外,HSA聯(lián)盟還沒有提供特別有特色的軟件進行展示和試用。不過從發(fā)展的角度來看,HSA聯(lián)盟無論如何已經(jīng)走完了第一步,在硬件架構(gòu)、軟件框架上已經(jīng)搭好了舞臺,剩下的就需要依靠AMD以及合作廠商的推廣,讓HSA成為業(yè)內(nèi)主流被更多用戶和廠商所接受了。