INTEL-LOGO

intel Introducción al compilador oneAPI DPC ++/C++

Intel-Comienza-con-oneAPI-DPC ++-C++-Compilador-PRODUCTO

INTRODUCCIÓN

El compilador Intel® oneAPI DPC++/C++ proporciona optimizaciones que ayudan a que sus aplicaciones se ejecuten más rápido en arquitecturas Intel® 64 en Windows* y Linux*, con soporte para los últimos estándares de lenguaje C, C++ y SYCL. Este compilador produce código optimizado que puede ejecutarse significativamente más rápido tomando ventajatage del número de núcleos y el ancho de registro de vector en constante aumento en los procesadores Intel® Xeon® y procesadores compatibles. Intel® Compiler lo ayudará a aumentar el rendimiento de las aplicaciones a través de optimizaciones superiores y vectorización de datos múltiples de instrucción única (SIMD), integración con bibliotecas de rendimiento Intel® y aprovechando el modelo de programación paralela OpenMP* 5.0/5.1.

El compilador Intel® oneAPI DPC++/C++ compila la fuente SYCL* basada en C++ files para una amplia gama de aceleradores de cómputo.
El compilador Intel® oneAPI DPC++/C++ es parte de los kits de herramientas Intel® oneAPI.

Encuentra más

Descripción del contenido y enlaces
Notas de la versión                                  Visite la página Notas de la versión para conocer los problemas conocidos y la información más actualizada.

Guía de programación de Intel® oneAPI    Proporciona detalles sobre el compilador Intel® oneAPI DPC++/C++

modelo de programación, incluidos detalles sobre la descarga de SYCL* y OpenMP*, programación para varios aceleradores de destino e introducciones a las bibliotecas Intel® oneAPI.

Intel® una API DPC++/C++                Explore las funciones y la configuración del compilador Intel® oneAPI DPC++/C++ y Guía del desarrollador del compilador y          obtener información más detallada sobre las opciones del compilador, los atributos y Referencia                                        más.

oneAPI Código SampLos                      Explore los últimos códigos oneAPIampLes.

•               Intel® oneAPI Datos paralelos C+      Haga preguntas y encuentre respuestas en Intel® oneAPI Data Parallel C+

+ Foro                                      + y foros del compilador Intel® C++.

•               Foro del compilador Intel® C++

 

Intel® una API DPC++/C++                Explore tutoriales, materiales de capacitación y otros Intel® oneAPI Documentación del compilador                  Documentación del compilador DPC++/C++.

Especificación SYCL Versión 1.2.1       La especificación SYCL explica cómo SYCL integra dispositivos OpenCL PDF                                                  con C++ moderno.

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

La biblioteca GNU* C++ – Uso         La documentación de la biblioteca GNU* C++ sobre el uso de ABI dual. Doble ITB

Capas para Proyecto Yocto*                  Agregue componentes de oneAPI a una compilación de proyecto de Yocto usando la meta-intel

Capas.

Avisos y exenciones de responsabilidad
Las tecnologías Intel pueden requerir la activación de hardware, software o servicio habilitado.

  • Ningún producto o componente puede ser absolutamente seguro.
  • Sus costos y resultados pueden variar.

© Corporación Intel. Intel, el logotipo de Intel y otras marcas de Intel son marcas comerciales de Intel Corporation o sus subsidiarias. Otros nombres y marcas pueden reclamarse como propiedad de terceros.

Este documento no concede ninguna licencia (expresa o implícita, por impedimento legal o de otro modo) sobre ningún derecho de propiedad intelectual.
Los productos descritos pueden contener defectos de diseño o errores conocidos como erratas que pueden hacer que el producto se desvíe de las especificaciones publicadas. Las erratas caracterizadas actuales están disponibles a pedido.

Intel renuncia a todas las garantías expresas e implícitas, incluidas, entre otras, las garantías implícitas de comerciabilidad, idoneidad para un propósito particular y no infracción, así como cualquier garantía que surja del curso del desempeño, el curso de la negociación o el uso en el comercio.

Empezar en Linux

Antes de empezar

