軟件優化可將CPU性能提升28倍 Intel詳解OneAPI戰略

在日前的SC 19大會上,Intel發布了全新的Xe架構顯卡及多款10nm產品,這是Intel應對未來HPC高性能計算的關鍵。與此同時,Intel還正式宣布了OneAPI統一編程模型,它可能不被DIY玩家熟悉,但這很有可能會改變未來十年各種XPU芯片的發展。

有很多人不知道,Intel不僅是全球最大的CPU芯片公司,其軟件開發能力也非常強大,軟件工程師就有超過1.5萬人,還是Linux Kernel的最大貢獻者,每年修改的代碼超過50萬行,為100多個操作系統做優化。

在CPU及其他芯片開發上,Intel會越來越重視軟件優化的能力,提出六大技術支柱的高級副總Raja Koduri之前表態稱「全新的硬件架構每一個數量級的性能提升,軟件就能帶來兩個數量級的性能提升。「

根據Raja Koudri所說,Intel通過軟件優化,可以給Java帶來6倍的性能提升,給持久性記憶體帶來8倍的性能升級,在AI領域帶來28倍的性能提升,並且,這是在相同的硬件上通過軟件實現的提升。

在未來的芯片發展中,軟件優化的作用已經無需多言,所以OneAPI戰略對Intel來說也非常重要,因為它統一了各個平台的編程規范,簡化了開發難度,有利於營造更好的開發生態。

基於此,Intel知IN官微發布了一篇名為《英特爾oneAPI:定義未來十年應用程序開發的統一、簡化的編程模型》的長文,詳細介紹了OneAPI的作用及內容,想要了解的玩家可以看看。

軟件優化可將CPU性能提升28倍 Intel詳解OneAPI戰略

以下是全文詳細內容:

軟件優化可將CPU性能提升28倍 Intel詳解OneAPI戰略

oneAPI是什麼?

oneAPI是一個統一的、簡化的編程模型,旨在簡化跨多架構的開發過程(如CPU、GPU、FPGA、加速器)。oneAPI包含兩個組成部分:一項產業計劃和一款英特爾®beta產品,都是全新探索的第一步。

oneAPI計劃的跨架構開發模型基於行業標準和開放規范,支持廣泛的行業生態系統採納該技術來推動應用開發領域的新演進。

英特爾®oneAPI beta產品是英特爾基於oneAPI的實現,它包括了oneAPI標準組件如直接編程工具(Data Parallel C++)、含有一系列性能庫的基於API的編程工具,以及先進的分析、調試工具等組件。開發人員從現在開始就可以在英特爾DevCloud for oneAPI上對基於多種英特爾架構(包括英特爾至強®可擴展處理器、帶集成顯卡的英特爾酷睿處理器、英特爾FPGA如英特爾Arria®、Stratix®等)的代碼和應用進行測試。這一進展源自於英特爾數百萬小時軟件工程開發的努力,旨在為全球開發人員提供一座從現有代碼和技能過渡到即將來臨的xPU時代的橋梁。

軟件優化可將CPU性能提升28倍 Intel詳解OneAPI戰略

oneAPI為何重要?

oneAPI是英特爾「軟件先行」戰略的重要體現,英特爾相信這一戰略將定義和引領一個人工智能日益融合、異構及多架構的編程時代。

跨架構(CPU、GPU、FPGA及其他加速器)開發能力對於處理數據密集型工作負載極為重要,因為這種工作負載需要多種架構,這也將成為未來的常態。在今天,每一個硬件平台往往需要開發者維護獨立的代碼庫,這些代碼庫需要使用不同的語言、庫和軟件工具進行編程。這是一項極其復雜和耗費時間的工作,會大大降低開發速度、抑制創新。

為了解決這一難題,oneAPI提供一個通用、開放的編程體驗,讓開發者可以自由選擇架構,無需在性能上作出妥協,也大大降低了使用不同的代碼庫、編程語言、編程工具和工作流程所帶來的復雜性。相對於今天的基於單個廠商的封閉式編程環境,oneAPI為開發者提供了極富競爭力、也更先進的可替代選擇,幫助他們在保留現有軟件投資的基礎上,搭建一座無縫連接的橋梁,從而為未來的多架構世界創造更多豐富的應用程序。

為什麼英特爾能夠應對這項挑戰?

英特爾已經深入開發者生態領域超過20年。英特爾擁有15000多名軟件工程師和10000項與客戶緊密合作的軟件部署,是Linux kernel最大的貢獻者,每年修改的代碼超過50萬行,為100多個操作系統進行過優化,並且擁有超過兩千萬活躍開發者的生態,而這些只是英特爾龐大的軟件實力的一部分。

英特爾跨基礎架構、網絡、操作系統的開發經驗,開發工具和SDK以及其所參與並影響的標準制定組織的數量在業界是無與倫比的。憑借深耕行業多年的積累和英特爾軟件工程團隊數百萬個小時的努力,英特爾正通過創建一個統一的編程模型,推動開發普及化,簡化困難,為開發者創造一個更具移植性、更高效且性能更高的編程環境,來幫助開發者應對未來的挑戰。

