Intel DPC++ ühilduvustööriist 

Intel DPC++ ühilduvustööriist

Alustage Intel® DPC+ + ühilduvustööriistaga

Intel® DPC++ ühilduvustööriist aitab CUDA*-s kirjutatud arendaja programmi migreerida programmiga Data Parallel C++ (DPC++), mis põhineb kaasaegsel C++-l ja sisaldab kaasaskantavaid tööstusstandardeid, nagu SYCL*.

  • Tööriista kohta lisateabe saamiseks külastage Intel® DPC++ ühilduvustööriista arendaja juhendit ja viidet.
  • Teadaolevate probleemide ja kõige värskema teabe saamiseks külastage väljalaskemärkmeid.

MÄRKUS Intel® DPC++ ühilduvustööriista kasutamine toob kaasa projekti, mida täielikult ei migreerita. Migreerimise lõpuleviimiseks on vaja täiendavat tööd, nagu on kirjeldatud Intel® DPC++ ühilduvustööriista väljundis.

Enne alustamist

Intel® DPC++ ühilduvustööriist sisaldub Intel® oneAPI baastööriistakomplektis. Kui te pole Intel® oneAPI Base Toolkit installinud, järgige installijuhendis olevaid juhiseid.

Teatud CUDA päis files (teie projekti spetsiifiline) peab võib-olla olema Intel® DPC++ jaoks juurdepääsetav
Ühilduvustööriist. Intel® DPC++ ühilduvustööriist otsib neid CUDA päist files vaikekohtades:

  • /usr/local/cuda/include
  • /usr/local/cuda-xy/include, kus xy on üks järgmistest väärtustest: 8.0, 9.x, 10.x ja 11.0–11.6.

Saate viidata kohandatud asukohtadele, osutades neile käsuga –cuda-include-path= suvand Intel® DPC++ ühilduvustööriista käsureal.

MÄRKUS CUDA kaasamise tee ei tohiks olla sama kataloogiga, kus asub migreeritav lähtekood, ega selle alamtee.

Praegu toetab Intel® DPC++ ühilduvustööriist CUDA versioonidega 8.0, 9.x, 10.x ja 11.0–11.6 rakendatud programmide migreerimist. Toetatud keelte ja versioonide loendit võidakse tulevikus täiendada.

Intel® DPC++ ühilduvustööriista keskkonna seadistamiseks tehke järgmist.

  • Linuxis (sudo): allikas /opt/intel/oneapi/setvars.sh
  • Linuxis (kasutaja): allikas ~/intel/oneapi/setvars.sh
  • Windowsis :Drive:\ programm Files (x86)\Intel\oneAPI\setvars.bat

Üldine väljakutsumise süntaks operatsioonisüsteemi kestast on järgmine:

dpct [valikud] [ … ]

MÄRKUS c2s on dpct käsu varjunimi ja seda saab selle asemel kasutada.

Sisseehitatud kasutusteave 

Intel® DPC++ ühilduvustööriista spetsiifiliste suvandite loendi vaatamiseks kasutage –help:

dpct – abi

Keeleparseri (Clang*) valikute loendi vaatamiseks jätke Clangi võtmeks -help:

dpct - -help
Väljastatud hoiatused

Intel® DPC++ ühilduvustööriist tuvastab koodis kohad, mis võivad nõuda teie tähelepanu files, et muuta kood SYCL-iga ühilduvaks või õigeks.
Kommentaarid sisestatakse loodud allikasse files ja kuvatakse väljundis hoiatustena. Näiteksample:

/tee/kuni/file.hpp:26:1: hoiatus: DPCT1003:0: migreeritud API ei tagasta veakoodi. (*,0) on lisatud. Võimalik, et peate selle koodi ümber kirjutama. // lähtekoodi rida, mille jaoks hoiatus genereeriti ^

Lisateavet selle kohta, mida konkreetne hoiatus tähendab, leiate jaotisest Diagnostika viide.

Täpsemat teavet selle kohta, mida konkreetne hoiatus tähendab, leiate jaotisest Diagnostic Reference.

Lihtsa testprojekti migreerimine

Intel® DPC++ ühilduvustööriistaga on kaasas mitu sample projekte, et saaksite tööriista uurida ja tutvuda selle toimimisega.

Sample projekt Kirjeldus
 Vektor Lisa DPCT
  • vector_add.cu