Establecer variables de entorno
Antes de poder usar el compilador, primero debe establecer las variables de entorno obteniendo el script de entorno mediante la utilidad de inicialización. Esto inicializa todas las herramientas en un solo paso.

  1. Determine su directorio de instalación, :
    • a. Si su compilador fue instalado en la ubicación predeterminada por un usuario root o sudo, el compilador se instalará en/opt/intel/oneapi. En este caso, es /opt/intel/oneapi.
    • b. Para usuarios no root, se utiliza su directorio de inicio en intel/oneapi. En este caso,
      será $HOME/intel/oneapi.
    • c. Para usuarios de clústeres o empresas, es posible que su equipo de administración haya instalado los compiladores en una red compartida file sistema. Consulte con su personal de administración local para conocer la ubicación de la instalación
      ( ).
  2. Obtenga el script de configuración del entorno para su shell:
    • a. bash: fuente /setvars.sh intel64
    • b. csh/tcsh: fuente /setvars.csh intel64

Instale controladores o complementos de GPU (opcional)
Puede desarrollar aplicaciones oneAPI utilizando C++ y SYCL* que se ejecutarán en GPU Intel, AMD* o NVIDIA*. Para desarrollar y ejecutar aplicaciones para GPU específicas, primero debe instalar los controladores o complementos correspondientes:

  • Para utilizar una GPU Intel, instale los controladores de GPU Intel más recientes.
  • Para usar una GPU AMD, instale el complemento oneAPI para GPU AMD.
  • Para usar una GPU NVIDIA, instale el complemento oneAPI para GPU NVIDIA.

Opción 1: usar la línea de comandos
El compilador Intel® oneAPI DPC++/C++ proporciona varios controladores:

Intel-Comienza-con-oneAPI-DPC ++-C++-Compilador-FIG-1Intel-Comienza-con-oneAPI-DPC ++-C++-Compilador-FIG-2

Invoque el compilador usando la siguiente sintaxis:
{controlador del compilador} [opción] file1 [file2…]

Por ejemploampen:
icpx hola-mundo.cpp

Para la compilación SYCL, use la opción -fsycl con el controlador C++:
icpx -fsycl hola-mundo.cpp

NOTA: Cuando se usa -fsycl, se asume -fsycl-targets=spir64 a menos que -fsycl-targets se establezca explícitamente en el comando.
Si tiene como objetivo una GPU NVIDIA o AMD, consulte la guía de inicio del complemento de GPU correspondiente para obtener instrucciones detalladas de compilación:

  • oneAPI para GPU NVIDIA Guía de inicio
  • oneAPI para GPU AMD Guía de inicio

Opción 2: Usar Eclipse* CDT
Siga estos pasos para invocar el compilador desde Eclipse* CDT.

Instale el complemento Intel® Compiler Eclipse CDT.

  1. Iniciar Eclipse
  2. Seleccione Ayuda > Instalar nuevo software
  3. Seleccione Agregar para abrir el cuadro de diálogo Agregar sitio
  4. Seleccione Archivar, busque el directorio /compilador/ /linux/ide_support, seleccione el .zip file que comienza con com.intel.dpcpp.compiler, luego seleccione Aceptar
  5. Seleccione las opciones que comienzan con Intel, seleccione Siguiente, luego siga las instrucciones de instalación
  6. Cuando se le pregunte si desea reiniciar Eclipse*, seleccione Sí

Cree un nuevo proyecto o abra un proyecto existente.

  1. Abra un proyecto existente o cree un nuevo proyecto en Eclipse
  2. Haga clic con el botón derecho en Proyecto > Propiedades > Compilación C/C++ > Editor de cadena de herramientas
  3. Seleccione Intel DPC++/C++ Compiler en el panel derecho

Establecer configuraciones de compilación.

  1. Abrir proyecto existente en Eclipse
  2. Haga clic con el botón derecho en Proyecto > Propiedades > Compilación C/C++ > Configuración
  3. Cree o administre configuraciones de compilación en el panel derecho

Cree un programa desde la línea de comandos
Utilice los siguientes pasos para probar la instalación de su compilador y crear un programa.Intel-Comienza-con-oneAPI-DPC ++-C++-Compilador-FIG-3

  1. Utilice un editor de texto para crear un file llamado hello-world.cpp con los siguientes contenidos:
  2. Compile hola-mundo.cpp:
    icpx hola-mundo.cpp -o hola-mundo
    La opción -o especifica el file nombre de la salida generada.
  3. Ahora tiene un ejecutable llamado hello-world que se puede ejecutar y le dará retroalimentación inmediata:Intel-Comienza-con-oneAPI-DPC ++-C++-Compilador-FIG-4

