Intel DPC++ Għodda ta' Kompatibbiltà 

Intel DPC++ Għodda ta' Kompatibbiltà

Ibda bl-Għodda ta' Kompatibbiltà Intel® DPC+ +

L-Għodda ta' Kompatibbiltà Intel® DPC++ tassisti fil-migrazzjoni ta' programm ta' żviluppatur li huwa miktub f'CUDA* għal programm miktub f'Data Parallel C++ (DPC++), li huwa bbażat fuq C++ modern u jinkorpora standards tal-industrija portabbli bħal SYCL*.

  • Żur il-Gwida u Referenza għall-Iżviluppaturi tal-Għodda ta' Kompatibbiltà Intel® DPC++ għal informazzjoni addizzjonali dwar l-għodda.
  • Żur in-Noti tar-Rilaxx għal kwistjonijiet magħrufa u l-aktar informazzjoni aġġornata.

NOTA L-użu tal-Għodda ta' Kompatibbiltà Intel® DPC++ se jirriżulta fi proġett li ma jkunx emigrat għal kollox. Xogħol addizzjonali, kif deskritt mill-output ta 'l-Għodda ta' Kompatibbiltà Intel® DPC++, huwa meħtieġ biex titlesta l-migrazzjoni.

Qabel Tibda

L-Għodda ta' Kompatibbiltà Intel® DPC++ hija inkluża fl-Intel® oneAPI Base Toolkit. Jekk ma installajtx l-Intel® oneAPI Base Toolkit, segwi l-istruzzjonijiet fil-Gwida għall-Installazzjoni.

Ċertu header CUDA files (speċifiċi għall-proġett tiegħek) jista' jkollhom bżonn ikunu aċċessibbli għall-Intel® DPC++
Għodda ta' Kompatibbiltà. L-Għodda tal-Kompatibbiltà Intel® DPC++ tfittex dawn l-header CUDA files fil-postijiet default:

  • /usr/local/cuda/include
  • /usr/local/cuda-xy/include, fejn xy huwa wieħed minn dawn il-valuri: 8.0, 9.x, 10.x, u 11.0–11.6.

Tista' tirreferi għal postijiet tad-dwana billi tipponta lejhom bil- –cuda-include-path= għażla fil-linja ta 'kmand tal-Għodda ta' Kompatibbiltà Intel® DPC++.

NOTA Il-mogħdija tal-inklużjoni CUDA m'għandhiex tkun l-istess bħal, jew mogħdija tifel tad-direttorju fejn jinsab il-kodiċi tas-sors li jeħtieġ li jiġi emigrat.

Bħalissa, l-Għodda ta' Kompatibbiltà Intel® DPC++ tappoġġja l-migrazzjoni ta' programmi implimentati bil-verżjonijiet CUDA 8.0, 9.x, 10.x, u 11.0–11.6. Il-lista ta' lingwi u verżjonijiet appoġġjati tista' tiġi estiża fil-futur.

Biex twaqqaf l-ambjent tal-Għodda ta' Kompatibbiltà Intel® DPC++, ħaddem dan li ġej:

  • Fuq Linux (sudo): sors /opt/intel/oneapi/setvars.sh
  • Fuq Linux (utent): sors ~/intel/oneapi/setvars.sh
  • Fuq Windows :Drive:\ Programm Files (x86)\Intel\oneAPI\setvars.bat

Is-sintassi tal-invokazzjoni ġenerali mill-qoxra tas-sistema operattiva hija:

dpct [għażliet] [ … ]

NOTA c2s huwa alias għall-kmand dpct u jista 'jintuża fil-post tiegħu.

Informazzjoni dwar l-Użu Inkorporata 

Biex tara l-lista ta’ għażliet speċifiċi tal-Għodda ta’ Kompatibilità Intel® DPC++, uża –help:

dpct –għajnuna

Biex tara l-lista tal-għażliet tal-parser tal-lingwa (Clang*), għaddi -help bħala l-għażla Clang:

dpct — -help
Twissijiet Emessi

L-Għodda ta' Kompatibbiltà Intel® DPC++ tidentifika l-postijiet fil-kodiċi li jistgħu jeħtieġu l-attenzjoni tiegħek waqt il-migrazzjoni tal- files sabiex tagħmel il-kodiċi SYCL konformi jew korrett.
Il-kummenti jiddaħħlu fis-sors iġġenerat files u murija bħala twissijiet fl-output. Per example:

/mogħdija/sa/file.hpp:26:1: twissija: DPCT1003:0: API migrat ma jirritornax kodiċi ta' żball. (*,0) huwa mdaħħal. Jista 'jkollok bżonn tikteb mill-ġdid dan il-kodiċi. // linja tal-kodiċi tas-sors li għaliha ġiet iġġenerata twissija ^

Għal aktar dettalji dwar xi tfisser twissija speċifika, irreferi għall- Referenza Dijanjostika.

Għal aktar dettalji dwar xi tfisser twissija speċifika, irreferi għar-Referenza Dijanjostika.

Emigra Proġett ta' Test Sempliċi

L-Għodda ta 'Kompatibbiltà Intel® DPC++ tiġi b'diversi sample proġetti sabiex tkun tista' tesplora l-għodda u tiffamiljarizza ruħek ma' kif tiffunzjona:

Sample Proġett Deskrizzjoni
 Vettore Żid DPCT
  • vector_add.cu