Vektori lisamine DPCT sample näitab, kuidas migreerida lihtne programm CUDA-st SYCL-i. Vektori lisamine pakub lihtsat viisi kontrollida, kas teie arenduskeskkond on Intel® DPC++ ühilduvustööriista kasutamiseks õigesti seadistatud.
Kausta valikud DPCT
  • main.cu
  • bar/util.cu
  • baar/util.h
Kausta valikud DPCT sample näitab, kuidas keerulisemaid projekte migreerida ja võimalusi kasutada.
Rodinia NW DPCT
  • nõel.cu
  • nõel.h
  • needle_kernel.cu
Rodinia NW DPCT sample demonstreerib, kuidas viia Make/CMake projekt CUDA-st SYCL-i, kasutades Intel® DPC++ ühilduvustööriista.

Review README file varustatud iga sample täpsema teabe saamiseks s-i eesmärgi ja kasutamise kohtaample projekt.

Juurdepääsuks samples

  • kasutage utiliiti oneapi-cli, et valida kuiample Intel® DPC++ ühilduvustööriistade kategooriast või
  • laadige alla sampvähem alates GitHub*.

Üksikasjalikuma teabe saamiseks s-i allalaadimise ja juurdepääsu kohtaampkülastage Intel® oneAPI Base Toolkiti alustusjuhendeid:

Proovige Sample projekt 

Vektori lisamise DPCT-de migreerimiseks järgige neid sammeampprojekt, kasutades Intel® DPC++ ühilduvustööriista:

  1. Laadige alla vektor_add.cu sample.
  2. Käivitage Intel® DPC++ ühilduvustööriist sample juurkataloog:
    dpct –in-root=. src/vector_add.cu

     

    Vektor_add.dp.cpp file peaks ilmuma kataloogis dpct_output. The file on nüüd SYCL-allikas file.

  3. Liikuge uuele SYCL-i allikale file:
cd dpct_väljund

Kontrollige loodud lähtekoodi ja parandage kõik koodid, mida Intel® DPC++ ühilduvustööriist ei suutnud üle viia. (Selles näites kasutatud koodampon lihtne, nii et käsitsi muutmine ei pruugi olla vajalik). Kõige täpsemate ja üksikasjalikumate juhiste saamiseks Intel® DPC++ ühilduvustööriista väljastatud hoiatuste käsitlemise kohta vaadake jaotist Adresseerimine migreeritud koodis. LOE ME files.

MÄRKUS Koostada rännatud sample, lisage oma kompileerimiskäsku -I/include.

Keerulisemate sampjuhiseid, vaadake Projekti migreerimine Intel® DPC++ ühilduvustööriista arendaja juhendi ja teabe jaotises.

Otsige rohkem

Sisu Kirjeldus
Intel® DPC++ ühilduvus

Tööriistaarendaja juhend ja

Viide

Üksikasjalik läbiview Intel® DPC++ ühilduvustööriista funktsioonidest, töövoost ja kasutamisest.
Nõudmisel Webinar:

Olemasoleva CUDA migreerimine

Kood DPC++ koodiks

Kuidas migreerida CUDA koodi Data Parallel C++-i (DPC++), kasutades Intel® DPC++ ühilduvustööriista – ühekordset migreerimismootorit, mis pordib nii tuumad kui ka API-kutsed.
Intel®-i installijuhendid

oneAPI tööriistakomplektid

Üksikasjalikud juhised Intel® oneAPI pakettide hankimiseks ja installimiseks, kasutades erinevaid installirežiime ja paketihaldureid.
SYCL spetsifikatsiooni versioon

1.2.1 PDF

SYCL-i spetsifikatsiooni PDF. Selgitab, kuidas SYCL integreerib OpenCL-i seadmed kaasaegse C++-ga.
SYCL 2020 spetsifikatsioon SYCL 2020 spetsifikatsiooni PDF.
Khronos* SYCL läbiview Üleview SYCL-i, mille pakub Khronos Group.
CUDA kompileerimine klangiga CUDA toe kirjeldus klangis.
Inteli LLVM SYCL laiendused SYCL-i spetsifikatsiooni pakutud laiendused.
Kihid Yocto* projekti jaoks Lisage meta-intel kihte kasutades Yocto projekti järgule üks API komponent.

Inteli logo

Dokumendid / Ressursid

Intel DPC++ ühilduvustööriist [pdfKasutusjuhend
DPC ühilduvustööriist, ühilduvustööriist, tööriist

Viited

Jäta kommentaar

Teie e-posti aadressi ei avaldata. Kohustuslikud väljad on märgitud *