面向不斷擴展的多元化計算需求,英特爾提出了全新的産品和技術戰略,紮根于六大(dà)技術支柱——制程和封裝,架構,内存和存儲,互連,安全,軟件。英特爾将通過橫跨這六大(dà)技術的全方位計算創新,驅動計算性能的指數級提升。
針對軟件這一(yī)技術支柱,英特爾認爲,對于全新硬件架構的每一(yī)個數量級的性能提升潛力,軟件能帶來兩個數量級的性能提升。對于開(kāi)發者來說,擁有一(yī)套跨平台的通用軟件工(gōng)具,對于獲得性能的指數級擴展至關重要。爲此,英特爾于去(qù)年底推出“oneAPI”項目,以簡化跨CPU、GPU、FPGA、人工(gōng)智能和其它加速器的各種計算引擎的編程開(kāi)發,并将于今年第四季度發布開(kāi)發者測試版本。
日前,英特爾軟件戰略及技術溝通會在北(běi)京召開(kāi),英特爾全面介紹了多元化計算時代的技術戰略、深入解讀軟件的産業意義和戰略布局。
什麽是英特爾oneAPI?
英特爾架構、圖形與軟件部副總裁Bill Savage介紹oneAPI
據英特爾架構、圖形與軟件部副總裁兼計算性能與開(kāi)發者産品部門總經理William(Bill) Savage介紹,oneAPI始于硬件架構,在數據中(zhōng)心裏面,今天的架構并不隻局限于CPU,還包括GPU、FPGA以及專用的AI芯片,這些分(fēn)别對應着标量(Scalar)、矢量(Vector)、矩陣(Matrix)和空間(Spatial)的不同計算架構,我(wǒ)們稱之爲SVMS架構。
簡單來說,英特爾提出的oneAPI是一(yī)種統一(yī)的軟件架構,它能夠跨不同的架構、跨不同的廠商(shāng),包括除英特爾之外(wài)的其他硬件廠商(shāng)。oneAPI可以從軟件層面來簡化和統一(yī)标量、矢量、矩陣和空間的不同硬件架構。
英特爾oneAPI包含兩部分(fēn),第一(yī)部分(fēn)是跨架構的編程語言,它是全新的編程語言,很多不同的架構以及廠商(shāng)都可以使用;第二部分(fēn)是能夠滿足不同領域需求的跨架構庫的集合。無論是這種全新的編程語言,還是架構庫,重點都放(fàng)在性能上,因爲在數據中(zhōng)心裏面提供全面的性能是重中(zhōng)之重。
William(Bill) Savage表示:“oneAPI既作爲一(yī)種規範同時又(yòu)是英特爾的一(yī)種産品,它可以簡化并且統一(yī)跨不同架構以及不同廠商(shāng)之間的編程,它是一(yī)個鼓勵社區和行業支持的一(yī)種開(kāi)放(fàng)、标準的解決方案,爲大(dà)家提供除了英偉達CUDA之外(wài)的另一(yī)種選項。”
跨架構的編程語言——Data Parallel C++
英特爾架構、圖形與軟件部副總裁兼編譯器與語言部門總經理Alice Chan介紹DPC++
如今,在數據中(zhōng)心擁有大(dà)量的多元化硬件架構。如果你希望在這樣一(yī)個多元化的不同架構中(zhōng)進行編程,必然是需要很多種不同工(gōng)具以及不同語言。這就意味着在軟件開(kāi)發過程中(zhōng)你需要多支團隊,他們各自要去(qù)學習很多不同專業的技能,這顯然不是一(yī)種最高效的軟件開(kāi)發方式。所以英特爾希望改變這種現狀,并不僅僅是爲了英特爾自己的硬件去(qù)改變,而是爲全行業去(qù)改變。
英特爾架構、圖形與軟件部副總裁兼編譯器與語言部門總經理Alice Chan表示:“我(wǒ)們這個全新編程語言的目的就是要實現跨架構,要實現高性能,同時保證是開(kāi)放(fàng)的,針對所有軟件開(kāi)發者開(kāi)放(fàng),針對所有的硬件廠商(shāng)開(kāi)放(fàng)。”
多元化架構需要全新的編程語言,現有的C++、MATLAB等可移植編程語言和CUDA、OpenCL等數據并行編程語言,都無法滿足需求。英特爾正在與行業攜手開(kāi)發一(yī)種全新的語言,支持實現橫跨SVMS架構的數據并行編程。
DPC++語言能夠跨SVMS架構爲英特爾和行業提供毫不妥協的高性能和生(shēng)産效率,是英特爾現在正在開(kāi)發的一(yī)種新的語言,它是開(kāi)放(fàng)的、基于标準的、高性能的,能夠跨不同的硬件架構提供高性能。
高性能庫推動人工(gōng)智能和數據分(fēn)析的發展
英特爾架構、圖形與軟件部首席工(gōng)程師Eric Lin介紹統一(yī)API的優勢
在AI和數據分(fēn)析上英特爾的願景是提供最佳的計算庫,并且針對這些計算庫,把英特爾的硬件變成一(yī)個對開(kāi)發者非常容易的抽象,使得他們所有的工(gōng)作能夠重複利用、更簡化。英特爾也會提供工(gōng)具、方法,使部署者真正地從oneAPI中(zhōng)獲益。
據英特爾架構、圖形與軟件部首席工(gōng)程師Eric Lin介紹,oneAPI集成了業内頂級的計算庫,包括最快速、使用最廣泛的數學函數庫MKL、使用經典機器學習算法的英特爾數據分(fēn)析加速庫DAAL,以及面向深度神經網絡的英特爾數學核心函數庫MKL-DNN等,充分(fēn)了解底層硬件如CPU和加速器的所有細節,并爲硬件提供最佳性能。
oneAPI面向數據科學家和應用開(kāi)發者提供跨SVMS架構的統一(yī)軟件抽象,讓所有開(kāi)發者可随時獲取高性能。
英特爾的策略就是把庫集成到框架中(zhōng),框架再提供給數百萬數據科學家、算法工(gōng)程師,他們使用它開(kāi)發出真正的應用。例如,一(yī)個庫服務數萬個框架開(kāi)發者,服務數百萬甚至更多的數據科學家,因此把從硬件到應用這條路打通。
Eric Lin表示:“OpenVINO就展示了oneAPI願景的現實。作爲爲客戶解決問題的優化推理引擎,OpenVINO補充了深度學習框架,支持應用程序開(kāi)發者以統一(yī)接口跨SVMS架構進行開(kāi)發。”
據悉,oneAPI已經和很多廠商(shāng)都開(kāi)始合作。百度方面,在Paddle Paddle的深度學習訓練和推理工(gōng)作負載中(zhōng)百度非常依賴英特爾至強處理器用于深度學習;Facebook方面,Facebook絕大(dà)部分(fēn)的AI業務使用了英特爾優化的PyTorch來支撐他們每天的業務,這将幫助Facebook加速每天200萬億次預測和60億次翻譯;Taboola也使用英特爾至強oneAPI,經過優化之後,達到了2.5倍的提升。
總結:英特爾oneAPI支持直接編程和API編程,并将提供統一(yī)的語言和庫,可以在包括CPU、GPU、FPGA和AI加速器等不同硬件上,提供完整的本地代碼性能。oneAPI和高級算法研究與開(kāi)發上的投入,在英特爾“讓每一(yī)個晶體(tǐ)管都派上用場”的目标中(zhōng)發揮了深遠影響。英特爾計劃将在2019年第四季度發布oneAPI開(kāi)發者測試版本,并披露更多項目相關細節,讓我(wǒ)們敬請期待。