intel Ibda bil-Kompilatur oneAPI DPC ++/C++
INTRODUZZJONI
Il-Kompilatur Intel® oneAPI DPC++/C++ jipprovdi ottimizzazzjonijiet li jgħinu l-applikazzjonijiet tiegħek jaħdmu aktar malajr fuq arkitetturi Intel® 64 fuq Windows* u Linux*, b'appoġġ għall-aħħar standards tal-lingwa C, C++, u SYCL. Dan il-kompilatur jipproduċi kodiċi ottimizzat li jista 'jimxi b'mod sinifikanti aktar malajr billi jieħu bil-quddiemtage tal-għadd tal-qalba li dejjem qed jiżdied u l-wisa' tar-reġistru tal-vettur fil-proċessuri Intel® Xeon® u proċessuri kompatibbli. L-Intel® Compiler jgħinek isaħħaħ il-prestazzjoni tal-applikazzjoni permezz ta' ottimizzazzjonijiet superjuri u vettorizzazzjoni ta' Single Instruction Multiple Data (SIMD), integrazzjoni ma' Intel® Performance Libraries, u billi tisfrutta l-mudell ta' programmazzjoni parallela OpenMP* 5.0/5.1.
Il-Kompilatur Intel® oneAPI DPC++/C++ jikkompila sors SYCL* ibbażat fuq C++ files għal firxa wiesgħa ta ' l-aċċeleraturi tal-kompjuter.
Il-Kompilatur Intel® oneAPI DPC++/C++ huwa parti mill-Intel® oneAPI Toolkits.
Sib Aktar
Deskrizzjoni tal-Kontenut u Links |
Noti ta' Ħruġ Żur il-paġna Noti ta' Ħruġ għal kwistjonijiet magħrufa u l-aktar informazzjoni aġġornata.
Gwida għall-Ipprogrammar Intel® oneAPI Jipprovdi dettalji dwar il-Kompilatur Intel® oneAPI DPC++/C++ mudell ta 'programmazzjoni, inklużi dettalji dwar SYCL* u OpenMP* offload, programmar għal diversi aċċeleraturi fil-mira, u introduzzjonijiet għal-libreriji Intel® oneAPI. Intel® oneAPI DPC++/C++ Esplora l-karatteristiċi u s-setup tal-Kompilatur Intel® oneAPI DPC++/C++ u Gwida għall-Iżviluppatur tal-Kompilatur u tikseb aktar informazzjoni dettaljata dwar l-għażliet tal-kompilatur, l-attributi, u Referenza aktar. oneAPI Kodiċi Samples Esplora l-aħħar kodiċi oneAPI samples. • Intel® oneAPI Data Parallel C+ Staqsi mistoqsijiet u sib tweġibiet fl-Intel® oneAPI Data Parallel C+ + Forum + u forums tal-Kompilaturi Intel® C++. • Forum tal-Kompilatur Intel® C++
Intel® oneAPI DPC++/C++ Esplora tutorials, materjali tat-taħriġ, u Intel® oneAPI oħra Dokumentazzjoni tal-Kompilatur Dokumentazzjoni tal-Kompilatur DPC++/C++. Speċifikazzjoni SYCL Verżjoni 1.2.1 L-ispeċifikazzjoni SYCL, tispjega kif SYCL tintegra l-apparati OpenCL PDF b'C++ modern. https://www.khronos.org/sycl/ An fuqview tas-SYCL. Il-Librerija GNU* C++ – L-użu Id-dokumentazzjoni tal-Librerija GNU* C++ dwar l-użu ta' ABI doppju. ABI doppju |
Saffi għall-Proġett Yocto* Żid komponenti oneAPI għal proġett Yocto build bl-użu tal-meta-intel
saffi. |
Avviżi u Ċaħdiet
It-teknoloġiji Intel jistgħu jeħtieġu attivazzjoni ta' ħardwer, softwer jew servizz attivat.
- L-ebda prodott jew komponent ma jista 'jkun assolutament sigur.
- L-ispejjeż u r-riżultati tiegħek jistgħu jvarjaw.
© Intel Corporation. Intel, il-logo Intel, u marki oħra Intel huma trademarks ta' Intel Corporation jew is-sussidjarji tagħha. Ismijiet u marki oħra jistgħu jiġu mitluba bħala l-proprjetà ta 'oħrajn.
L-ebda liċenzja (espressa jew impliċita, b'estoppel jew mod ieħor) għal xi drittijiet tal-proprjetà intellettwali ma tingħata minn dan id-dokument.
Il-prodotti deskritti jista 'jkun fihom difetti tad-disinn jew żbalji magħrufa bħala errata li jistgħu jikkawżaw li l-prodott jiddevja mill-ispeċifikazzjonijiet ippubblikati. Errata karatterizzata kurrenti huma disponibbli fuq talba.
Intel tiċħad il-garanziji espressi u impliċiti kollha, inklużi mingħajr limitazzjoni, il-garanziji impliċiti ta' kummerċjabbiltà, idoneità għal skop partikolari, u non-ksur, kif ukoll kwalunkwe garanzija li tirriżulta mill-kors tal-prestazzjoni, il-kors tan-negozju, jew l-użu fil-kummerċ.
Ibda fuq Linux
Qabel Tibda
Issettja Varjabbli Ambjentali
Qabel ma tkun tista' tuża l-kompilatur, l-ewwel trid issettja l-varjabbli tal-ambjent billi ssib l-iskript tal-ambjent billi tuża l-utilità tal-inizjalizzazzjoni. Dan jinizjalizza l-għodod kollha f'pass wieħed.
- Iddetermina d-direttorju tal-installazzjoni tiegħek, :
- a. Jekk il-kompilatur tiegħek ġie installat fil-post default minn utent root jew utent sudo, il-kompilatur jiġi installat taħt/opt/intel/oneapi. F'dan il-każ, huwa /opt/intel/oneapi.
- b. Għal utenti mhux root, jintuża d-direttorju tad-dar tiegħek taħt intel/oneapi. F'dan il-każ,
se jkun $HOME/intel/oneapi. - c. Għal utenti ta' cluster jew intrapriża, it-tim tal-amministratur tiegħek jista' jkun installat il-kompilaturi fuq netwerk kondiviż file sistema. Iċċekkja mal-persunal amministrattiv lokali tiegħek għall-post tal-installazzjoni
( ).
- Sors l-iskript li jistabbilixxi l-ambjent għall-qoxra tiegħek:
- a. bash: sors /setvars.sh intel64
- b. csh/tcsh: sors /setvars.csh intel64
Installa Drivers tal-GPU jew Plug-ins (Mhux obbligatorju)
Tista' tiżviluppa applikazzjonijiet oneAPI billi tuża C++ u SYCL* li se jaħdmu fuq Intel, AMD*, jew NVIDIA* GPUs. Biex tiżviluppa u tħaddem applikazzjonijiet għal GPUs speċifiċi l-ewwel trid tinstalla d-drivers jew plug-ins korrispondenti:
- Biex tuża Intel GPU, installa l-aħħar sewwieqa Intel GPU.
- Biex tuża AMD GPU, installa l-oneAPI għall-plugin AMD GPUs.
- Biex tuża NVIDIA GPU, installa l-oneAPI għall-plugin NVIDIA GPUs.
Għażla 1: Uża l-Linja tal-Kmand
Il-Kompilatur Intel® oneAPI DPC++/C++ jipprovdi sewwieqa multipli:
Invoka l-kompilatur billi tuża s-sintassi li ġejja:
{sewwieq tal-kompilatur} [għażla] file1 [file2…]
Per example:
icpx hello-world.cpp
Għall-kumpilazzjoni SYCL, uża l-għażla -fsycl bis-sewwieq C++:
icpx -fsycl hello-world.cpp
NOTA: Meta tuża -fsycl, -fsycl-targets=spir64 huwa preżunt sakemm il--fsycl-targets ma jkunx issettjat b'mod espliċitu fil-kmand.
Jekk qed timmira GPU NVIDIA jew AMD, irreferi għall-gwida tal-bidu tal-plugin tal-GPU korrispondenti għal struzzjonijiet dettaljati tal-kumpilazzjoni:
- oneAPI għall-GPUs NVIDIA Ibda Gwida
- oneAPI għall-GPUs AMD Ibda Gwida
Għażla 2: Uża l-Eclipse* CDT
Segwi dawn il-passi biex tinvoka l-kompilatur minn ġewwa l-Eclipse* CDT.
Installa l-plugin Intel® Compiler Eclipse CDT.
- Ibda Eclipse
- Agħżel Għajnuna > Installa Software Ġdid
- Agħżel Żid biex tiftaħ id-djalogu Żid sit
- Agħżel Arkivju, ibbrawżja għad-direttorju /kompilatur/ /linux/ide_support, agħżel il-.zip file li jibda b'com.intel.dpcpp.compiler, imbagħad agħżel OK
- Agħżel l-għażliet li jibdew bl-Intel, agħżel Li jmiss, imbagħad segwi l-istruzzjonijiet tal-installazzjoni
- Meta mistoqsi jekk tridx terġa' tibda Eclipse*, agħżel Iva
Ibni proġett ġdid jew iftaħ proġett eżistenti.
- Iftaħ Proġett Eżistenti jew Oħloq Proġett Ġdid fuq Eclipse
- Ikklikkja bil-lemin fuq Proġett > Proprjetajiet > Ibni C/C++ > Editur tal-katina tal-għodda
- Agħżel Intel DPC++/C++ Compiler mill-pannell tal-lemin
Issettja konfigurazzjonijiet tal-bini.
- Iftaħ Proġett Eżistenti fuq Eclipse
- Ikklikkja bil-lemin fuq Proġett > Proprjetajiet > Ibni C/C++ > Settings
- Oħloq jew immaniġġja l-konfigurazzjonijiet tal-bini fil-pannell tal-lemin
Ibni Programm Mil-Linja tal-Kmand
Uża l-passi li ġejjin biex tittestja l-installazzjoni tal-kompilatur tiegħek u tibni programm.
- Uża editur tat-test biex toħloq a file imsejħa hello-world.cpp bil-kontenut li ġej:
- Ikkompila hello-world.cpp:
icpx hello-world.cpp -o hello-world
L-għażla -o tispeċifika l- file isem għall-output iġġenerat. - Issa għandek eżekutibbli msejjaħ hello-world li jista 'jitħaddem u se jagħti feedback immedjat:
Liema outputs
Tista' tidderieġi u tikkontrolla l-kumpilazzjoni b'għażliet ta' kompilatur. Per example, tista 'toħloq l-oġġett file u joħroġ il-binarju finali f'żewġ passi:
- Ikkompila hello-world.cpp:
L-għażla -c tipprevjeni l-konnessjoni f'dan il-pass.
- Uża l-kompilatur icpx biex tgħaqqad il-kodiċi tal-oġġett tal-applikazzjoni li tirriżulta u toħroġ eżekutibbli:
L-għażla -o tispeċifika l-eżekutibbli ġġenerat file isem. Irreferi għall-Għażliet tal-Kompilatur għal dettalji dwar l-għażliet disponibbli.
Ibda fuq il-Windows
Qabel Tibda
Issettja Varjabbli Ambjentali
Il-kompilatur jintegra fil-verżjonijiet li ġejjin tal-Microsoft Visual Studio*:
- Visual Studio 2022
- Visual Studio 2019
- Visual Studio 2017
NOTA L-appoġġ għal Microsoft Visual Studio 2017 huwa deprecato mir-rilaxx tal-Intel® oneAPI 2022.1 u se jitneħħa f'rilaxx futur.
Għal funzjonalità sħiħa fi ħdan Visual Studio, inkluż id-debugging u l-iżvilupp, hija meħtieġa Visual Studio Community Edition jew ogħla. Visual Studio Express Edition jippermetti biss bini tal-linja tal-kmand. Għall-verżjonijiet kollha, l-appoġġ ta 'Microsoft C++ għandu jintgħażel bħala parti mill-installazzjoni tal-Visual Studio. Għal Visual Studio 2017 u aktar tard, trid tuża installazzjoni apposta biex tagħżel din l-għażla.
Tipikament ma jkollokx bżonn li tissettja l-varjabbli ambjentali fuq il-Windows, peress li t-tieqa tal-linja tal-kmand tal-kompilatur tistabbilixxi dawn il-varjabbli għalik awtomatikament. Jekk għandek bżonn tissettja l-varjabbli tal-ambjent, ħaddem l-iskript tal-ambjent kif deskritt fid-dokumentazzjoni tal-Ibda speċifika għas-suite.
Id-direttorju tal-installazzjoni default ( ) huwa C:\Programm Files (x86)\Intel\oneAPI.
Installa Drivers tal-GPU (Mhux obbligatorju)
Biex tiżviluppa u tħaddem applikazzjonijiet għal Intel GPUs l-ewwel trid tinstalla l-aħħar drivers Intel GPU.
Għażla 1: Uża l-Linja tal-Kmand fil-Microsoft Visual Studio
Il-Kompilatur Intel® oneAPI DPC++/C++ jipprovdi sewwieqa multipli:
Invoka l-kompilatur billi tuża s-sintassi li ġejja:
Biex tinvoka l-kompilatur billi tuża l-linja tal-kmand minn ġewwa Microsoft Visual Studio, iftaħ pront tal-kmand u daħħal il-kmand tal-kumpilazzjoni tiegħek. Per example:
Għall-kumpilazzjoni SYCL, uża l-għażla -fsycl bis-sewwieq C++:
NOTA: Meta tuża -fsycl, -fsycl-targets=spir64 huwa preżunt sakemm il--fsycl-targets ma jkunx issettjat b'mod espliċitu fil-kmand.
Għażla 2: Uża Microsoft Visual Studio
Appoġġ għall-Proġett għall-Kompilatur Intel® DPC++/C++ f'Microsoft Visual Studio
Proġetti ġodda ta 'Microsoft Visual Studio għal DPC++ huma kkonfigurati awtomatikament biex jużaw il-Kompilatur Intel® oneAPI DPC++/C++.
Proġetti ġodda ta' Microsoft Visual C++* (MSVC) għandhom jiġu kkonfigurati manwalment biex jużaw il-Kompilatur Intel® oneAPI DPC++/C++.
NOTA: Tipi ta' proġetti CLR C++ ibbażati fuq NET mhumiex appoġġjati mill-Kompilatur Intel® oneAPI DPC++/C++. It-tipi speċifiċi ta 'proġetti se jvarjaw skont il-verżjoni tiegħek ta' Visual Studio, pereżempjuample: CLR Class Library, CLR Console App, jew CLR Empty Project.
Uża l-Intel® DPC++/C++ Compiler fil-Microsoft Visual Studio
Passi eżatti jistgħu jvarjaw skont il-verżjoni tal-Microsoft Visual Studio li tkun qed tintuża.
- Oħloq proġett Microsoft Visual C++ (MSVC) jew iftaħ proġett eżistenti.
- F'Soluzzjoni Explorer, agħżel il-proġett(i) biex tibni bil-Kompilatur Intel® oneAPI DPC++/C++.
- Iftaħ Proġett > Proprjetajiet .
- Fil-pannell tax-xellug, jespandi l-kategorija Proprjetajiet tal-Konfigurazzjoni u agħżel il-paġna tal-proprjetà Ġenerali.
- Fil-pannell tal-lemin ibdel il-Platform Toolset għall-kompilatur li trid tuża:
- Għal C++ b'SYCL, agħżel Intel® oneAPI DPC++ Compiler.
- Għal C/C++, hemm żewġ settijiet ta' għodod.
Agħżel Intel C++ Compiler (eżample 2021) to invoke icx.
Agħżel Intel C++ Compiler (eżample 19.2) li tinvoka icl.
Alternattivament, tista' tispeċifika verżjoni tal-kompilatur bħala s-sett ta' għodod għall-pjattaformi u l-konfigurazzjonijiet kollha appoġġjati tal-proġett(i) magħżul(a) billi tagħżel Proġett > Intel Compiler > Uża Intel oneAPI DPC++/C++ Compiler.
- Ibni mill-ġdid, billi tuża jew Ibni > Proġett biss > Ibni mill-ġdid għal proġett wieħed jew Ibni > Ribni Soluzzjoni għal soluzzjoni.
Agħżel Verżjoni tal-Kompilatur
Jekk għandek verżjonijiet multipli tal-Kompilatur Intel® oneAPI DPC++/C++ installat, tista' tagħżel liema verżjoni trid mill-kaxxa ta' dialog Għażla tal-Kompilatur:
- Agħżel proġett, imbagħad mur Għodda > Għażliet > Kompilaturi Intel u Libreriji > > Kompilaturi, fejn valuri huma C++ jew DPC++.
- Uża l-menu drop-down tal-Kompilatur Magħżul biex tagħżel il-verżjoni xierqa tal-kompilatur.
- Agħżel OK.
Aqleb Lura għall-Microsoft Visual Studio C++ Compiler
Jekk il-proġett tiegħek qed juża l-Kompilatur Intel® oneAPI DPC++/C++, tista' tagħżel li taqleb lura għall-kompilatur Microsoft Visual C++:
- Agħżel il-proġett tiegħek fil-Microsoft Visual Studio.
- Ikklikkja bil-lemin u agħżel Intel Compiler > Uża Visual C++ mill-menu tal-kuntest.
Din l-azzjoni taġġorna s-soluzzjoni file biex tuża l-kompilatur Microsoft Visual Studio C++. Il-konfigurazzjonijiet kollha tal-proġetti affettwati jitnaddfu awtomatikament sakemm ma tagħżelx Tnaddafx proġett(i). Jekk tagħżel li ma tnaddafx proġetti, ikollok bżonn tibni mill-ġdid proġetti aġġornati biex tiżgura s-sors kollu files huma miġbura mal-kompilatur il-ġdid.
Ibni Programm Mil-Linja tal-Kmand
Uża l-passi li ġejjin biex tittestja l-installazzjoni tal-kompilatur tiegħek u tibni programm.
- Uża editur tat-test biex toħloq a file imsejħa hello-world.cpp bil-kontenut li ġej:
#inkludi int main() std::cout << "Hello, dinja!\n"; ritorn 0; - Ikkompila hello-world.cpp:
icx hello-world.cpp - Issa għandek eżekutibbli msejjaħ hello-world.exe li jista' jitħaddem u se jagħti feedback immedjat:
hello-world.exe
Liema outputs:
Hello, dinja!
Tista' tidderieġi u tikkontrolla l-kumpilazzjoni b'għażliet ta' kompilatur. Per example, tista 'toħloq l-oġġett file u joħroġ il-binarju finali f'żewġ passi:
- Ikkompila hello-world.cpp:
icx hello-world.cpp /c /Fohello-world.obj
L-għażla /c tipprevjeni l-konnessjoni f'dan il-pass u /Fo tispeċifika l-isem għall-oġġett file. - Uża l-kompilatur icx biex tgħaqqad il-kodiċi tal-oġġett tal-applikazzjoni li tirriżulta u toħroġ eżekutibbli:
icx hello-world.obj /Fehello-world.exe - L-għażla /Fe tispeċifika l-eżekutibbli ġġenerat file isem. Irreferi għall-Għażliet tal-Kompilatur għal dettalji dwar l-għażliet disponibbli.
Ikkumpila u Esegwixxi Sample Kodiċi
Kodiċi multipli samples huma pprovduti għall-Kompilatur Intel® oneAPI DPC++/C++ sabiex tkun tista' tesplora l-karatteristiċi tal-kompilatur u tiffamiljarizza ruħek ma' kif taħdem. Per example:
Il-Passi Li jmiss
- Uża l-aħħar Kodiċi oneAPI Samples u segwi flimkien mar-Riżorsi tat-Taħriġ Intel® oneAPI.
- Esplora l-Gwida u Referenza għall-Iżviluppatur tal-Kompilatur Intel® oneAPI DPC++/C++ fuq iż-Żona tal-Iżviluppaturi Intel®.
Dokumenti / Riżorsi
![]() |
intel Ibda bil-Kompilatur oneAPI DPC ++/C++ [pdfGwida għall-Utent Ibda bil-Kompilatur oneAPI DPC C, Ibda bil-, OneAPI DPC C Kompilatur |