intel-LOGO

intel Comenceu amb el compilador oneAPI DPC ++/C++

intel-Començar-a-el-oneAPI-DPC ++-C++-Compiler-PRODUCT

INTRODUCCIÓ

El compilador Intel® oneAPI DPC++/C++ ofereix optimitzacions que ajuden a les vostres aplicacions a funcionar més ràpidament a les arquitectures Intel® 64 a Windows* i Linux*, amb suport per als estàndards de llenguatge C, C++ i SYCL més recents. Aquest compilador produeix codi optimitzat que es pot executar molt més ràpid si s'avançatagEl nombre de nuclis cada cop més gran i l'amplada del registre vectorial en els processadors Intel® Xeon® i els processadors compatibles. El compilador Intel® us ajudarà a augmentar el rendiment de les aplicacions mitjançant optimitzacions superiors i la vectorització de dades múltiples d'instrucció única (SIMD), la integració amb les biblioteques de rendiment Intel® i aprofitant el model de programació paral·lel OpenMP* 5.0/5.1.

El compilador Intel® oneAPI DPC++/C++ compila la font SYCL* basada en C++ files per a una àmplia gamma d'acceleradors de càlcul.
El compilador Intel® oneAPI DPC++/C++ forma part dels kits d'eines Intel® oneAPI.

Troba més

Descripció del contingut i enllaços
Notes de la versió                                  Visiteu la pàgina Notes de la versió per trobar problemes coneguts i la informació més actualitzada.

Guia de programació Intel® oneAPI    Proporciona detalls sobre el compilador Intel® oneAPI DPC++/C++

model de programació, incloent detalls sobre la descàrrega de SYCL* i OpenMP*, programació per a diversos acceleradors de destinació i introduccions a les biblioteques Intel® oneAPI.

Intel® oneAPI DPC++/C++                Exploreu les funcions i la configuració del compilador Intel® oneAPI DPC++/C++ i Guia per a desenvolupadors del compilador i          obtenir informació més detallada sobre les opcions del compilador, els atributs i Referència                                        més.

Codi oneAPI Samples                      Exploreu els darrers codis oneAPIamples.

•               Intel® oneAPI Data Parallel C+      Feu preguntes i trobeu respostes a Intel® oneAPI Data Parallel C+

+ Fòrum                                      + i fòrums del compilador Intel® C++.

•               Fòrum del compilador Intel® C++

 

Intel® oneAPI DPC++/C++                Exploreu tutorials, materials de formació i altres Intel® oneAPI Documentació del compilador                  Documentació del compilador DPC++/C++.

Especificació SYCL versió 1.2.1       L'especificació SYCL, explica com SYCL integra els dispositius OpenCL PDF                                                  amb C++ modern.

https://www.khronos.org/sycl/         Un acabatview de SYCL.

La biblioteca GNU* C++ - Ús         La documentació de la biblioteca GNU* C++ sobre l'ús de l'ABI dual. ABI dual

Capes per al projecte Yocto*                  Afegiu components oneAPI a una construcció de projecte Yocto mitjançant el meta-intel

capes.

Avisos i exempcions de responsabilitat
Les tecnologies Intel poden requerir l'activació de maquinari, programari o servei activat.

  • Cap producte o component pot ser absolutament segur.
  • Els vostres costos i resultats poden variar.

© Intel Corporation. Intel, el logotip d'Intel i altres marques d'Intel són marques comercials d'Intel Corporation o de les seves filials. Altres noms i marques es poden reclamar com a propietat d'altres.

