91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一種將CUDA代碼遷移到SYCL和C++的開源工具

趣科技 ? 來源:趣科技 ? 作者:趣科技 ? 2022-06-10 11:17 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

英特爾發(fā)布了一項開源工具,該工具可通過名為SYCLomatic的項目,將代碼遷移至SYCL1,這有助于開發(fā)者更輕松地將CUDA代碼遷移到SYCL和C++,從而加速面向異構(gòu)架構(gòu)的跨架構(gòu)編程。這個開源項目能讓開發(fā)社區(qū)共同協(xié)作,以推動SYCL標(biāo)準(zhǔn)的采用,這是將開發(fā)者從單個廠商的封閉生態(tài)系統(tǒng)中解放出來的關(guān)鍵一步。

英特爾oneAPI專家James Reinders表示:“使用SYCL將代碼遷移至C++,為代碼提供了更強(qiáng)的ISO C++一致性,支持多家供應(yīng)商以緩解供應(yīng)商鎖定問題,并且支持多種架構(gòu),為充分運(yùn)用新的硬件創(chuàng)新提供靈活性。SYCLomatic是一個可實(shí)現(xiàn)大部分工作自動化的寶藏工具,讓開發(fā)者能更多地關(guān)注定制化調(diào)優(yōu),而不是遷移代碼?!?/p>

在硬件創(chuàng)新為計算帶來多樣化異構(gòu)架構(gòu)的同時,軟件開發(fā)也已經(jīng)變得越來越復(fù)雜,很難充分釋放CPU和加速器的價值。如今的開發(fā)者及其團(tuán)隊普遍缺乏時間、金錢和資源,以適應(yīng)代碼的重寫和測試,為這些不同的架構(gòu)提升應(yīng)用的性能。開發(fā)者正在尋求開放替代方案,以提升時間價值。英特爾正在提供一種更簡單、更快捷的方式,讓開發(fā)者進(jìn)行硬件選擇。

SYCL是一種基于C++的Khronos Group標(biāo)準(zhǔn),它擴(kuò)展了C++功能以支持多種架構(gòu)和非共享內(nèi)存的配置。為啟動該項目,英特爾開源了其DPC++兼容性工具背后的技術(shù),以進(jìn)一步提升遷移能力,生成更多基于SYCL的應(yīng)用。跨架構(gòu)重復(fù)利用代碼簡化了開發(fā)工作,減少了持續(xù)維護(hù)代碼所需的時間和成本。

利用帶有LLVM差異化的Apache 2.0許可證,托管在GitHub上的SYCLomatic項目為開發(fā)者提供了一個社區(qū),讓他們能做出貢獻(xiàn)并提供反饋,以進(jìn)一步開放跨CPU、GPUFPGA的異構(gòu)開發(fā)。

SYCLomatic協(xié)助開發(fā)者將CUDA代碼遷移到SYCL,通??梢詫?0-95%的CUDA代碼自動遷移到SYCL代碼2。開發(fā)人員僅需手動編程剩余的工作,然后對特定架構(gòu)進(jìn)行定制化調(diào)優(yōu),達(dá)到所需的性能級別,便可完成這一過程。

研究機(jī)構(gòu)及英特爾客戶已成功地使用英特爾? DPC++兼容性工具,該工具采用與SYCLomatic相同的技術(shù),能將CUDA代碼遷移到多個廠商架構(gòu)上的SYCL(或Data Parallel C++,oneAPI的SYCL實(shí)現(xiàn))。這些案例包括斯德哥爾摩大學(xué)的GROMACS 20223、柏林祖思研究所(ZIB)的easyWave、三星Medison和Bittware(更多案例請訪問oneAPI DevSummit)。許多客戶也正在測試當(dāng)前和即將推出的基于英特爾? Xe架構(gòu)GPU的代碼,包括阿貢國家實(shí)驗(yàn)室的極光(Aurora)超級計算機(jī)、萊布尼茨超級計算中心(LRZ)、GE醫(yī)療等。

SYCLomatic 是一個GitHub項目。GitHub門戶網(wǎng)站擁有一個“contributing.md”指南,描述了向項目提供技術(shù)貢獻(xiàn)的步驟,以確保最大程度的便捷。鼓勵開發(fā)人員使用該工具,提供反饋并做出貢獻(xiàn),以推動該工具的發(fā)展。