Il-Vector Żid DPCT sample juri kif timmigra programm sempliċi minn CUDA għal SYCL. Vector Add jipprovdi mod faċli biex tivverifika li l-ambjent ta 'żvilupp tiegħek huwa ssettjat b'mod korrett biex tuża l-Għodda ta' Kompatibbiltà Intel® DPC++.
Folder Options DPCT
  • main.cu
  • bar/util.cu
  • bar/util.h
L-Għażliet tal-Folders DPCT sample turi kif temigra proġetti aktar kumplessi u tuża għażliet.
Rodinia NW DPCT
  • labra.cu
  • labra.h
  • needle_kernel.cu
Il-Rodinia NW DPCT sample juri kif temigra proġett Make/CMake minn CUDA għal SYCL billi tuża l-Għodda ta' Kompatibbiltà Intel® DPC++.

Review il-README file ipprovdut b'kull sample għal informazzjoni aktar dettaljata dwar l-iskop u l-użu tal-sample proġett.

Biex taċċessa l-samples

  • uża l-utilità oneapi-cli biex tagħżel bħalaample mill-kategorija tal-Għodda ta' Kompatibbiltà Intel® DPC++, jew
  • niżżel is-samples minn GitHub*.

Għal aktar informazzjoni dettaljata dwar kif tniżżel u taċċessa l-samples, żur il-Gwidi għall-Ibda tal-Intel® oneAPI Base Toolkit:

Ipprova Sample Proġett 

Segwi dawn il-passi biex temigra l-Vector Żid DPCT sampil-proġett bl-użu tal-Għodda ta' Kompatibbiltà Intel® DPC++:

  1. Niżżel il-vector_add.cu sample.
  2. Mexxi l-Għodda ta' Kompatibbiltà Intel® DPC++ mill-sampdirettorju tal-għeruq tal-le:
    dpct –fl-għerq=. src/vector_add.cu

     

    Il-vector_add.dp.cpp file għandha tidher fid-direttorju dpct_output. Il- file issa hija sors SYCL file.

  3. Innaviga lejn is-sors SYCL il-ġdid file:
cd dpct_output

Ivverifika l-kodiċi tas-sors iġġenerat u waħħal kwalunkwe kodiċi li l-Għodda ta’ Kompatibbiltà Intel® DPC++ ma setgħetx temigra. (Il-kodiċi użat f'dan example hija sempliċi, għalhekk bidliet manwali jistgħu ma jkunux meħtieġa). Għall-aktar struzzjonijiet preċiżi u dettaljati dwar l-indirizzar tat-twissijiet maħruġa mill-Għodda ta’ Kompatibbiltà Intel® DPC++, ara t-Taqsima Twissijiet ta’ Indirizzar fil-Kodiċi Migrat tal- README files.

NOTA Biex tiġbor is-sample, żid -I/inkludi mal-kmand tal-kompila tiegħek.

Għal aktar kumplessi sample istruzzjonijiet, ara l- Emigra Proġett sezzjoni tal-Gwida u Referenza għall-Iżviluppaturi tal-Għodda ta’ Kompatibbiltà Intel® DPC++.

Sib Aktar

Kontenut Deskrizzjoni
Kompatibilità Intel® DPC++

Gwida għall-Iżviluppaturi tal-Għodda u

Referenza

Dettaljat fuqview tal-karatteristiċi, il-fluss tax-xogħol u l-użu tal-Għodda ta' Kompatibbiltà Intel® DPC++.
On-Demand Webinar:

Migrazzjoni tal-CUDA Eżistenti Tiegħek

Kodiċi għall-Kodiċi DPC++

Kif temigra l-kodiċi CUDA għal Data Parallel C++ (DPC++) billi tuża l-Għodda ta’ Kompatibbiltà Intel® DPC++, magna ta’ migrazzjoni ta’ darba li ġġib kemm il-kernels kif ukoll is-sejħiet API.
Gwidi ta' Installazzjoni għal Intel®

OneAPI Toolkits

Istruzzjonijiet dettaljati dwar kif tikseb u tinstalla pakketti Intel® oneAPI bl-użu ta' modi ta' installatur u maniġers ta' pakketti differenti.
Verżjoni tal-ispeċifikazzjoni SYCL

1.2.1 PDF

Il-PDF tal-Ispeċifikazzjoni SYCL. Jispjega kif SYCL jintegra apparati OpenCL ma' C++ modern.
Speċifikazzjoni SYCL 2020 Il-PDF tal-Ispeċifikazzjoni SYCL 2020.
Khronos * SYCL fuqview An fuqview ta’ SYCL ipprovdut mill-Grupp Khronos.
Kumpilazzjoni CUDA ma clang Deskrizzjoni ta 'appoġġ CUDA fil clang.
Estensjonijiet Intel LLVM SYCL Estensjonijiet proposti għall-ispeċifikazzjoni SYCL.
Saffi għall-Proġett Yocto* Żid komponenti API wieħed għal proġett Yocto build billi tuża s-saffi meta-intel.

Intel Logo

Dokumenti / Riżorsi

Intel DPC++ Għodda ta' Kompatibbiltà [pdfGwida għall-Utent
Għodda ta' Kompatibbiltà DPC, Għodda ta' Kompatibbiltà, Għodda

Referenzi

Ħalli kumment

L-indirizz elettroniku tiegħek mhux se jiġi ppubblikat. L-oqsma meħtieġa huma mmarkati *