Strumentu di cumpatibilità intel DPC++

Cuminciate cù l'Intel® DPC+ + Strumentu di Compatibilità
L'Intel® DPC++ Compatibility Tool aiuta à a migrazione di un prugramma di sviluppatore chì hè scrittu in CUDA * à un prugramma scrittu in Data Parallel C++ (DPC++), chì hè basatu annantu à C++ mudernu è incorpora standard di l'industria portable cum'è SYCL *.
- Visita l'Intel® DPC++ Compatibility Tool Developer Guide and Reference per infurmazioni supplementari nantu à l'utillita.
- Visitate e Note di Liberazione per i prublemi cunnisciuti è l'infurmazioni più recenti.
NOTA L'usu di l'Intel® DPC++ Compatibility Tool risulterà in un prughjettu chì ùn hè micca sanu migratu. U travagliu supplementu, cum'è delineatu da l'output di l'Intel® DPC++ Compatibility Tool, hè necessariu per compie a migrazione.
Prima di principià
U Strumentu di Compatibilità Intel® DPC++ hè inclusu in l'Intel® oneAPI Base Toolkit. Se ùn avete micca installatu l'Intel® oneAPI Base Toolkit, seguite l'istruzzioni in a Guida di Installazione.
Certi header CUDA files (specificu à u vostru prughjettu) pò avè bisognu à esse accessibile à l'Intel® DPC++
Strumentu di cumpatibilità. L'Intel® DPC++ Compatibility Tool cerca questi header CUDA files in i lochi predefiniti:
- /usr/local/cuda/include
- /usr/local/cuda-xy/include, induve xy hè unu di sti valori: 8.0, 9.x, 10.x, è 11.0–11.6.
Pudete riferimentu à i lochi persunalizati indicandoli cù u -cuda-include-path= opzione in a linea di cummanda di l'Intel® DPC++ Compatibility Tool.
NOTA U CUDA include u percorsu ùn deve esse u listessu cum'è, o una strada di u zitellu di u repertoriu induve si trova u codice fonte chì deve esse migratu.
Attualmente, l'Intel® DPC++ Compatibility Tool supporta a migrazione di prugrammi implementati cù e versioni CUDA 8.0, 9.x, 10.x, è 11.0-11.6. A lista di lingue è versioni supportati pò esse allargata in u futuru.
Per cunfigurà l'ambiente Intel® DPC++ Compatibility Tool, eseguite i seguenti:
- In Linux (sudo): fonte /opt/intel/oneapi/setvars.sh
- In Linux (utilizatori): fonte ~/intel/oneapi/setvars.sh
- Nantu à Windows :Drive:\ Programma Files (x86)\Intel\oneAPI\setvars.bat
A sintassi generale di invucazione da a shell di u sistema operatore hè:
| dpct [opzioni] [ … ] |
NOTA c2s hè un alias à u cumandamentu dpct è pò esse usatu in u so locu.
Infurmazione di l'usu integrata
Per vede a lista di Intel® DPC++ Compatibility Tool-opzioni specifiche, utilizate -help:
| dpct - aiutu |
Per vede a lista di l'opzioni di parser di lingua (Clang*), passate -help cum'è l'opzione Clang:
| dpct - aiutu |
Avvertimenti emessi
L'Intel® DPC++ Compatibility Tool identifica i posti in u codice chì ponu esse bisognu di a vostra attenzione durante a migrazione di u codice. files per fà u codice SYCL cumpletu o currettu.
I cumenti sò inseriti in a fonte generata files è affissatu cum'è avvisi in l'output. Per esampLe:
| /caminu/versu/file.hpp:26:1: avvisu: DPCT1003:0: L'API migrata ùn torna micca u codice d'errore. (*,0) hè inseritu. Pudete bisognu di riscrive stu codice. // linea di codice fonte per a quale hè stata generata l'avvertimentu ^ |
Per più dettagli nantu à ciò chì significa un avvisu specificu, riferite à u Riferimentu Diagnosticu.
Per più dettagli nantu à ciò chì significa un avvertimentu specificu, riferite à a Referenza Diagnostica.
Migrate un Prughjettu di Test Simple
L'Intel® DPC++ Compatibility Tool vene cun parechji sampi prughjetti cusì pudete scopre l'uttellu è familiarizàvi cù cumu funziona:
| Sampu prughjettu | Descrizzione |
Vector Aggiungi DPCT
|
U Vector Add DPCT sample mostra cumu migrate un prugramma simplice da CUDA à SYCL. Vector Add furnisce un modu faciule per verificà chì u vostru ambiente di sviluppu hè stallatu currettamente per utilizà l'Intel® DPC++ Compatibility Tool. |
Opzioni di cartulare DPCT
|
Opzioni di cartella DPCT sample mostra cumu migrate prughjetti più cumplessi è aduprà opzioni. |
Rodinia NW DPCT
|
U Rodinia NW DPCT sample mostra cumu migrate un prughjettu Make / CMake da CUDA à SYCL utilizendu l'Intel® DPC++ Compatibility Tool. |
Review u README file furnitu cù ogni sample per infurmazione più dettagliata nantu à u scopu è l'usu di u sampu prughjettu.
Per accede à u samples
- utilizate l'utilità oneapi-cli per selezziunà cum'èample da a categuria Intel® DPC++ Compatibility Tool, o
- scaricate u samples da GitHub*.
Per infurmazione più dettagliata nantu à cumu scaricà è accede à u samples, visitate l'Intel® oneAPI Base Toolkit Get Started Guides:
- Guida introduttiva cù l'Intel® oneAPI Base Toolkit per Windows *
- Cuminciate cù l'Intel® oneAPI Base Toolkit per Linux *
- Cuminciate cù l'Intel® oneAPI Base Toolkit per macOS *
Pruvate un Sampu prughjettu
Segui questi passi per migrà u Vector Add DPCT sampu prughjettu cù u Strumentu di Compatibilità Intel® DPC++:
- Scaricate u vector_add.cu sample.
- Eseguite l'Intel® DPC++ Compatibility Tool da u sample directory root:
dpct -in-root=. src/vector_add.cu U vector_add.dp.cpp file deve apparisce in u cartulare dpct_output. U file hè avà una fonte SYCL file.
- Navigate à a nova fonte SYCL file:
| cd dpct_output |
Verificate u codice fonte generatu è riparà qualsiasi codice chì l'Intel® DPC++ Compatibility Tool ùn hà micca pussutu migrà. (U codice utilizatu in questu example hè simplice, cusì i cambiamenti manuali ùn anu micca bisognu). Per l'istruzzioni più precise è dettagliate nantu à l'indirizzu di l'avvirtimenti emessi da l'Intel® DPC++ Compatibility Tool, vede l'Avvertimenti di Indirizzu in a sezione di u Codice Migratu. LEGGIMI files.
NOTA Per cumpilà u sample, aghjunghje -I/include à u vostru cumandamentu di compilazione.
Per più cumplessu sample instructions, vede u Migrate un Prughjettu sezione di a Guida è Riferimentu per i Sviluppatori di l'Intel® DPC++ Compatibility Tool.
Truvate di più
| Cuntinutu | Descrizzione |
| Compatibilità Intel® DPC++ | Detailed overview di funzioni, flussu di travagliu è usu di l'Intel® DPC++ Compatibility Tool. |
| On-Demand Webinar: | Cumu migrà u codice CUDA à Data Parallel C++ (DPC++) utilizendu l'Intel® DPC++ Compatibility Tool, un mutore di migrazione una volta chì porta i dui kernels è chjamate API. |
| Guide d'installazione per Intel® | Istruzzioni dettagliate nantu à cumu uttene è installà i pacchetti Intel® oneAPI utilizendu diversi modi di installatore è gestori di pacchetti. |
| Versione di specificazione SYCL | A specificazione SYCL PDF. Spiega cumu SYCL integra i dispositi OpenCL cù u C++ mudernu. |
| Specifica SYCL 2020 | A specificazione SYCL 2020 PDF. |
| Khronos * SYCL finituview | Un sopraview di SYCL furnitu da u Gruppu Khronos. |
| Cumpilà CUDA cù clang | Descrizzione di u supportu CUDA in clang. |
| Estensioni Intel LLVM SYCL | Estensioni pruposte à a specificazione SYCL. |
| Layers for Yocto* Project | Aghjunghjite un cumpunenti API à un prughjettu Yocto build usendu i strati meta-intel. |

Documenti / Risorse
![]() |
Strumentu di cumpatibilità intel DPC++ [pdfGuida di l'utente Strumentu di cumpatibilità DPC, Strumentu di cumpatibilità, Strumentu |




