
Instrument de compatibilitate intel DPC++

Începeți cu instrumentul de compatibilitate Intel® DPC+ +
Instrumentul de compatibilitate Intel® DPC++ ajută la migrarea programului unui dezvoltator care este scris în CUDA* la un program scris în Data Parallel C++ (DPC++), care se bazează pe C++ modern și încorporează standarde portabile ale industriei, cum ar fi SYCL*.
- Vizitați Ghidul și Referința pentru dezvoltatori a instrumentului de compatibilitate Intel® DPC++ pentru informații suplimentare despre instrument.
- Vizitați Notele de lansare pentru problemele cunoscute și cele mai actualizate informații.
NOTA Utilizarea instrumentului de compatibilitate Intel® DPC++ va avea ca rezultat un proiect care nu este migrat în întregime. Pentru a finaliza migrarea, este necesară muncă suplimentară, așa cum este subliniată de rezultatul Instrumentului de compatibilitate Intel® DPC++.
Înainte de a începe
Instrumentul de compatibilitate Intel® DPC++ este inclus în setul de instrumente de bază Intel® oneAPI. Dacă nu ați instalat Intel® oneAPI Base Toolkit, urmați instrucțiunile din Ghidul de instalare.
Anumit antet CUDA files (specifice pentru proiectul dvs.) poate trebui să fie accesibile pentru Intel® DPC++
Instrument de compatibilitate. Instrumentul de compatibilitate Intel® DPC++ caută aceste antete CUDA files în locațiile implicite:
- /usr/local/cuda/include
- /usr/local/cuda-xy/include, unde xy este una dintre aceste valori: 8.0, 9.x, 10.x și 11.0–11.6.
Puteți face referire la locații personalizate arătând spre ele cu –cuda-include-path= opțiunea din linia de comandă Intel® DPC++ Compatibility Tool.
NOTA Calea de includere CUDA nu trebuie să fie aceeași cu sau o cale secundară a directorului în care se află codul sursă care trebuie migrat.
În prezent, Instrumentul de compatibilitate Intel® DPC++ acceptă migrarea programelor implementate cu versiunile CUDA 8.0, 9.x, 10.x și 11.0–11.6. Lista de limbi și versiuni acceptate poate fi extinsă în viitor.
Pentru a configura mediul Intel® DPC++ Compatibility Tool, rulați următoarele:
- Pe Linux (sudo): sursa /opt/intel/oneapi/setvars.sh
- Pe Linux (utilizator): sursa ~/intel/oneapi/setvars.sh
- Pe Windows :Drive:\ Program Files (x86)\Intel\oneAPI\setvars.bat
Sintaxa generală de invocare din shell-ul sistemului de operare este:
| dpct [opțiuni] [ … ] |
NOTA c2s este un alias al comenzii dpct și poate fi folosit în locul lui.
Informații de utilizare încorporate
Pentru a vedea lista de opțiuni specifice Instrumentului de compatibilitate Intel® DPC++, utilizați –help:
| dpct – ajutor |
Pentru a vedea lista de opțiuni pentru analizatorul de limbă (Clang*), treceți -help ca opțiune Clang:
| dpct — -ajutor |
Avertismente emise
Instrumentul de compatibilitate Intel® DPC++ identifică locurile din cod care ar putea necesita atenția dvs. în timpul migrării files pentru a face codul SYCL compatibil sau corect.
Comentariile sunt inserate în sursa generată files și afișate ca avertismente în ieșire. De examppe:
| /cale/spre/file.hpp:26:1: avertisment: DPCT1003:0: API-ul migrat nu returnează codul de eroare. (*,0) este introdus. Poate fi necesar să rescrieți acest cod. // linia de cod sursă pentru care a fost generată avertisment ^ |
Pentru mai multe detalii despre ce înseamnă un anumit avertisment, consultați Referință de diagnostic.
Pentru mai multe detalii despre ce înseamnă un anumit avertisment, consultați Referința de diagnosticare.
Migrați un proiect de testare simplu
Instrumentul de compatibilitate Intel® DPC++ vine cu mai multe dispozitiveample proiecte astfel încât să puteți explora instrumentul și să vă familiarizați cu modul în care funcționează:
| Sample Project | Descriere |
Vector Adăugați DPCT
|
Vector Adaugă DPCT sample demonstrează cum să migrați un program simplu de la CUDA la SYCL. Vector Add oferă o modalitate simplă de a verifica dacă mediul dumneavoastră de dezvoltare este configurat corect pentru a utiliza Instrumentul de compatibilitate Intel® DPC++. |
Opțiuni folder DPCT
|
Opțiunile folderului DPCT sampfișierul arată cum să migrați proiecte mai complexe și cum să utilizați opțiunile. |
Rodinia NV DPCT
|
Rodinia NV DPCT sample demonstrează cum să migrați un proiect Make/CMake de la CUDA la SYCL folosind Instrumentul de compatibilitate Intel® DPC++. |
Review README file prevazut cu fiecare sample pentru informații mai detaliate despre scopul și utilizarea sample proiect.
Pentru a accesa samples
- utilizați utilitarul oneapi-cli pentru a selecta caampfișier din categoria Instrument de compatibilitate Intel® DPC++ sau
- descărcați samples din GitHub*.
Pentru informații mai detaliate despre cum să descărcați și să accesați fișierul sampaccesați Ghidurile de început pentru Intel® oneAPI Base Toolkit:
- Ghid de început cu setul de instrumente de bază Intel® oneAPI pentru Windows*
- Începeți cu setul de instrumente de bază Intel® oneAPI pentru Linux*
- Începeți cu Intel® oneAPI Base Toolkit pentru macOS*
Încearcă un Sample Project
Urmați acești pași pentru a migra Vector Add DPCTampproiectul folosind instrumentul de compatibilitate Intel® DPC++:
- Descărcați vector_add.cu sample.
- Rulați Instrumentul de compatibilitate Intel® DPC++ din sampdirectorul rădăcină al fișierului:
dpct –in-root=. src/vector_add.cu Vector_add.dp.cpp file ar trebui să apară în directorul dpct_output. The file este acum o sursă SYCL file.
- Navigați la noua sursă SYCL file:
| cd dpct_output |
Verificați codul sursă generat și reparați orice cod pe care Instrumentul de compatibilitate Intel® DPC++ nu l-a putut migra. (Codul folosit în acest exampfișierul este simplu, așa că este posibil să nu fie necesare modificări manuale). Pentru instrucțiunile cele mai precise și detaliate despre adresarea avertismentelor emise de Instrumentul de compatibilitate Intel® DPC++, consultați secțiunea Avertismente privind adresarea în codul migrat din CITEȘTE-MĂ files.
NOTA Pentru a compila s. migratample, adaugă -I/include la comanda ta de compilare.
Pentru s mai complexample instrucțiuni, vezi Migrați un proiect secțiunea Intel® DPC++ Compatibility Tool Developer Guide and Reference.
Găsiți mai multe
| Conţinut | Descriere |
| Compatibilitate Intel® DPC++ | Detaliat pesteview de caracteristici, flux de lucru și utilizare a Instrumentului de compatibilitate Intel® DPC++. |
| La cerere Webinar: | Cum să migrați codul CUDA la Data Parallel C++ (DPC++) utilizând Instrumentul de compatibilitate Intel® DPC++, un motor de migrare unic care port atât nuclee, cât și apeluri API. |
| Ghiduri de instalare pentru Intel® | Instrucțiuni detaliate despre cum să obțineți și să instalați pachete Intel® oneAPI utilizând diferite moduri de instalare și manageri de pachete. |
| Versiunea specificației SYCL | PDF-ul specificațiilor SYCL. Explică modul în care SYCL integrează dispozitivele OpenCL cu C++ modern. |
| Specificații SYCL 2020 | PDF-ul specificațiilor SYCL 2020. |
| Khronos* SYCL pesteview | Un pesteview de SYCL oferit de grupul Khronos. |
| Compilarea CUDA cu clang | Descrierea suportului CUDA în clang. |
| Extensii Intel LLVM SYCL | Extensii propuse la specificația SYCL. |
| Straturi pentru Proiectul Yocto* | Adăugați o componente API la o construcție de proiect Yocto folosind straturile meta-intel. |

Documente/Resurse
![]() | DPC++ Compatibility Tool |
Referințe
- llvm/sycl/doc/extensions la sycl · intel/llvm · GitHubgithub.com
- oneAPI-uriampfișiere/Instrumente/Migrare la master · oneapi-src/oneAPI-sampfișiere · GitHubgithub.com
- Compilarea CUDA cu clang — documentație LLVM 17.0.0gitllvm.org
- principal.cuprincipal.cu
- ac.cuac.cu
- setvars.shsetvars.sh
- Note de lansare a instrumentului de compatibilitate Intel® DPC++software.intel.com
- Începeți cu Intel® oneAPI Base Toolkit (Base Kit) și Intel®...software.intel.com
- Ghid și referință pentru dezvoltatori Intel® DPC++ Compatibility Toolsoftware.intel.com
- Referință pentru diagnosticaresoftware.intel.com
- Manual de utilizaremanual.tools