Que salidas
Puede dirigir y controlar la compilación con las opciones del compilador. por ejemploample, puede crear el objeto file y generar el binario final en dos pasos:

  1. Compile hola-mundo.cpp:Intel-Comienza-con-oneAPI-DPC ++-C++-Compilador-FIG-5La opción -c evita la vinculación en este paso.
  2. Utilice el compilador icpx para vincular el código objeto de la aplicación resultante y generar un ejecutable:Intel-Comienza-con-oneAPI-DPC ++-C++-Compilador-FIG-6
    La opción -o especifica el ejecutable generado file nombre. Consulte Opciones del compilador para obtener detalles sobre las opciones disponibles.

Empezar en Windows

Antes de empezar

Establecer variables de entorno
El compilador se integra en las siguientes versiones de Microsoft Visual Studio*:

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

NOTA La compatibilidad con Microsoft Visual Studio 2017 está obsoleta a partir de la versión Intel® oneAPI 2022.1 y se eliminará en una versión futura.

Para una funcionalidad completa dentro de Visual Studio, incluida la depuración y el desarrollo, se requiere Visual Studio Community Edition o superior. Visual Studio Express Edition solo permite compilaciones de línea de comandos. Para todas las versiones, se debe seleccionar la compatibilidad con Microsoft C++ como parte de la instalación de Visual Studio. Para Visual Studio 2017 y versiones posteriores, debe usar una instalación personalizada para seleccionar esta opción.
Por lo general, no necesita establecer las variables de entorno en Windows, ya que la ventana de línea de comandos del compilador establece estas variables automáticamente. Si necesita configurar las variables de entorno, ejecute el script de entorno como se describe en la documentación de introducción específica de la suite.
El directorio de instalación predeterminado ( ) es C:\Programa Files (x86)\Intel\oneAPI.

Instalar controladores de GPU (opcional)
Para desarrollar y ejecutar aplicaciones para GPU Intel, primero debe instalar los controladores de GPU Intel más recientes.

Opción 1: use la línea de comandos en Microsoft Visual Studio

El compilador Intel® oneAPI DPC++/C++ proporciona varios controladores:Intel-Comienza-con-oneAPI-DPC ++-C++-Compilador-FIG-7 Intel-Comienza-con-oneAPI-DPC ++-C++-Compilador-FIG-8

Invoque el compilador usando la siguiente sintaxis:Intel-Comienza-con-oneAPI-DPC ++-C++-Compilador-FIG-9

Para invocar el compilador usando la línea de comando desde Microsoft Visual Studio, abra un símbolo del sistema e ingrese su comando de compilación. por ejemploampen:Intel-Comienza-con-oneAPI-DPC ++-C++-Compilador-FIG-10

Para la compilación SYCL, use la opción -fsycl con el controlador C++:Intel-Comienza-con-oneAPI-DPC ++-C++-Compilador-FIG-11

NOTA: Cuando se usa -fsycl, se asume -fsycl-targets=spir64 a menos que -fsycl-targets se establezca explícitamente en el comando.

Opción 2: usar Microsoft Visual Studio
Compatibilidad con proyectos para el compilador Intel® DPC++/C++ en Microsoft Visual Studio
Los nuevos proyectos de Microsoft Visual Studio para DPC++ se configuran automáticamente para utilizar el compilador Intel® oneAPI DPC++/C++.
Los nuevos proyectos de Microsoft Visual C++* (MSVC) deben configurarse manualmente para utilizar el compilador Intel® oneAPI DPC++/C++.

NOTA: Los tipos de proyecto CLR C++ basados ​​en NET no son compatibles con el compilador Intel® oneAPI DPC++/C++. Los tipos de proyectos específicos variarán según su versión de Visual Studio, por ejemploample: biblioteca de clases de CLR, aplicación de consola de CLR o proyecto vacío de CLR.