HACC(硬件/混合加速宇宙學(xué)代碼)、宇宙物理學(xué)和先進(jìn)計算(anl.gov)的Steve(Esteban)Rangel表示:“CRK-HACC是一個正在開發(fā)的N體宇宙學(xué)模擬代碼。為了給極光(Aurora)超級計算機(jī)做好準(zhǔn)備,英特爾DPC++兼容性工具能讓我們將20多個核心快速遷移到SYCL。由于當(dāng)前版本的代碼遷移工具不支持遷移到仿函數(shù),我們編寫了一個簡單的clang工具來重構(gòu)生成的SYCL源代碼,以滿足我們的需求。通過開源SYCLomatic項目,我們計劃整合此前的工作,以獲得更強(qiáng)大的解決方案,并助力讓仿函數(shù)成為可用遷移選項的一部分?!?/p>

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 英特爾
    +關(guān)注

    關(guān)注

    61

    文章

    10301

    瀏覽量

    180465
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4968

    瀏覽量

    73984
  • CUDA
    +關(guān)注

    關(guān)注

    0

    文章

    127

    瀏覽量

    14475
  • 開源工具
    +關(guān)注

    關(guān)注

    0

    文章

    27

    瀏覽量

    4775
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    keil實(shí)現(xiàn)cc++混合編程

    起因項目中使用到開源的模擬IIC的庫,封裝的比較好,但是是使用c++寫的。于是將其移植到自己的項目中,主要有以下三步操作: 在工程選項中 C/
    發(fā)表于 01-26 08:58

    C語言與C++的區(qū)別及聯(lián)系

    C語言和C++到底是什么關(guān)系? 首先C++C語言本來就是兩不同的編程語言,但C++確實(shí)是對
    發(fā)表于 12-24 07:23

    CC++之間的聯(lián)系

    控制能力,這點(diǎn)與C語言相似,使得它們在系統(tǒng)編程、嵌入式系統(tǒng)等領(lǐng)域都得到廣泛應(yīng)用。 3、發(fā)展歷程: C++正是在C語言的基礎(chǔ)上逐步發(fā)展起來的,C
    發(fā)表于 12-11 06:51

    C語言和C++之間的區(qū)別是什么

    區(qū)別 1、面向?qū)ο缶幊?(OOP): C語言是一種面向過程的語言,它強(qiáng)調(diào)的是通過函數(shù)任務(wù)分解為系列步驟進(jìn)行執(zhí)行。 C++
    發(fā)表于 12-11 06:23

    C/C++條件編譯

    條件編譯是一種在編譯時根據(jù)條件選擇性地包含或排除部分代碼的處理方法。在 C/C++ 中,條件編譯使用預(yù)處理指令 #ifdef、#endif、#else 和 #elif 來實(shí)現(xiàn)。常用的條
    發(fā)表于 12-05 06:21

    C++程序異常的處理機(jī)制

    運(yùn)行代碼進(jìn)行分離,使得程序更加模塊化;另方面,C++的異常處理可以不需要異常處理在異常發(fā)生時的同個函數(shù),而是可以在更上層合適的位置進(jìn)行處理。 下面,我們
    發(fā)表于 12-02 07:12

    無質(zhì)量損失的數(shù)據(jù)遷移:Nikon SLM Solutions信賴3Dfindit企業(yè)版

    使用轉(zhuǎn)換器CAD數(shù)據(jù)從個系統(tǒng)傳輸?shù)搅?b class='flag-5'>一個系統(tǒng),但這往往會導(dǎo)致數(shù)據(jù)的質(zhì)量下降。因此,該公司決定使用3Dfindit企業(yè)版CAD數(shù)據(jù)遷移到
    發(fā)表于 11-25 10:06

    嵌入式C/C++回歸測試四大最佳實(shí)踐(附自動化測試工具TESSY使用教程)

    嵌入式開發(fā)中,次微小的代碼改動都可能引發(fā)“蝴蝶效應(yīng)”,如何守護(hù)系統(tǒng)的穩(wěn)???推薦專業(yè)的自動化測試工具#TESSY,源自戴姆勒-奔馳,是嵌入式C/C+
    的頭像 發(fā)表于 10-31 14:21 ?411次閱讀
    嵌入式<b class='flag-5'>C</b>/<b class='flag-5'>C++</b>回歸測試四大最佳實(shí)踐(附自動化測試<b class='flag-5'>工具</b>TESSY使用教程)

    C/C++代碼靜態(tài)測試工具Perforce QAC 2025.3的新特性

    ?Perforce Validate?中?QAC?項目的相對/根路徑的支持。C++?分析也得到了增強(qiáng),增加了用于檢測 C++?并發(fā)問題的新檢查,并改進(jìn)了實(shí)體名稱和實(shí)
    的頭像 發(fā)表于 10-13 18:11 ?573次閱讀
    <b class='flag-5'>C</b>/<b class='flag-5'>C++</b><b class='flag-5'>代碼</b>靜態(tài)測試<b class='flag-5'>工具</b>Perforce QAC 2025.3的新特性

    如何在Keil中將NuMicro BSP從Arm編譯器5遷移到編譯器6?

    在Keil中將NuMicro BSP從Arm編譯器5遷移到編譯器6!
    發(fā)表于 08-20 06:29

    Perforce QAC產(chǎn)品簡介:面向C/C++的靜態(tài)代碼分析工具(已通過SO 26262認(rèn)證)

    Perforce QAC專為C/C++開發(fā)者打造,支持多種編碼規(guī)范、功能安全標(biāo)準(zhǔn)(ISO 26262)等,廣泛用于汽車、醫(yī)療、嵌入式開發(fā)領(lǐng)域,可幫助快速識別關(guān)鍵缺陷、提升代碼質(zhì)量、實(shí)現(xiàn)合規(guī)交付。
    的頭像 發(fā)表于 07-10 15:57 ?1275次閱讀
    Perforce QAC產(chǎn)品簡介:面向<b class='flag-5'>C</b>/<b class='flag-5'>C++</b>的靜態(tài)<b class='flag-5'>代碼</b>分析<b class='flag-5'>工具</b>(已通過SO 26262認(rèn)證)

    適用于SystemC/C++驗(yàn)證的形式化解決方案

    雖然 SystemC/C++ 編程風(fēng)格已使用多年,但最近出現(xiàn)了些特定使用模式,它們推動工程團(tuán)隊采用共同的設(shè)計流程。這包括抽象算法設(shè)計代碼用作高層次綜合 (HLS) 工具的輸入,虛擬平
    的頭像 發(fā)表于 06-24 11:07 ?1264次閱讀
    適用于SystemC/<b class='flag-5'>C++</b>驗(yàn)證的形式化解決方案

    從Keil MDK到IAR EWARM:通過工程遷移實(shí)現(xiàn)項目資產(chǎn)的更好管理

    對于需要統(tǒng)開發(fā)環(huán)境或涉及多核架構(gòu)(如Cortex-A/R)的項目,越來越多的用戶選擇從Keil MDK遷移到IAR EWARM。這就會面臨著需要將之前的Keil MDK工程遷移到IAR EWARM的問題。本文
    的頭像 發(fā)表于 05-08 09:03 ?1294次閱讀
    從Keil MDK到IAR EWARM:通過工程<b class='flag-5'>遷移</b>實(shí)現(xiàn)項目資產(chǎn)的更好管理

    請問項目從RT1024遷移到RT1064的最快方法是什么?

    我正在將我的項目從基于 RT1024 遷移到基于 RT1064 的下代產(chǎn)品,是否有快速的方法,或者我只能手動完成? 謝謝!
    發(fā)表于 03-31 06:15

    C++學(xué)到什么程度可以找工作?

    C++學(xué)到什么程度可以找工作?要使用C++找到工作,特別是作為軟件開發(fā)人員或相關(guān)職位,通常需要掌握以下幾個方面: 1. **語言基礎(chǔ)**:你需要對C++的核心概念有扎實(shí)的理解,包括但不限于指針、內(nèi)存
    發(fā)表于 03-13 10:19