各式各樣的加速器在當下的計算架構中越來越普遍,HPC、數據中心等高端應用開始追求更高的峰值性能,用到了專業GPU、AI加速器,而手機、嵌入式系統開始追求更高的能效,也在其SoC、MCU中加入一定的嵌入式加速硬件。但與此同時,這樣復雜的多廠商、多架構和多硬件生態,為編程帶來了巨大的難題。但CUDA作為只面向英偉達GPU的封閉軟件生態,其熱度卻水漲船高。
在軟件開發中,一個開放的標準層就是開發者產品方案的接口規范,同樣的,處理器開發商們可以使用基于開放標準層的底層軟件驅動創造解決方案。如此一來軟件開發者們無需捆綁在特定的硬件方案上,硬件開發者的硬件不僅可以兼顧自己維護的軟件,還能支持到更多的軟件開發人員。而且在普及之后,開發人員的技能更加具有普適性,他們可以方便地使用自己熟悉的開發工具。
對使用開放標準的軟硬件公司來說,此舉可以加快產品上市時間,減少長期維護工作,而且在軟件方案廠商日益劇增的當下,業界已經普遍接受了開放標準,就像RISC-V一樣,英特爾、AMD甚至是英偉達也都對開放標準的定義做出了貢獻,對于一些初創企業來說就更是如此了。
SYCL出世
從市場反饋來看,開發者的需求很明顯了,他們想要一個標準的編程模型,擁有標準運算庫、對Pytorch、Tensorflow等AI框架的支持、性能分析工具,以及對多個廠商不同硬件架構的支持,而這些需求匯聚在一起,使得開放標準聯盟Khronos Group聯合旗下成員打造出了SYCL這一編程語言。
SYCL作為跨越CPU、GPU、FPGA和AI加速器等多種架構的一致性編程語言,每個架構能單獨或整合編程。SYCL編程語言與其API擴展能用于不同的開發用例,比如負載加速或異構計算應用,將現有的C、C++或其他加速器語言代碼轉換成SYCL代碼。
英特爾的SYCL之路
英特爾對于SYCL的重視可以說顯而易見了,自從宣布轉向XPU+oneAPI的路線之后,英特爾就已經與SYCL深度綁定了。不僅微軟、谷歌等巨頭宣布支持oneAPI,英特爾也和中科院計算所在內的大型研究所、國家實驗室和大學合作成立了oneAPI卓越中心,借助他們的oneAPI開源代碼,進一步擴展oneAPI產品與規范。
oneAPI的核心則是其編程語言DPC++,英特爾的DPC++可以說是SYCL的超集,不僅包含了SYCL標準,還包含一些功能擴展,比如統一共享內存等,不過目前其中不少擴展也已經并入了SYCL新版規范中。
不過SYCL遠不僅是為了方便英特爾建設其跨架構的軟件生態,而是為了打破CUDA的統治,打造一個更加開放的軟硬件生態,這點從英特爾在oneAPI的開發動向就能看出。
此前英特爾對于CUDA并沒有任何動作,反倒是其競爭對手AMD推出了HIP,幫助開發者將CUDA代碼移植至AMD平臺上,畢竟AMD還得發展GPU生態。但隨著英特爾的硬件路線已經不單單是CPU,而是CPU、GPU、FPGA、IPU和AI加速器的多硬件異構生態,這時候打造一個CUDA之外的軟件生態是提升其產品競爭力的必經之路了。
為了更好實現對CUDA代碼的移植,英特爾推出了DPC++兼容性工具(DPCT),目前版本的DPCT已經可以將90%到95%的CUDA代碼轉換成SYCL。不過這只是一個理想范圍,具體數值還是取決于代碼對應的工作負載。對于簡單的CUDA程序來說,完成DPC++的移植只需要對CUDA源文件運行這一轉換工具即可,相對復雜的CUDA程序還是需要一定的手動編程優化。
今年6月,英特爾公布消息,決定收購Codeplay公司。要說對SYCL的研究,除了英特爾以外,最深入的當屬Codeplay了,畢竟就連SYCL工作組的主席也是來自Codeplay的杰出工程師MichaelWong。Codeplay不僅提供了多種處理器上SYCL的支持,也支持將CUDA代碼移植為SYCL,同時保證SYCL代碼在英偉達GPU上的繼續運行,還能調用一些CUDA庫。
Codeplay的方案支持覆蓋英特爾、AMD、英偉達的處理器,而且他們也開始了對汽車ADAS(瑞薩R-Car)、邊緣計算設備(ImaginationPowerVR)與RISC-V處理器(晶心科技NX27V)的支持開發工作。后三者恰好是SYCL當前未曾開拓的市場,但卻是英特爾正在發力的三大市場,加上Codeplay本身在HPC、AI上的軟件開發實力,如此看來,英特爾收購Codeplay完全符合其戰略目標。
結語
盡管SYCL的構想是好的,其發展路線也是傾向于開發者,但這并不代表著就一定能取代CUDA的位置,畢竟SYCL其實也才誕生沒多久,與CUDA、OpenCL或OpenMP相比生態發展還沒有成熟。再者就是統一各種硬件的編程并沒有那么簡單,正如英偉達CEO黃仁勛曾經提出的質疑:時間會揭曉一個編程方法是否能兼容七種不同的處理器,至少歷史上從未出現過。
?
提及各大編程語言的論文數量/ 谷歌學術
提及各大編程語言的論文數量/ 谷歌學術
在軟件開發中,一個開放的標準層就是開發者產品方案的接口規范,同樣的,處理器開發商們可以使用基于開放標準層的底層軟件驅動創造解決方案。如此一來軟件開發者們無需捆綁在特定的硬件方案上,硬件開發者的硬件不僅可以兼顧自己維護的軟件,還能支持到更多的軟件開發人員。而且在普及之后,開發人員的技能更加具有普適性,他們可以方便地使用自己熟悉的開發工具。
對使用開放標準的軟硬件公司來說,此舉可以加快產品上市時間,減少長期維護工作,而且在軟件方案廠商日益劇增的當下,業界已經普遍接受了開放標準,就像RISC-V一樣,英特爾、AMD甚至是英偉達也都對開放標準的定義做出了貢獻,對于一些初創企業來說就更是如此了。
SYCL出世
從市場反饋來看,開發者的需求很明顯了,他們想要一個標準的編程模型,擁有標準運算庫、對Pytorch、Tensorflow等AI框架的支持、性能分析工具,以及對多個廠商不同硬件架構的支持,而這些需求匯聚在一起,使得開放標準聯盟Khronos Group聯合旗下成員打造出了SYCL這一編程語言。
SYCL作為跨越CPU、GPU、FPGA和AI加速器等多種架構的一致性編程語言,每個架構能單獨或整合編程。SYCL編程語言與其API擴展能用于不同的開發用例,比如負載加速或異構計算應用,將現有的C、C++或其他加速器語言代碼轉換成SYCL代碼。
?
SYCL的支持情況/ Khronos Group
在不同廠商的支持下,SYCL的實施方式有多種,他們增加了對OpenCL以外不同加速API后端的支持,比如Codeplay的ComputeCpp、英特爾的DPC++、AMD的hipSYCL以及Xilinx的triSYCL等。SYCL的支持情況/ Khronos Group
英特爾的SYCL之路
英特爾對于SYCL的重視可以說顯而易見了,自從宣布轉向XPU+oneAPI的路線之后,英特爾就已經與SYCL深度綁定了。不僅微軟、谷歌等巨頭宣布支持oneAPI,英特爾也和中科院計算所在內的大型研究所、國家實驗室和大學合作成立了oneAPI卓越中心,借助他們的oneAPI開源代碼,進一步擴展oneAPI產品與規范。
oneAPI的核心則是其編程語言DPC++,英特爾的DPC++可以說是SYCL的超集,不僅包含了SYCL標準,還包含一些功能擴展,比如統一共享內存等,不過目前其中不少擴展也已經并入了SYCL新版規范中。
不過SYCL遠不僅是為了方便英特爾建設其跨架構的軟件生態,而是為了打破CUDA的統治,打造一個更加開放的軟硬件生態,這點從英特爾在oneAPI的開發動向就能看出。
此前英特爾對于CUDA并沒有任何動作,反倒是其競爭對手AMD推出了HIP,幫助開發者將CUDA代碼移植至AMD平臺上,畢竟AMD還得發展GPU生態。但隨著英特爾的硬件路線已經不單單是CPU,而是CPU、GPU、FPGA、IPU和AI加速器的多硬件異構生態,這時候打造一個CUDA之外的軟件生態是提升其產品競爭力的必經之路了。
為了更好實現對CUDA代碼的移植,英特爾推出了DPC++兼容性工具(DPCT),目前版本的DPCT已經可以將90%到95%的CUDA代碼轉換成SYCL。不過這只是一個理想范圍,具體數值還是取決于代碼對應的工作負載。對于簡單的CUDA程序來說,完成DPC++的移植只需要對CUDA源文件運行這一轉換工具即可,相對復雜的CUDA程序還是需要一定的手動編程優化。
今年6月,英特爾公布消息,決定收購Codeplay公司。要說對SYCL的研究,除了英特爾以外,最深入的當屬Codeplay了,畢竟就連SYCL工作組的主席也是來自Codeplay的杰出工程師MichaelWong。Codeplay不僅提供了多種處理器上SYCL的支持,也支持將CUDA代碼移植為SYCL,同時保證SYCL代碼在英偉達GPU上的繼續運行,還能調用一些CUDA庫。
Codeplay的方案支持覆蓋英特爾、AMD、英偉達的處理器,而且他們也開始了對汽車ADAS(瑞薩R-Car)、邊緣計算設備(ImaginationPowerVR)與RISC-V處理器(晶心科技NX27V)的支持開發工作。后三者恰好是SYCL當前未曾開拓的市場,但卻是英特爾正在發力的三大市場,加上Codeplay本身在HPC、AI上的軟件開發實力,如此看來,英特爾收購Codeplay完全符合其戰略目標。
結語
盡管SYCL的構想是好的,其發展路線也是傾向于開發者,但這并不代表著就一定能取代CUDA的位置,畢竟SYCL其實也才誕生沒多久,與CUDA、OpenCL或OpenMP相比生態發展還沒有成熟。再者就是統一各種硬件的編程并沒有那么簡單,正如英偉達CEO黃仁勛曾經提出的質疑:時間會揭曉一個編程方法是否能兼容七種不同的處理器,至少歷史上從未出現過。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
amd
+關注
關注
25文章
5487瀏覽量
134448 -
英特爾
+關注
關注
61文章
10002瀏覽量
172124 -
英偉達
+關注
關注
22文章
3833瀏覽量
91644
發布評論請先 登錄
相關推薦
ADC12D1600測試圖案數據錯誤是哪里出了問題?
各位專家:
我最近使用PIN模式控制ADC12D1600, In Demux Mode,Non-DES Mode,上電有校準,使用測試圖案,根據手冊描述,測試圖案會有連續的010,現在我在FPGA
發表于 12-09 08:35
打破網絡邊界:P2Link助力實現高效遠程訪問與內網穿透
(網絡地址轉換)之后,使得外網設備難以直接對這些內網設備進行訪問。此時,內網穿透技術應勢而生,而 P2Link 作為一種極為高效的內網穿透解決方案,成功打破了網絡邊界,為人們帶來了便捷且安全的遠程訪問能力
發表于 10-31 11:54
怎么在TMDSEVM6678: 6678自帶的FFT接口和CUDA提供CUFFT函數庫選擇?
請教一下gpgpu上包括4個Riscv cpu和一個DPU, 沒有6678,要替換原來信號處理用的6678,該怎么在6678自帶的FFT接口和CUDA提供CUFFT函數庫選擇?
發表于 09-27 07:20
打破英偉達CUDA壁壘?AMD顯卡現在也能無縫適配CUDA了
、英特爾等廠商雖然在努力追趕,但目前還未能看到有威脅英偉達地位的可能。 ? 最近一家英國公司Spectral Compute推出了一款方案,可以為AMD的GPU原生編譯CUDA源代碼,目前正在RNDA2、RDNA3上進行規模測試。這或許可以打破
英國公司實現英偉達CUDA軟件在AMD GPU上的無縫運行
7月18日最新資訊,英國創新科技企業Spectral Compute震撼發布了其革命性GPGPU編程工具包——“SCALE”,該工具包實現了英偉達CUDA軟件在AMD GPU上的無縫遷移與運行,標志著在GPU計算領域,NVIDIA長期以來的市場壟斷地位或將迎來重大挑戰。
試圖從CAN卡向TC375發送報文時,TC375始終收不到,為什么?
我試圖在TC375上進行CAN收發測試,測試目的是完成TC375和CAN卡的通訊,現在我已經成功地將CAN報文從TC375發送到了CAN卡,但是當我試圖從CAN卡向TC375發送報文時,TC375始終收不到,下面是我的一些代碼,請問哪里做的不對?
發表于 07-04 06:04
軟件生態上超越CUDA,究竟有多難?
神壇的,還是圍繞CUDA打造的一系列軟件生態。 ? 英偉達——CUDA的絕對統治 ? 相信對GPU有過一定了解的都知道,英偉達的最大護城河就是CUDA。
借助NVIDIA Aerial CUDA增強5G/6G的DU性能和工作負載整合
Aerial CUDA 加速無線接入網 (RAN)可加速電信工作負載,使用 CPU、GPU 和 DPU 在云原生加速計算平臺上提供更高水平的頻譜效率 (SE)。
英偉達CUDA-Q平臺推動全球量子計算研究
英偉達今日公布了其重要戰略決策,即采用開源的CUDA-Q平臺,旨在推動德國、日本和波蘭等國家超運中心在量子計算領域的創新研究。CUDA-Q作為英偉達推出的一款開源平臺,不僅與QPU無關,還實現了量子
Keil使用AC6編譯提示CUDA版本過高怎么解決?
\'
ArmClang: warning: Unknown CUDA version 10.2. Assuming the latest supported version 10.1
發表于 04-11 07:56
英偉達AI霸主地位遭巨頭聯手挑戰,CUDA壟斷遭破局
據最新外媒報道,科技界的巨頭們——高通、谷歌和英特爾等,已經聯手向英偉達發起了一場挑戰,意圖打破其在CUDA平臺上的壟斷局面。
摩爾線程MUSA/MUSIFY與英偉達CUDA無依賴,開發者無憂
首先,摩爾線程MUSA/MUSIFY并不受到英偉達CUDA這項條款的限制,使用者可以放心地使用其相關內容。MUSA即摩爾線程自行研發,享有高度自主知識產權的全功能GPU先進計算統一系統架構;
評論