Utilice el compilador Intel® DPC++/C++ en Microsoft Visual Studio
Los pasos exactos pueden variar según la versión de Microsoft Visual Studio en uso.

  1. Cree un proyecto de Microsoft Visual C++ (MSVC) o abra un proyecto existente.
  2. En el Explorador de soluciones, seleccione los proyectos para compilar con el compilador Intel® oneAPI DPC++/C++.
  3. Abra Proyecto > Propiedades.
  4. En el panel izquierdo, expanda la categoría Propiedades de configuración y seleccione la página de propiedades General.
  5. En el panel derecho, cambie el conjunto de herramientas de la plataforma al compilador que desea usar:
    • Para C++ con SYCL, seleccione Compilador Intel® oneAPI DPC++.
    • Para C/C++, hay dos conjuntos de herramientas.
      Seleccione Compilador Intel C++ (example 2021) para invocar icx.
      Seleccione Compilador Intel C++ (example 19.2) para invocar icl.
      Como alternativa, puede especificar una versión del compilador como conjunto de herramientas para todas las plataformas y configuraciones admitidas de los proyectos seleccionados seleccionando Proyecto > Intel Compiler > Usar Intel oneAPI DPC++/C++ Compiler.
  6. Reconstruya, usando Generar > Solo proyecto > Reconstruir para un solo proyecto o Generar > Reconstruir solución para una solución.

Seleccione la versión del compilador
Si tiene instaladas varias versiones del compilador Intel® oneAPI DPC++/C++, puede seleccionar la versión que desea en el cuadro de diálogo Selección del compilador:

  1. Seleccione un proyecto, luego vaya a Herramientas > Opciones > Compiladores y bibliotecas Intel > > Compiladores, donde los valores son C++ o DPC++.
  2. Utilice el menú desplegable Compilador seleccionado para seleccionar la versión adecuada del compilador.
  3. Seleccione Aceptar.

Volver al compilador de Microsoft Visual Studio C++
Si su proyecto utiliza el compilador Intel® oneAPI DPC++/C++, puede optar por volver al compilador de Microsoft Visual C++:

  1. Seleccione su proyecto en Microsoft Visual Studio.
  2. Haga clic con el botón derecho y seleccione Compilador Intel > Usar Visual C++ en el menú contextual.

Esta acción actualiza la solución. file para usar el compilador Microsoft Visual Studio C++. Todas las configuraciones de los proyectos afectados se limpian automáticamente a menos que seleccione No limpiar proyecto(s). Si elige no limpiar los proyectos, deberá reconstruir los proyectos actualizados para garantizar que todas las fuentes files se compilan con el nuevo compilador.

Cree un programa desde la línea de comandos
Utilice los siguientes pasos para probar la instalación de su compilador y crear un programa.

  1. Utilice un editor de texto para crear un file llamado hello-world.cpp con los siguientes contenidos:
    #incluir int main() std::cout << “¡Hola mundo!\n”; devolver 0;
  2. Compile hola-mundo.cpp:
    icx hola-mundo.cpp
  3. Ahora tiene un ejecutable llamado hello-world.exe que se puede ejecutar y le dará una respuesta inmediata:
    hola-mundo.exe

¿Qué salidas:
¡Hola Mundo!

Puede dirigir y controlar la compilación con las opciones del compilador. por ejemploample, puede crear el objeto file y generar el binario final en dos pasos:

  1.  Compile hola-mundo.cpp:
    icx hola-mundo.cpp /c /Fohello-mundo.obj
    La opción /c evita la vinculación en este paso y /Fo especifica el nombre del objeto file.
  2. Utilice el compilador icx para vincular el código objeto de la aplicación resultante y generar un ejecutable:
    icx hola-mundo.obj /Fehello-mundo.exe
  3. La opción /Fe especifica el ejecutable generado file nombre. Consulte Opciones del compilador para obtener detalles sobre las opciones disponibles.

Compilar y ejecutar Sampel código

Múltiples códigosampSe proporcionan archivos para el compilador Intel® oneAPI DPC++/C++ para que pueda explorar las funciones del compilador y familiarizarse con su funcionamiento. por ejemploampen:

Intel-Comienza-con-oneAPI-DPC ++-C++-Compilador-FIG-17Intel-Comienza-con-oneAPI-DPC ++-C++-Compilador-FIG-18

Próximos pasos

  • Utilice el último código oneAPI Samparchivos y siga los recursos de capacitación de Intel® oneAPI.
  • Explore la guía y la referencia para desarrolladores del compilador Intel® oneAPI DPC++/C++ en Intel® Developer Zone.

Documentos / Recursos

intel Introducción al compilador oneAPI DPC ++/C++ [pdf] Guía del usuario
Comience a utilizar el compilador C de oneAPI DPC Comience a utilizar el compilador C de oneAPI DPC

Referencias

Deja un comentario

Su dirección de correo electrónico no será publicada. Los campos obligatorios están marcados *