回顧過去35到40年間計算的發(fā)展歷程,計算力的增長速率呈指數(shù)級上升,從萬物數(shù)字化、萬物互聯(lián)、萬物移動化到萬物云化,當前進入萬物智能化。
在PC時代,互聯(lián)網(wǎng)用戶增長了十億人。硬件和軟件結(jié)合的典型例子就是PC上X86架構(gòu)和Windows系統(tǒng)的結(jié)合。
進入移動化時代,從10億的互聯(lián)網(wǎng)用戶增長到100億的設(shè)備,呈現(xiàn)10倍的增長。硬件和軟件的結(jié)合也發(fā)生了變化,變成了ARM架構(gòu)和iOS及Android操作系統(tǒng),同時Linux系統(tǒng)和X86平臺也占據(jù)一部分市場。從10億到100億,實現(xiàn)的是指數(shù)級的增長。
進入以數(shù)據(jù)為中心的時代,異構(gòu)計算也隨之出現(xiàn)。
以往CPU、GPU、FPGA等,均可以獨當一面。而當下,傳統(tǒng)的通用架構(gòu)已遠不能滿足需求。CPU、GPU、FPGA甚至AI加速器等多種架構(gòu)之間組合,方能招架得住處理數(shù)據(jù)密集型、復(fù)雜的工作負載。未來,這種異構(gòu)計算將成為常態(tài)。
一、應(yīng)對多架構(gòu)挑戰(zhàn) oneAPI應(yīng)運而生
當前,不管是CPU、GPU、FPGA等哪一個硬件平臺往往都需要開發(fā)者維護獨立的代碼庫,這些代碼庫需要使用不同的語言、庫和軟件工具進行編程。這是一項極其復(fù)雜和耗費時間的工作,大大降低開發(fā)速度、抑制創(chuàng)新。
具體而言,異構(gòu)計算使得一個用戶可能在同一個數(shù)據(jù)中心里既需要CPU里做虛擬機,又需要FPGA來做各種解壓縮或者加速器,還需要GPU來做深度學(xué)習(xí)或者人工智能。這就需要在數(shù)據(jù)中心里安各種各樣的硬件,跑各種各樣的軟件。如果還是各自為政的話,對于用戶來說,就算應(yīng)用將來要擴容、硬件平臺將來要升級,都是成本很高的一件事。甚至此前做的都全白做了。
為了解決這一難題,oneAPI應(yīng)運而生。oneAPI是一個以開發(fā)者為中心的平臺,簡化多架構(gòu)編程的一個統(tǒng)一編程模型,開發(fā)者可以自由選擇架構(gòu),大大降低了使用不同的代碼庫、編程語言、編程工具和工作流程所帶來的復(fù)雜性。oneAPI采用統(tǒng)一、簡化的語言和函數(shù)庫,用于表達并行化,且基于行業(yè)標準和開放式規(guī)范,能夠與現(xiàn)有 HPC 編程模型互操作。
oneAPI包括了一項基于開放規(guī)范的行業(yè)計劃和一款beta產(chǎn)品。該規(guī)范包括一種編程語言、強大的API函數(shù)庫以及底層硬件接口。oneAPI beta產(chǎn)品為開發(fā)者提供了全套的開發(fā)工具,包括編譯器、編程庫、分析器等,并把這些工具封裝為特定領(lǐng)域的工具包。初期oneAPI beta版主要面向英特爾?至強?可擴展處理器、帶集成顯卡的英特爾?酷睿?處理器,以及英特爾? FPGA,未來還將支持更多硬件。
oneAPI將實現(xiàn)與現(xiàn)有行業(yè)標準的互操作性。oneAPI開放式規(guī)范包括一種跨架構(gòu)的編程語言Data Parallel C++ (DPC++)、一套用于API編程的函數(shù)庫以及底層硬件接口(oneAPI Level Zero)。有了這些組件,英特爾和其他企業(yè)就能創(chuàng)建他們自己的oneAPI實現(xiàn)來支持自己的產(chǎn)品,或基于oneAPI進行新產(chǎn)品開發(fā)。
oneAPI規(guī)范是為支持來自多個廠商的各種CPU和加速器而設(shè)計的。oneAPI beta版目前支持英特爾CPU(英特爾至強?、酷睿?、凌動)、英特爾Arria FPGA以及作為未來獨立數(shù)據(jù)中心GPU代理開發(fā)平臺的第九代/英特爾核芯顯卡。oneAPI日后將支持更多英特爾加速器架構(gòu)。
DPC++是基于大眾熟悉的C和C++語言,專門為oneAPI設(shè)計的主要編程語言。它融合了來自Kronos Group的SYCL*,從而可以支持跨CPU和加速器上的數(shù)據(jù)并行和異構(gòu)編程,目的是為了簡化編程以及提高代碼在不同硬件上的可重用性,同時能根據(jù)特定的加速器進行調(diào)優(yōu)。
DPC++語言增強將會通過一個開發(fā)者社區(qū)項目來進行擴展,以簡化數(shù)據(jù)并行編程。該項目向公眾開放,并將通過開發(fā)者們的共同努力不斷發(fā)展。
目前,很多庫和組件已經(jīng)開源或即將開源。英特爾一位工程師指出:“開發(fā)者有想法可以去做擴展,這對開發(fā)者來講是沒有太大阻礙的。第二個層面,我們做這個目的是因為后面計算會比較復(fù)雜,因為你可能有AI的應(yīng)用,有后面更多的跨架構(gòu)/跨平臺的應(yīng)用,還有各種框架上的支持,這些都是依賴于開發(fā)者對oneAPI的支持或者之后的發(fā)展,應(yīng)該說本身它是一個發(fā)展的平臺,它不是固定不變的東西。英特爾開了一個很重要的頭,也投了大量的人力和物力,后面要做的話應(yīng)該是開發(fā)者共同和我們一起把這個東西往前推的過程?!?/p>
用一個形象的比方,不同架構(gòu)的選擇如同是“自助餐”,有各種各樣的菜,可以自由組合,想吃沙拉就吃沙拉,想吃紅燒肉也可以。此前一些企業(yè)提供的方案是封閉性的,有的公司只供紅燒肉,有的公司專門做沙拉。而有了oneAPI的支持,企業(yè)客戶才能夠更靈活的選擇各種架構(gòu)進行任意組合,oneAPI是通過軟件來幫助實現(xiàn)硬件靈活組合的愿景。
二、OneAPI是英特爾軟硬結(jié)合軟件為先戰(zhàn)略中的重要一步
現(xiàn)在數(shù)據(jù)量極其龐大,已經(jīng)遠遠超出了在一臺計算機上就可以完全處理的承載和能力,必須要清楚如何應(yīng)對這些無法放進一臺計算機的大規(guī)模數(shù)據(jù)的處理方式,這是巨大的機會。接下來面臨的挑戰(zhàn)是,如何將性能提升十倍、百倍,而并不是簡單的提升10%的問題。
英特爾首席架構(gòu)師Raja Koduri認為,摩爾定律將持續(xù)給我們帶來非常好的性能提升;而通過軟件和硬件的結(jié)合,可以讓摩爾定律的提升變成十倍。因為摩爾定律會帶來更多的晶體管,而軟件可以將越來越多的晶體管的極致性能釋放出來。將軟件和硬件結(jié)合就是英特爾的戰(zhàn)略重點,這也是未來面臨的非常巨大的機會。
英特爾認為,對于全新硬件架構(gòu)的每一個數(shù)量級的性能提升潛力,軟件能帶來兩個數(shù)量級的性能提升。英特爾首席架構(gòu)師Raja Koduri表示: “通過軟件優(yōu)化,可以給Java帶來6倍的性能提升,給持久性內(nèi)存帶來8倍的性能升級,在AI領(lǐng)域帶來28倍的性能提升,所以它的性能提升空間是非常大的,而且這僅僅是在同一款硬件上通過軟件就可以做到的。”為此,2018年12月英特爾“架構(gòu)日”活動上提出六大技術(shù)支柱戰(zhàn)略,即:制程和封裝、架構(gòu)、內(nèi)存和存儲、互連、安全、軟件。
“軟件是英特爾的一項重要戰(zhàn)略資產(chǎn),英特爾將通過軟件業(yè)務(wù)來充分釋放公司的整體增長潛力。英特爾希望通過在整個開源生態(tài)系統(tǒng)中的協(xié)作,來推動面向以數(shù)據(jù)為中心時代的產(chǎn)品和服務(wù)創(chuàng)新。” 英特爾公司副總裁兼系統(tǒng)軟件產(chǎn)品部門總經(jīng)理蘇義德曾強調(diào)。
英特爾擁有一個1200萬活躍開發(fā)者的生態(tài)系統(tǒng),橫跨PC、網(wǎng)絡(luò)和數(shù)據(jù)中心。不管客戶有高性能的要求還是有低功耗要求,或者是對成本比較敏感,英特爾都有完整的產(chǎn)品線可以對應(yīng)用戶的不同需求。英特爾希望可以實現(xiàn)一個非常簡化的流程,通過一個統(tǒng)一的軟件棧,一個統(tǒng)一的API就可以適應(yīng)客戶所有的從性能、功耗到成本上的優(yōu)化需求。
在軟硬結(jié)合軟件為先的戰(zhàn)略中,英特爾在“架構(gòu)日”活動上同時宣布推出“oneAPI”項目,面向多元化計算時代。該項目包括一個全面、統(tǒng)一的開發(fā)工具組合,以將軟件匹配到能最大程度加速軟件代碼的硬件上。
“絕大多數(shù)AI算法的演進和創(chuàng)新都是在更偏上層來完成的,我們希望在底層就做好助力和驅(qū)動。同時,我們也會不斷優(yōu)化oneAPI。這樣,未來任何編程人員不管是他們想將硬件性能提升10%、20%甚至50%,都可以在這個框架上輕松實現(xiàn),而不需要再自己編寫語言?!盧aja Koduri表示。
2019年11月正式發(fā)布了oneAPI公開發(fā)行版本。oneAPI包括了一項基于開放規(guī)范的行業(yè)計劃和一款beta產(chǎn)品。
英特爾指出,oneAPI不是一個全新的東西,它是之前幾十年的積累上面做了一個擴展?;诂F(xiàn)在工作負載越來越復(fù)雜,做這樣的擴展是非常合情合理的一件事情。從現(xiàn)在整體來看,無論是開發(fā)效率還是實際的產(chǎn)品運營效率,都可以從中受益。
三、oneAPI重在培育生態(tài)系統(tǒng) 與伙伴共同擁抱數(shù)據(jù)時代
在設(shè)計oneAPI之初,英特爾就考慮到要發(fā)揮整個Xe架構(gòu)最強的全面性能,不管是高性能還是低功耗。除此之外,oneAPI的設(shè)計也確保要符合英特爾所有其他不同計算和應(yīng)用的需求。不管是CPU、FPGA還是加速器,oneAPI的設(shè)計都可以和它們進行非常完整的配合。
oneAPI,是英特爾以軟件來最大程度釋放硬件性能,從軟件層面來簡化和統(tǒng)一跨SVMS架構(gòu)的創(chuàng)新。Raja Koduri指出,oneAPI是一個非常底層的抽象框架,主要就是面對以后不同計算元素的集成,希望能夠從底層更好地完成特征抽象和集成。
SVMS架構(gòu)是由標量(Scalar)、矢量(Vector)、矩陣(Matrix)、空間(Spatial)四種架構(gòu)組成的,分別對應(yīng)著CPU、GPU、FPGA和加速器,它們的組合方式是多種多樣的。通過這個架構(gòu)的分類方式可以看到,CPU是最通用的一種架構(gòu),而GPU會比CPU更加高效和專用,而FPGA和加速器的能效和靈活性更高。
“英特爾的策略就是要囊括CPU、GPU、FPGA、加速器所有的架構(gòu)?!盧aja Koduri指出,CPU依舊是目前最重要的架構(gòu),英特爾將不斷提高每個CPU的性能,繼續(xù)保持它作為最強的計算架構(gòu)的位置。GPU戰(zhàn)略主要是要提高能效,更好幫助英特爾提高整體的生產(chǎn)力和效率。在FPGA領(lǐng)域,英特爾現(xiàn)在已經(jīng)做的非常成功了,英特爾推出了很多重要的FPGA產(chǎn)品。另外,加速器也是英特爾非常重要的一個發(fā)力點。
在oneAPI的生態(tài)構(gòu)建方面,英特爾主要從三個層面來推進:一是英特爾有著強大的開發(fā)者社區(qū),以及全球范圍內(nèi)非常廣泛的社區(qū)合作伙伴。英特爾將從自身非常擅長的開源社區(qū)入手。第二,在很大層面上與高校展開配合協(xié)作,結(jié)合他們的技術(shù)以及案例來打造一個完整的社區(qū)。第三,與全球開發(fā)者們進行更加完整的合作,開發(fā)者不僅僅是指個人開發(fā)者,也包括大型的企業(yè)機構(gòu),例如騰訊、阿里等,英特爾將會與每個人、每個企業(yè)都緊密地配合,來支持oneAPI的生態(tài)。
截至11月17日,支持oneAPI概念的業(yè)內(nèi)領(lǐng)先企業(yè)和研究機構(gòu)已經(jīng)超過30家,包括高性能計算領(lǐng)域的領(lǐng)導(dǎo)者、人工智能領(lǐng)域的創(chuàng)新者、硬件廠商/OEM、獨立軟件開發(fā)商、云服務(wù)商、高校等等。
2019年5G的正式商用加速了物聯(lián)網(wǎng)的深入應(yīng)用,這意味著會有更多的物聯(lián)網(wǎng)節(jié)點智能終端產(chǎn)品落地應(yīng)用。據(jù)統(tǒng)計數(shù)據(jù)顯示,2020年全球物聯(lián)網(wǎng)設(shè)備基數(shù)將達307億臺,2025年將達到754億臺。而這些將會產(chǎn)生海量的數(shù)據(jù),這些數(shù)據(jù)的存儲、安全、運算,則需要依賴于數(shù)據(jù)中心、云服務(wù)等軟件業(yè)務(wù)。
英特爾愿發(fā)揮在軟件業(yè)務(wù)方面的強優(yōu)勢,以生態(tài)系統(tǒng)培養(yǎng)為主,推動整個業(yè)界往前邁進。并與合作伙伴一起面對這一巨大的市場應(yīng)用需求,一同抓住這塊蛋糕。
(免責(zé)聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準確性及可靠性,但不保證有關(guān)資料的準確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負責(zé)。本網(wǎng)站對有關(guān)資料所引致的錯誤、不確或遺漏,概不負任何法律責(zé)任。
任何單位或個人認為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識產(chǎn)權(quán)或存在不實內(nèi)容時,應(yīng)及時向本網(wǎng)站提出書面權(quán)利通知或不實情況說明,并提供身份證明、權(quán)屬證明及詳細侵權(quán)或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關(guān)文章源頭核實,溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。 )