為什麼需要一個開放式規范?

數十年以來,英特爾與包括ISO C++/Fortran Groups、OpenMP* ARB、MPI Forum、The Khronos Group在內的多個標準制定組織以及行業/學術組織攜手,希望通過開放協作的方式尋求一種可實現互操作性與互換性的產品規范,而oneAPI項目就是這一行動的延續。oneAPI將實現與現有行業標準的互操作性。

最新oneAPI規范可在oneAPI計劃官網oneapi.com查閱

oneAPI開放式規范包括哪些內容?

這一開放式規范包括一種跨架構的編程語言Data Parallel C++(DPC++)、一套用於API編程的函數庫以及底層硬件接口(oneAPI Level Zero)。有了這些組件,英特爾和其它企業就能創建他們自己的oneAPI實現來支持他們自己的產品,或基於oneAPI進行新產品開發。

Data Parallel C++是什麼?

DPC++是基於大眾熟悉的C和C++語言,專門為oneAPI設計的主要編程語言。它融合了來自Kronos Group的SYCL*,從而可以支持跨CPU和加速器上的數據並行和異構編程,目的是為了簡化編程以及提高代碼在不同硬件上的可重用性,同時能根據特定的加速器進行調優。

DPC++語言增強將會通過一個開發者社區項目來進行擴展,以簡化數據並行編程。該項目向公眾開放,並將通過開發者們的共同努力不斷發展。

oneAPI規范內容將會開源嗎?

很多庫和組件已經開源或即將開源。

請訪問oneapi.com查看詳細開源項

哪些公司將支持或參與oneAPI計劃?

截至11月17日,支持oneAPI概念的業內領先企業和研究機構已經超過30家,包括高性能計算領域的領導者、人工智能領域的創新者、硬件廠商/OEM、獨立軟件開發商、雲服務商、高校等等。其中很多也積極參與了oneAPI beta版工具包的測試並提供反饋意見。

軟件優化可將CPU性能提升28倍 Intel詳解OneAPI戰略

這項計劃剛剛啟動,英特爾預期未來幾年將會有更多參與方加入該計劃。企業在創建自己的oneAPI實現並完成自我認證後即可以使用全新oneAPI計劃品牌和標識。

不同的oneAPI Beta版工具包都包含了什麼?

英特爾 oneAPI 基礎工具包(Beta版)包含了一系列核心工具和庫,為構建和部署跨架構的高性能以數據為中心的應用而開發。它具體包含了oneAPI開放式規范技術(DPC++語言、特定領域的庫)和英特爾® Python*分發包來提供跨相關架構的即時加速,以及能增強分析、協助設計和調試等組件。

除英特爾oneAPI基礎工具包外,英特爾還提供其他針對高性能計算、人工智能等專門工作負載的工具包,包括:

英特爾oneAPI高性能計算工具包(Beta版):幫助快速交付可擴展的C++、Fortran和OpenMP應用程序

英特爾oneAPI深度學習框架開發者工具包(Beta版):用於建立深度學習框架或對現有深度學習框架實現定製化

英特爾oneAPI渲染工具包(Beta版):用於開發高性能、高精度的可視化應用程序(包括科學可視化)

英特爾AI分析工具包(Beta版):由oneAPI提供技術支持,適用於人工智能開發者和數據科學家,以更好地利用機器學習和深度學習模型來構建應用。

此外還有兩種oneAPI補充工具包:為系統工程師設計的英特爾系統Bring-Up 工具包以及面向深度學習推理和計算機視覺的生產場景的英特爾發行版 OpenVINO 工具開發包。

更多詳情請訪問:software.intel.com/oneapi

oneAPI支持哪些處理器和加速器?

oneAPI規范是為支持來自多個廠商的各種CPU和加速器而設計的。oneAPI Beta版目前支持英特爾CPU(英特爾至強®、酷睿、凌動)、英特爾Arria FPGA以及作為未來獨立數據中心GPU代理開發平台的第九代/英特爾核芯顯卡。oneAPI日後將支持更多英特爾加速器架構。

其它廠商的硬件與oneAPI兼容嗎?

oneAPI規范的DPC++語言和庫等都向公眾開放使用,我們也鼓勵其它硬件廠商使用。其它硬件廠商可以創建自己的oneAPI實現並基於此對特定硬件進行優化。

開發者可以通過哪些途徑獲取更多信息?

關於oneAPI計劃的更多信息可通過訪問oneAPI.com獲取。開發者可在英特爾開發人員專區(網址:software.intel.com/oneapi)下載英特爾 oneAPI 測試版工具包供本地使用,也可以通過英特爾 DevCloud for oneAPI平台快速入門獲得對於oneAPI工具包的訪問,並使用它對多個以數據為中心的架構下的代碼和工作負載進行測試。該方式無需安裝和設置並節省時間,且在無需負擔開發平台成本的情況下靈活嘗試不同的硬件。​​​​

  • 文章糾錯

作者:憲瑞
來源:快科技