Aquest document no concedeix cap llicència (expressa o implícita, per preclusió o d'una altra manera) sobre cap dret de propietat intel·lectual.
Els productes descrits poden contenir defectes de disseny o errors coneguts com a errates que poden provocar que el producte es desviï de les especificacions publicades. Les errates caracteritzades actuals estan disponibles a petició.

Intel renuncia a totes les garanties explícites i implícites, incloses, sense limitació, les garanties implícites de comerciabilitat, adequació per a un propòsit particular i no infracció, així com qualsevol garantia derivada del curs de rendiment, el curs de la negociació o l'ús en el comerç.

Comença a Linux

Abans de començar

Estableix les variables d'entorn
Abans de poder utilitzar el compilador, primer heu d'establir les variables d'entorn mitjançant l'obtenció de l'script d'entorn mitjançant la utilitat d'inicialització. Això inicialitza totes les eines en un sol pas.

  1. Determineu el vostre directori d'instal·lació, :
    • a. Si un usuari root o sudo ha instal·lat el vostre compilador a la ubicació predeterminada, el compilador s'instal·larà a/opt/intel/oneapi. En aquest cas, és /opt/intel/oneapi.
    • b. Per als usuaris que no són root, s'utilitza el vostre directori personal sota intel/oneapi. En aquest cas,
      serà $HOME/intel/oneapi.
    • c. Per als usuaris de clúster o d'empresa, és possible que el vostre equip d'administració hagi instal·lat els compiladors en una xarxa compartida file sistema. Consulteu amb el vostre personal d'administració local la ubicació de la instal·lació
      ( ).
  2. Obteniu l'script de configuració de l'entorn per al vostre shell:
    • a. bash: font /setvars.sh intel64
    • b. csh/tcsh: font /setvars.csh intel64

Instal·leu els controladors o els connectors de la GPU (opcional)
Podeu desenvolupar aplicacions oneAPI utilitzant C++ i SYCL* que s'executaran a les GPU Intel, AMD* o NVIDIA*. Per desenvolupar i executar aplicacions per a GPU específiques, primer heu d'instal·lar els controladors o complements corresponents:

  • Per utilitzar una GPU Intel, instal·leu els darrers controladors de GPU Intel.
  • Per utilitzar una GPU AMD, instal·leu el connector oneAPI per a GPU AMD.
  • Per utilitzar una GPU NVIDIA, instal·leu el connector oneAPI per a les GPU NVIDIA.

Opció 1: utilitzeu la línia d'ordres
El compilador Intel® oneAPI DPC++/C++ proporciona diversos controladors:

intel-Començar-amb-the-oneAPI-DPC ++-C++-Compiler-FIG-1intel-Començar-amb-the-oneAPI-DPC ++-C++-Compiler-FIG-2

Invoqueu el compilador utilitzant la sintaxi següent:
{controlador del compilador} [opció] file1 [file2…]

Per exampLI:
icpx hello-world.cpp

Per a la compilació SYCL, utilitzeu l'opció -fsycl amb el controlador C++:
icpx -fsycl hello-world.cpp

NOTA: Quan s'utilitza -fsycl, s'assumeix -fsycl-targets=spir64 tret que -fsycl-targets s'estableixi explícitament a l'ordre.
Si us orienteu a una GPU NVIDIA o AMD, consulteu la guia d'iniciació del complement GPU corresponent per obtenir instruccions detallades de compilació:

  • Guia d'inici de oneAPI per a GPU NVIDIA
  • Guia d'inici de oneAPI per a GPU AMD

Opció 2: utilitzeu l'Eclipse* CDT
Seguiu aquests passos per invocar el compilador des de l'Eclipse* CDT.

Instal·leu el connector Intel® Compiler Eclipse CDT.

  1. Inicia Eclipse
  2. Seleccioneu Ajuda > Instal·leu programari nou
  3. Seleccioneu Afegeix per obrir el diàleg Afegeix un lloc
  4. Seleccioneu Arxiu, navegueu fins al directori /compilador/ /linux/ide_support, seleccioneu el fitxer .zip file que comença amb com.intel.dpcpp.compiler i, a continuació, seleccioneu D'acord
  5. Seleccioneu les opcions que comencen per Intel, seleccioneu Següent i seguiu les instruccions d'instal·lació
  6. Quan se us pregunti si voleu reiniciar Eclipse*, seleccioneu Sí

Creeu un projecte nou o obriu un projecte existent.

  1. Obriu un projecte existent o creeu un projecte nou a l'Eclipse
  2. Feu clic amb el botó dret a Projecte > Propietats > Construcció C/C++ > Editor de cadena d'eines
  3. Seleccioneu Intel DPC++/C++ Compiler al tauler dret

Estableix configuracions de construcció.

  1. Obriu el projecte existent a Eclipse
  2. Feu clic amb el botó dret a Projecte > Propietats > Construcció C/C++ > Configuració
  3. Creeu o gestioneu configuracions de compilació al tauler dret

Creeu un programa des de la línia d'ordres
Seguiu els passos següents per provar la instal·lació del compilador i crear un programa.intel-Començar-amb-the-oneAPI-DPC ++-C++-Compiler-FIG-3

  1. Utilitzeu un editor de text per crear un file anomenat hello-world.cpp amb el contingut següent:
  2. Compileu hello-world.cpp:
    icpx hello-world.cpp -o hello-world
    L'opció -o especifica el file nom per a la sortida generada.
  3. Ara teniu un executable anomenat hello-world que es pot executar i us donarà comentaris immediats:intel-Començar-amb-the-oneAPI-DPC ++-C++-Compiler-FIG-4

Quines sortides
Podeu dirigir i controlar la compilació amb les opcions del compilador. Per example, podeu crear l'objecte file i emet el binari final en dos passos:

  1. Compileu hello-world.cpp:intel-Començar-amb-the-oneAPI-DPC ++-C++-Compiler-FIG-5L'opció -c impedeix l'enllaç en aquest pas.
  2. Utilitzeu el compilador icpx per enllaçar el codi d'objecte de l'aplicació resultant i produir un executable:intel-Començar-amb-the-oneAPI-DPC ++-C++-Compiler-FIG-6
    L'opció -o especifica l'executable generat file nom. Consulteu Opcions del compilador per obtenir més informació sobre les opcions disponibles.

Comenceu a Windows

Abans de començar

Estableix les variables d'entorn
El compilador s'integra a les següents versions de Microsoft Visual Studio*:

  • Visual Studio 2022
  • Visual Studio 2019
  • Visual Studio 2017

NOTA El suport per a Microsoft Visual Studio 2017 està obsolet a partir de la versió Intel® oneAPI 2022.1 i s'eliminarà en una versió futura.

Per a una funcionalitat completa dins de Visual Studio, incloses la depuració i el desenvolupament, es requereix Visual Studio Community Edition o superior. Visual Studio Express Edition només permet compilacions de línia d'ordres. Per a totes les versions, cal seleccionar el suport de Microsoft C++ com a part de la instal·lació de Visual Studio. Per a Visual Studio 2017 i posteriors, heu d'utilitzar una instal·lació personalitzada per seleccionar aquesta opció.
Normalment no cal que configureu les variables d'entorn a Windows, ja que la finestra de la línia d'ordres del compilador estableix aquestes variables automàticament. Si necessiteu establir les variables d'entorn, executeu l'script d'entorn tal com es descriu a la documentació d'iniciació específica de la suite.
El directori d'instal·lació predeterminat ( ) és C:\Program Files (x86)\Intel\oneAPI.

Instal·leu els controladors de GPU (opcional)
Per desenvolupar i executar aplicacions per a les GPU Intel, primer heu d'instal·lar els darrers controladors de GPU Intel.

Opció 1: utilitzeu la línia d'ordres a Microsoft Visual Studio

El compilador Intel® oneAPI DPC++/C++ proporciona diversos controladors:intel-Començar-amb-the-oneAPI-DPC ++-C++-Compiler-FIG-7 intel-Començar-amb-the-oneAPI-DPC ++-C++-Compiler-FIG-8

Invoqueu el compilador utilitzant la sintaxi següent:intel-Començar-amb-the-oneAPI-DPC ++-C++-Compiler-FIG-9

Per invocar el compilador mitjançant la línia d'ordres des de Microsoft Visual Studio, obriu un indicador d'ordres i introduïu l'ordre de compilació. Per exampLI:intel-Començar-amb-the-oneAPI-DPC ++-C++-Compiler-FIG-10

Per a la compilació SYCL, utilitzeu l'opció -fsycl amb el controlador C++:intel-Començar-amb-the-oneAPI-DPC ++-C++-Compiler-FIG-11

NOTA: Quan s'utilitza -fsycl, s'assumeix -fsycl-targets=spir64 tret que -fsycl-targets s'estableixi explícitament a l'ordre.

Opció 2: utilitzeu Microsoft Visual Studio
Suport del projecte per al compilador Intel® DPC++/C++ a Microsoft Visual Studio
Els nous projectes de Microsoft Visual Studio per a DPC++ es configuren automàticament per utilitzar el compilador Intel® oneAPI DPC++/C++.
Els nous projectes de Microsoft Visual C++* (MSVC) s'han de configurar manualment per utilitzar el compilador Intel® oneAPI DPC++/C++.

NOTA: Els tipus de projecte CLR C++ basats en NET no són compatibles amb el compilador Intel® oneAPI DPC++/C++. Els tipus de projecte específics variaran en funció de la vostra versió de Visual Studio, per exempleample: CLR Class Library, CLR Console App o CLR Empty Project.

Utilitzeu el compilador Intel® DPC++/C++ a Microsoft Visual Studio
Els passos exactes poden variar segons la versió de Microsoft Visual Studio en ús.

  1. Creeu un projecte de Microsoft Visual C++ (MSVC) o obriu un projecte existent.
  2. A l'Explorador de solucions, seleccioneu els projectes que voleu crear amb el compilador Intel® oneAPI DPC++/C++.
  3. Obriu Projecte > Propietats.
  4. Al panell esquerre, amplieu la categoria Propietats de configuració i seleccioneu la pàgina de propietats General.
  5. Al panell dret canvieu el conjunt d'eines de la plataforma pel compilador que voleu utilitzar:
    • Per a C++ amb SYCL, seleccioneu Compilador Intel® oneAPI DPC++.
    • Per a C/C++, hi ha dos conjunts d'eines.
      Seleccioneu Intel C++ Compiler (example 2021) per invocar icx.
      Seleccioneu Intel C++ Compiler (example 19.2) per invocar icl.
      Alternativament, podeu especificar una versió del compilador com a conjunt d'eines per a totes les plataformes i configuracions compatibles dels projectes seleccionats seleccionant Projecte > Compilador Intel > Utilitza el compilador Intel oneAPI DPC++/C++.
  6. Reconstrueix, utilitzant Construcció > Només projecte > Reconstrueix per a un únic projecte o Construeix > Reconstrueix la solució per a una solució.

Seleccioneu la versió del compilador
Si teniu instal·lades diverses versions del compilador Intel® oneAPI DPC++/C++, podeu seleccionar quina versió voleu al quadre de diàleg Selecció del compilador:

  1. Seleccioneu un projecte i, a continuació, aneu a Eines > Opcions > Compiladors i biblioteques Intel > > Compiladors, on els valors són C++ o DPC++.
  2. Utilitzeu el menú desplegable del compilador seleccionat per seleccionar la versió adequada del compilador.
  3. Seleccioneu D'acord.

Torneu al compilador Microsoft Visual Studio C++
Si el vostre projecte utilitza el compilador Intel® oneAPI DPC++/C++, podeu optar per tornar al compilador Microsoft Visual C++:

  1. Seleccioneu el vostre projecte a Microsoft Visual Studio.
  2. Feu clic amb el botó dret i seleccioneu Intel Compiler > Utilitza Visual C++ al menú contextual.

Aquesta acció actualitza la solució file per utilitzar el compilador Microsoft Visual Studio C++. Totes les configuracions dels projectes afectats es netegen automàticament tret que seleccioneu No netejar els projectes. Si decidiu no netejar els projectes, haureu de reconstruir els projectes actualitzats per assegurar-vos que tota la font files es compilen amb el nou compilador.

Creeu un programa des de la línia d'ordres
Seguiu els passos següents per provar la instal·lació del compilador i crear un programa.

  1. Utilitzeu un editor de text per crear un file anomenat hello-world.cpp amb el contingut següent:
    #incloure int main() std::cout << "Hola, món!\n"; retorn 0;
  2. Compileu hello-world.cpp:
    icx hello-world.cpp
  3. Ara teniu un executable anomenat hello-world.exe que es pot executar i us donarà comentaris immediats:
    hola-world.exe

Quines sortides:
Hola, món!

Podeu dirigir i controlar la compilació amb les opcions del compilador. Per example, podeu crear l'objecte file i emet el binari final en dos passos:

  1.  Compileu hello-world.cpp:
    icx hello-world.cpp /c /Fohello-world.obj
    L'opció /c impedeix l'enllaç en aquest pas i /Fo especifica el nom de l'objecte file.
  2. Utilitzeu el compilador icx per enllaçar el codi d'objecte de l'aplicació resultant i produir un executable:
    icx hello-world.obj /Fehello-world.exe
  3. L'opció /Fe especifica l'executable generat file nom. Consulteu Opcions del compilador per obtenir més informació sobre les opcions disponibles.

Compilar i executar Sampel codi

Codi múltiple sampEls fitxers es proporcionen per al compilador Intel® oneAPI DPC++/C++ perquè pugueu explorar les funcions del compilador i familiaritzar-vos amb el seu funcionament. Per exampLI:

intel-Començar-amb-the-oneAPI-DPC ++-C++-Compiler-FIG-17intel-Començar-amb-the-oneAPI-DPC ++-C++-Compiler-FIG-18

Següents passos

  • Utilitzeu l'últim codi oneAPI Sampi seguiu juntament amb els recursos de formació Intel® oneAPI.
  • Exploreu la Guia i referència per a desenvolupadors del compilador Intel® oneAPI DPC++/C++ a l'Intel® Developer Zone.

Documents/Recursos

intel Comenceu amb el compilador oneAPI DPC ++/C++ [pdfGuia de l'usuari
Comenceu amb el compilador oneAPI DPC C, comenceu amb el compilador oneAPI DPC C

Referències

Deixa un comentari

La teva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats *