Intel-LOGO

intel Premiers pas avec le compilateur oneAPI DPC ++/C++

Intel-Démarrez-avec-le-oneAPI-DPC ++-C++-Compiler-PRODUCT

INTRODUCTION

Le compilateur Intel® oneAPI DPC++/C++ fournit des optimisations qui permettent à vos applications de s'exécuter plus rapidement sur les architectures Intel® 64 sous Windows* et Linux*, avec prise en charge des dernières normes de langage C, C++ et SYCL. Ce compilateur produit un code optimisé qui peut s'exécuter beaucoup plus rapidement en prenant avantagetage du nombre de cœurs et de la largeur de registre vectoriel en constante augmentation dans les processeurs Intel® Xeon® et les processeurs compatibles. Le compilateur Intel® vous aidera à améliorer les performances des applications grâce à des optimisations supérieures et à la vectorisation SIMD (Single Instruction Multiple Data), à l'intégration avec les bibliothèques de performances Intel® et à l'exploitation du modèle de programmation parallèle OpenMP* 5.0/5.1.

Le compilateur Intel® oneAPI DPC++/C++ compile la source SYCL* basée sur C++ files pour une large gamme d'accélérateurs de calcul.
Le compilateur Intel® oneAPI DPC++/C++ fait partie des kits d'outils Intel® oneAPI.

En savoir plus

Description du contenu et liens
Notes de mise à jour                                  Visitez la page des notes de version pour les problèmes connus et les informations les plus récentes.

Guide de programmation Intel® oneAPI    Fournit des détails sur le compilateur Intel® oneAPI DPC++/C++

modèle de programmation, y compris des détails sur le déchargement SYCL* et OpenMP*, la programmation pour divers accélérateurs cibles et des introductions aux bibliothèques Intel® oneAPI.

Intel® oneAPI DPC++/C++                Explorez les fonctionnalités et la configuration du compilateur Intel® oneAPI DPC++/C++ et Guide du développeur du compilateur et          obtenir des informations plus détaillées sur les options du compilateur, les attributs et Référence                                        plus.

code oneAPI Samples                      Explorez les derniers codes oneAPIamples.

•               Intel® oneAPI Données Parallèle C+      Posez des questions et trouvez des réponses dans Intel® oneAPI Data Parallel C+

+Forum                                      + et les forums du compilateur Intel® C++.

•               Forum du compilateur Intel® C++

 

Intel® oneAPI DPC++/C++                Explorez des didacticiels, des supports de formation et d'autres Intel® oneAPI Documentation du compilateur                  Documentation du compilateur DPC++/C++.

Spécification SYCL Version 1.2.1       La spécification SYCL explique comment SYCL intègre les appareils OpenCL PDF                                                  avec le C++ moderne.

https://www.khronos.org/sycl/         Un plusview du SYCL.

La bibliothèque GNU* C++ – Utilisation         La documentation de la bibliothèque GNU* C++ sur l'utilisation de la double ABI. Double ABI

Calques pour Yocto* Project                  Ajouter des composants oneAPI à un build de projet Yocto en utilisant la méta-intel

couches.

Avis et avis de non-responsabilité
Les technologies Intel peuvent nécessiter une activation matérielle, logicielle ou de service activée.

  • Aucun produit ou composant ne peut être absolument sûr.
  • Vos coûts et vos résultats peuvent varier.

©Intel Corporation. Intel, le logo Intel et les autres marques Intel sont des marques commerciales d'Intel Corporation ou de ses filiales. D'autres noms et marques peuvent être revendiqués comme la propriété d'autrui.

Aucune licence (expresse ou implicite, par préclusion ou autre) sur aucun droit de propriété intellectuelle n'est accordée par ce document.
Les produits décrits peuvent contenir des défauts de conception ou des erreurs appelés errata qui peuvent entraîner un écart par rapport aux spécifications publiées. Les errata caractérisés actuels sont disponibles sur demande.

Intel décline toute garantie expresse et implicite, y compris, sans s'y limiter, les garanties implicites de qualité marchande, d'adéquation à un usage particulier et d'absence de contrefaçon, ainsi que toute garantie découlant du cours des performances, du cours des transactions ou de l'utilisation dans le commerce.

Démarrer sur Linux

Avant de commencer

Définir les variables d'environnement
Avant de pouvoir utiliser le compilateur, vous devez d'abord définir les variables d'environnement en générant le script d'environnement à l'aide de l'utilitaire d'initialisation. Cela initialise tous les outils en une seule étape.

  1. Déterminez votre répertoire d'installation, :
    • a. Si votre compilateur a été installé à l'emplacement par défaut par un utilisateur root ou un utilisateur sudo, le compilateur sera installé sous/opt/intel/oneapi. Dans ce cas, est /opt/intel/oneapi.
    • b. Pour les utilisateurs non root, votre répertoire personnel sous intel/oneapi est utilisé. Dans ce cas,
      sera $HOME/intel/oneapi.
    • c. Pour les utilisateurs de cluster ou d'entreprise, votre équipe d'administration peut avoir installé les compilateurs sur un réseau partagé file système. Vérifiez auprès de votre personnel administratif local pour l'emplacement de l'installation
      ( ).
  2. Sourcez le script de configuration de l'environnement pour votre shell :
    • a. bash : source /setvars.sh intel64
    • b. csh/tcsh : source /setvars.csh intel64

Installer les pilotes GPU ou les plug-ins (facultatif)
Vous pouvez développer des applications oneAPI à l'aide de C++ et SYCL* qui s'exécuteront sur des GPU Intel, AMD* ou NVIDIA*. Pour développer et exécuter des applications pour des GPU spécifiques, vous devez d'abord installer les pilotes ou plug-ins correspondants :

  • Pour utiliser un GPU Intel, installez les derniers pilotes GPU Intel.
  • Pour utiliser un GPU AMD, installez le plug-in oneAPI for AMD GPUs.
  • Pour utiliser un GPU NVIDIA, installez le plug-in oneAPI for NVIDIA GPUs.

Option 1 : Utiliser la ligne de commande
Le compilateur Intel® oneAPI DPC++/C++ fournit plusieurs pilotes :

Intel-Démarrez-avec-le-oneAPI-DPC ++-C++-Compiler-FIG-1Intel-Démarrez-avec-le-oneAPI-DPC ++-C++-Compiler-FIG-2

Appelez le compilateur en utilisant la syntaxe suivante :
{pilote du compilateur} [option] file1 [file2…]

Par exempleample:
icpx bonjour-monde.cpp

Pour la compilation SYCL, utilisez l'option -fsycl avec le pilote C++ :
icpx -fsycl bonjour-monde.cpp

NOTE: Lors de l'utilisation de -fsycl, -fsycl-targets=spir64 est supposé sauf si -fsycl-targets est explicitement défini dans la commande.
Si vous ciblez un GPU NVIDIA ou AMD, reportez-vous au guide de démarrage du plug-in GPU correspondant pour obtenir des instructions de compilation détaillées :

  • Guide de démarrage oneAPI pour les GPU NVIDIA
  • Guide de démarrage oneAPI pour les GPU AMD

Option 2 : Utiliser le CDT Eclipse*
Suivez ces étapes pour appeler le compilateur à partir du CDT Eclipse*.

Installez le plug-in Intel® Compiler Eclipse CDT.

  1. Démarrer Eclipse
  2. Sélectionnez Aide > Installer un nouveau logiciel
  3. Sélectionnez Ajouter pour ouvrir la boîte de dialogue Ajouter un site
  4. Sélectionnez Archiver, accédez au répertoire /compilateur/ /linux/ide_support, sélectionnez le .zip file qui commence par com.intel.dpcpp.compiler, puis sélectionnez OK
  5. Sélectionnez les options commençant par Intel, sélectionnez Suivant, puis suivez les instructions d'installation
  6. Lorsqu'on vous demande si vous voulez redémarrer Eclipse*, sélectionnez Oui

Créez un nouveau projet ou ouvrez un projet existant.

  1. Ouvrir un projet existant ou créer un nouveau projet sur Eclipse
  2. Clic droit sur Projet > Propriétés > Construction C/C++ > Editeur de chaîne d'outils
  3. Sélectionnez le compilateur Intel DPC++/C++ dans le panneau de droite

Définissez les configurations de construction.

  1. Ouvrir un projet existant sur Eclipse
  2. Faites un clic droit sur Projet > Propriétés > Construction C/C++ > Paramètres
  3. Créer ou gérer des configurations de build dans le panneau de droite

Créer un programme à partir de la ligne de commande
Utilisez les étapes suivantes pour tester l'installation de votre compilateur et créer un programme.Intel-Démarrez-avec-le-oneAPI-DPC ++-C++-Compiler-FIG-3

  1. Utilisez un éditeur de texte pour créer un file appelé hello-world.cpp avec le contenu suivant :
  2. Compilez hello-world.cpp :
    icpx bonjour-monde.cpp -o bonjour-monde
    L'option -o spécifie le file nom de la sortie générée.
  3. Vous avez maintenant un exécutable appelé hello-world qui peut être exécuté et donnera un retour immédiat :Intel-Démarrez-avec-le-oneAPI-DPC ++-C++-Compiler-FIG-4

Quelles sorties
Vous pouvez diriger et contrôler la compilation avec les options du compilateur. Par exempleample, vous pouvez créer l'objet file et sortir le binaire final en deux étapes :

  1. Compilez hello-world.cpp :Intel-Démarrez-avec-le-oneAPI-DPC ++-C++-Compiler-FIG-5L'option -c empêche la liaison à cette étape.
  2. Utilisez le compilateur icpx pour lier le code de l'objet d'application résultant et générer un exécutable :Intel-Démarrez-avec-le-oneAPI-DPC ++-C++-Compiler-FIG-6
    L'option -o spécifie l'exécutable généré file nom. Reportez-vous à Options du compilateur pour plus de détails sur les options disponibles.

Démarrer sur Windows

Avant de commencer

Définir les variables d'environnement
Le compilateur s'intègre dans les versions suivantes de Microsoft Visual Studio* :

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

NOTE La prise en charge de Microsoft Visual Studio 2017 est obsolète à partir de la version Intel® oneAPI 2022.1 et sera supprimée dans une future version.

Pour bénéficier de toutes les fonctionnalités de Visual Studio, y compris le débogage et le développement, Visual Studio Community Edition ou supérieur est requis. Visual Studio Express Edition n'autorise que les builds en ligne de commande. Pour toutes les versions, la prise en charge de Microsoft C++ doit être sélectionnée dans le cadre de l'installation de Visual Studio. Pour Visual Studio 2017 et versions ultérieures, vous devez utiliser une installation personnalisée pour sélectionner cette option.
Vous n'avez généralement pas besoin de définir les variables d'environnement sous Windows, car la fenêtre de ligne de commande du compilateur définit automatiquement ces variables pour vous. Si vous devez définir les variables d'environnement, exécutez le script d'environnement comme décrit dans la documentation de démarrage spécifique à la suite.
Le répertoire d'installation par défaut ( ) est C:\Programme Files (x86)\Intel\oneAPI.

Installer les pilotes GPU (facultatif)
Pour développer et exécuter des applications pour les GPU Intel, vous devez d'abord installer les derniers pilotes GPU Intel.

Option 1 : Utiliser la ligne de commande dans Microsoft Visual Studio

Le compilateur Intel® oneAPI DPC++/C++ fournit plusieurs pilotes :Intel-Démarrez-avec-le-oneAPI-DPC ++-C++-Compiler-FIG-7 Intel-Démarrez-avec-le-oneAPI-DPC ++-C++-Compiler-FIG-8

Appelez le compilateur en utilisant la syntaxe suivante :Intel-Démarrez-avec-le-oneAPI-DPC ++-C++-Compiler-FIG-9

Pour appeler le compilateur à l'aide de la ligne de commande à partir de Microsoft Visual Studio, ouvrez une invite de commande et entrez votre commande de compilation. Par exempleample:Intel-Démarrez-avec-le-oneAPI-DPC ++-C++-Compiler-FIG-10

Pour la compilation SYCL, utilisez l'option -fsycl avec le pilote C++ :Intel-Démarrez-avec-le-oneAPI-DPC ++-C++-Compiler-FIG-11

NOTE: Lors de l'utilisation de -fsycl, -fsycl-targets=spir64 est supposé sauf si -fsycl-targets est explicitement défini dans la commande.

Option 2 : Utiliser Microsoft Visual Studio
Prise en charge du projet pour le compilateur Intel® DPC++/C++ dans Microsoft Visual Studio
Les nouveaux projets Microsoft Visual Studio pour DPC++ sont automatiquement configurés pour utiliser le compilateur Intel® oneAPI DPC++/C++.
Les nouveaux projets Microsoft Visual C++* (MSVC) doivent être configurés manuellement pour utiliser le compilateur Intel® oneAPI DPC++/C++.

NOTE: Les types de projets CLR C++ basés sur NET ne sont pas pris en charge par le compilateur Intel® oneAPI DPC++/C++. Les types de projets spécifiques varient en fonction de votre version de Visual Studio, par exempleample : bibliothèque de classes CLR, application console CLR ou projet vide CLR.

Utiliser le compilateur Intel® DPC++/C++ dans Microsoft Visual Studio
Les étapes exactes peuvent varier en fonction de la version de Microsoft Visual Studio utilisée.

  1. Créez un projet Microsoft Visual C++ (MSVC) ou ouvrez un projet existant.
  2. Dans l'Explorateur de solutions, sélectionnez le ou les projets à générer avec le compilateur Intel® oneAPI DPC++/C++.
  3. Ouvrez Projet > Propriétés .
  4. Dans le volet de gauche, développez la catégorie Propriétés de configuration et sélectionnez la page de propriétés Général.
  5. Dans le volet de droite, remplacez le Platform Toolset par le compilateur que vous souhaitez utiliser :
    • Pour C++ avec SYCL, sélectionnez le compilateur Intel® oneAPI DPC++.
    • Pour C/C++, il existe deux jeux d'outils.
      Sélectionnez le compilateur Intel C++ (example 2021) pour invoquer icx.
      Sélectionnez le compilateur Intel C++ (example 19.2) pour invoquer icl.
      Vous pouvez également spécifier une version du compilateur comme ensemble d'outils pour toutes les plates-formes et configurations prises en charge du ou des projets sélectionnés en sélectionnant Projet > Compilateur Intel > Utiliser le compilateur Intel oneAPI DPC++/C++.
  6. Reconstruire, en utilisant soit Build > Project only > Rebuild pour un seul projet, soit Build > Rebuild Solution pour une solution.

Sélectionnez la version du compilateur
Si plusieurs versions du compilateur Intel® oneAPI DPC++/C++ sont installées, vous pouvez sélectionner la version souhaitée dans la boîte de dialogue Sélection du compilateur :

  1. Sélectionnez un projet, puis accédez à Outils > Options > Compilateurs et bibliothèques Intel > > Compilateurs, où les valeurs sont C++ ou DPC++.
  2. Utilisez le menu déroulant Compilateur sélectionné pour sélectionner la version appropriée du compilateur.
  3. Sélectionnez OK.

Revenez au compilateur Microsoft Visual Studio C++
Si votre projet utilise le compilateur Intel® oneAPI DPC++/C++, vous pouvez choisir de revenir au compilateur Microsoft Visual C++ :

  1. Sélectionnez votre projet dans Microsoft Visual Studio.
  2. Cliquez avec le bouton droit et sélectionnez Compilateur Intel > Utiliser Visual C++ dans le menu contextuel.

Cette action met à jour la solution file pour utiliser le compilateur Microsoft Visual Studio C++. Toutes les configurations des projets concernés sont automatiquement nettoyées, sauf si vous sélectionnez Ne pas nettoyer le(s) projet(s). Si vous choisissez de ne pas nettoyer les projets, vous devrez reconstruire les projets mis à jour pour vous assurer que toutes les sources files sont compilés avec le nouveau compilateur.

Créer un programme à partir de la ligne de commande
Utilisez les étapes suivantes pour tester l'installation de votre compilateur et créer un programme.

  1. Utilisez un éditeur de texte pour créer un file appelé hello-world.cpp avec le contenu suivant :
    #inclure int main() std::cout << "Bonjour, monde !\n" ; renvoie 0 ;
  2. Compilez hello-world.cpp :
    icx bonjour-monde.cpp
  3. Vous avez maintenant un exécutable appelé hello-world.exe qui peut être exécuté et vous donnera un retour immédiat :
    bonjour-monde.exe

Quelles sorties :
Bonjour le monde!

Vous pouvez diriger et contrôler la compilation avec les options du compilateur. Par exempleample, vous pouvez créer l'objet file et sortir le binaire final en deux étapes :

  1.  Compilez hello-world.cpp :
    icx bonjour-monde.cpp /c /Fohello-monde.obj
    L'option /c empêche la liaison à cette étape et /Fo spécifie le nom de l'objet file.
  2. Utilisez le compilateur icx pour lier le code de l'objet d'application résultant et générer un exécutable :
    icx bonjour-monde.obj /Fehello-monde.exe
  3. L'option /Fe spécifie l'exécutable généré file nom. Reportez-vous à Options du compilateur pour plus de détails sur les options disponibles.

Compiler et exécuter Sample code

Plusieurs codesampLes fichiers sont fournis pour le compilateur Intel® oneAPI DPC++/C++ afin que vous puissiez explorer les fonctionnalités du compilateur et vous familiariser avec son fonctionnement. Par exempleample:

Intel-Démarrez-avec-le-oneAPI-DPC ++-C++-Compiler-FIG-17Intel-Démarrez-avec-le-oneAPI-DPC ++-C++-Compiler-FIG-18

Prochaines étapes

  • Utilisez le dernier API Code Sampet suivez les ressources de formation Intel® oneAPI.
  • Explorez le guide et référence du développeur du compilateur Intel® oneAPI DPC++/C++ sur la zone des développeurs Intel®.

Documents / Ressources

intel Premiers pas avec le compilateur oneAPI DPC ++/C++ [pdf] Guide de l'utilisateur
Démarrez avec le compilateur oneAPI DPC C, Démarrez avec le compilateur oneAPI DPC C

Références

Laisser un commentaire

Votre adresse email ne sera pas publiée. Les champs obligatoires sont marqués *