intel-LOGO

intel Comece com o compilador oneAPI DPC ++/C++

Intel-Get-Started-with-the-oneAPI-DPC ++-C++-Compiler-PRODUCT

INTRODUÇÃO

O compilador Intel® oneAPI DPC++/C++ fornece otimizações que ajudam seus aplicativos a serem executados mais rapidamente nas arquiteturas Intel® 64 no Windows* e Linux*, com suporte para os mais recentes padrões de linguagem C, C++ e SYCL. Este compilador produz código otimizado que pode ser executado significativamente mais rápido usando o advantage da contagem de núcleos cada vez maior e largura de registro de vetor em processadores Intel® Xeon® e processadores compatíveis. O compilador Intel® ajudará você a aumentar o desempenho do aplicativo por meio de otimizações superiores e vetorização de dados múltiplos de instrução única (SIMD), integração com bibliotecas de desempenho Intel® e alavancando o modelo de programação paralela OpenMP* 5.0/5.1.

O compilador Intel® oneAPI DPC++/C++ compila a fonte SYCL* baseada em C++ files para uma ampla variedade de aceleradores de computação.
O compilador Intel® oneAPI DPC++/C++ faz parte dos kits de ferramentas Intel® oneAPI.

Encontre mais

Descrição do conteúdo e links
Notas de Lançamento                                  Visite a página Notas de versão para problemas conhecidos e as informações mais atualizadas.

Guia de programação Intel® oneAPI    Fornece detalhes sobre o compilador Intel® oneAPI DPC++/C++

modelo de programação, incluindo detalhes sobre o descarregamento SYCL* e OpenMP*, programação para vários aceleradores de destino e introduções às bibliotecas Intel® oneAPI.

Intel® oneAPI DPC++/C++                Explore os recursos do compilador Intel® oneAPI DPC++/C++ e configure e Guia do desenvolvedor do compilador e          obter informações mais detalhadas sobre as opções do compilador, atributos e Referência                                        mais.

código oneAPI Sampos                      Explore os códigos oneAPI mais recentesamples.

•               Dados Intel® oneAPI paralelos C+      Faça perguntas e encontre respostas no Intel® oneAPI Data Parallel C+

+ Fórum                                      + e fóruns do compilador Intel® C++.

•               Fórum do compilador Intel® C++

 

Intel® oneAPI DPC++/C++                Explore tutoriais, materiais de treinamento e outros Intel® oneAPI Documentação do compilador                  Documentação do compilador DPC++/C++.

Especificação SYCL Versão 1.2.1       A especificação SYCL explica como SYCL integra dispositivos OpenCL PDF                                                  com C++ moderno.

https://www.khronos.org/sycl/         Um fimview da SYCL.

A Biblioteca GNU* C++ – Usando         A documentação da biblioteca GNU* C++ sobre o uso da ABI dupla. ABI dupla

Camadas para o Projeto Yocto*                  Adicionar componentes oneAPI a um build de projeto Yocto usando o meta-intel

camadas.

Avisos e isenções de responsabilidade
As tecnologias Intel podem exigir ativação de hardware, software ou serviço habilitada.

  • Nenhum produto ou componente pode ser absolutamente seguro.
  • Seus custos e resultados podem variar.

© Intel Corporation. Intel, o logotipo Intel e outras marcas Intel são marcas comerciais da Intel Corporation ou de suas subsidiárias. Outros nomes e marcas podem ser reivindicados como propriedade de terceiros.

Nenhuma licença (expressa ou implícita, por preclusão ou de outra forma) para quaisquer direitos de propriedade intelectual é concedida por este documento.
Os produtos descritos podem conter defeitos de projeto ou erros conhecidos como errata, que podem fazer com que o produto se desvie das especificações publicadas. Erratas caracterizadas atuais estão disponíveis mediante solicitação.

A Intel se isenta de todas as garantias expressas e implícitas, incluindo, sem limitação, as garantias implícitas de comercialização, adequação a uma finalidade específica e não violação, bem como qualquer garantia decorrente do curso de desempenho, curso de negociação ou uso no comércio.

Comece no Linux

Antes de começar

Definir variáveis ​​de ambiente
Antes de poder usar o compilador, você deve primeiro definir as variáveis ​​de ambiente fornecendo o script de ambiente usando o utilitário de inicialização. Isso inicializa todas as ferramentas em uma etapa.

  1. Determine seu diretório de instalação, :
    • a. Se o seu compilador foi instalado no local padrão por um usuário root ou usuário sudo, o compilador será instalado em /opt/intel/oneapi. Nesse caso, é /opt/intel/oneapi.
    • b. Para usuários não root, seu diretório inicial em intel/oneapi é usado. Nesse caso,
      será $HOME/intel/oneapi.
    • c. Para usuários de cluster ou corporativos, sua equipe de administração pode ter instalado os compiladores em uma rede compartilhada file sistema. Verifique com sua equipe administrativa local o local de instalação
      ( ).
  2. Crie o script de configuração de ambiente para seu shell:
    • a. bash: fonte /setvars.sh intel64
    • b. csh/tcsh: fonte /setvars.csh intel64

Instalar drivers de GPU ou plug-ins (opcional)
Você pode desenvolver aplicativos oneAPI usando C++ e SYCL* que serão executados em GPUs Intel, AMD* ou NVIDIA*. Para desenvolver e executar aplicativos para GPUs específicas, você deve primeiro instalar os drivers ou plug-ins correspondentes:

  • Para usar uma GPU Intel, instale os drivers de GPU Intel mais recentes.
  • Para usar uma GPU AMD, instale o plug-in oneAPI for AMD GPUs.
  • Para usar uma GPU NVIDIA, instale o plug-in oneAPI for NVIDIA GPUs.

Opção 1: Use a Linha de Comando
O compilador Intel® oneAPI DPC++/C++ fornece vários drivers:

Intel-Get-Started-with-the-oneAPI-DPC ++-C++-Compiler-FIG-1Intel-Get-Started-with-the-oneAPI-DPC ++-C++-Compiler-FIG-2

Chame o compilador usando a seguinte sintaxe:
{driver do compilador} [opção] file1 [file2…]

Por exemploampem:
icpx olá-mundo.cpp

Para compilação SYCL, use a opção -fsycl com o driver C++:
icpx -fsycl ola-mundo.cpp

OBSERVAÇÃO: Ao usar -fsycl, -fsycl-targets=spir64 é assumido, a menos que -fsycl-targets seja definido explicitamente no comando.
Se você estiver visando uma GPU NVIDIA ou AMD, consulte o guia de introdução do plug-in de GPU correspondente para obter instruções detalhadas de compilação:

  • Guia de primeiros passos oneAPI para GPUs NVIDIA
  • Guia de primeiros passos oneAPI para GPUs AMD

Opção 2: Use o Eclipse* CDT
Siga estas etapas para chamar o compilador de dentro do Eclipse* CDT.

Instale o plug-in Intel® Compiler Eclipse CDT.

  1. Inicie o Eclipse
  2. Selecione Ajuda > Instalar novo software
  3. Selecione Adicionar para abrir a caixa de diálogo Adicionar Site
  4. Selecione Arquivo, navegue até o diretório /compilador/ /linux/ide_support, selecione o arquivo .zip file que começa com com.intel.dpcpp.compiler e selecione OK
  5. Selecione as opções que começam com Intel, selecione Avançar e siga as instruções de instalação
  6. Quando perguntado se deseja reiniciar o Eclipse*, selecione Sim

Crie um novo projeto ou abra um projeto existente.

  1. Abra um projeto existente ou crie um novo projeto no Eclipse
  2. Clique com o botão direito do mouse em Projeto > Propriedades > Construção C/C++ > Editor de cadeia de ferramentas
  3. Selecione Compilador Intel DPC++/C++ no painel direito

Definir configurações de compilação.

  1. Abra o projeto existente no Eclipse
  2. Clique com o botão direito do mouse em Projeto > Propriedades > Compilação C/C++ > Configurações
  3. Crie ou gerencie configurações de compilação no painel direito

Crie um programa a partir da linha de comando
Use as etapas a seguir para testar a instalação do compilador e criar um programa.Intel-Get-Started-with-the-oneAPI-DPC ++-C++-Compiler-FIG-3

  1. Use um editor de texto para criar um file chamado hello-world.cpp com o seguinte conteúdo:
  2. Compilar hello-world.cpp:
    icpx olá-mundo.cpp -o olá-mundo
    A opção -o especifica o file nome para a saída gerada.
  3. Agora você tem um executável chamado hello-world que pode ser executado e fornecerá feedback imediato:Intel-Get-Started-with-the-oneAPI-DPC ++-C++-Compiler-FIG-4

Quais saídas
Você pode direcionar e controlar a compilação com as opções do compilador. por example, você pode criar o objeto file e envie o binário final em duas etapas:

  1. Compilar hello-world.cpp:Intel-Get-Started-with-the-oneAPI-DPC ++-C++-Compiler-FIG-5A opção -c impede a vinculação nesta etapa.
  2. Use o compilador icpx para vincular o código de objeto do aplicativo resultante e gerar um executável:Intel-Get-Started-with-the-oneAPI-DPC ++-C++-Compiler-FIG-6
    A opção -o especifica o executável gerado file nome. Consulte Opções do compilador para obter detalhes sobre as opções disponíveis.

Comece no Windows

Antes de começar

Definir variáveis ​​de ambiente
O compilador se integra às seguintes versões do Microsoft Visual Studio*:

  • Estúdio Visual 2022
  • Estúdio Visual 2019
  • Estúdio Visual 2017

OBSERVAÇÃO O suporte para Microsoft Visual Studio 2017 foi preterido a partir da versão Intel® oneAPI 2022.1 e será removido em uma versão futura.

Para funcionalidade completa no Visual Studio, incluindo depuração e desenvolvimento, é necessário o Visual Studio Community Edition ou superior. O Visual Studio Express Edition permite apenas compilações de linha de comando. Para todas as versões, o suporte do Microsoft C++ deve ser selecionado como parte da instalação do Visual Studio. Para Visual Studio 2017 e posterior, você deve usar uma instalação personalizada para selecionar esta opção.
Normalmente, você não precisa definir as variáveis ​​de ambiente no Windows, pois a janela de linha de comando do compilador define essas variáveis ​​para você automaticamente. Se você precisar definir as variáveis ​​de ambiente, execute o script de ambiente conforme descrito na documentação de introdução específica do pacote.
O diretório de instalação padrão ( ) é C:\Programa Files (x86)\Intel\oneAPI.

Instalar drivers de GPU (opcional)
Para desenvolver e executar aplicativos para GPUs Intel, você deve primeiro instalar os drivers de GPU Intel mais recentes.

Opção 1: Use a linha de comando no Microsoft Visual Studio

O compilador Intel® oneAPI DPC++/C++ fornece vários drivers:Intel-Get-Started-with-the-oneAPI-DPC ++-C++-Compiler-FIG-7 Intel-Get-Started-with-the-oneAPI-DPC ++-C++-Compiler-FIG-8

Chame o compilador usando a seguinte sintaxe:Intel-Get-Started-with-the-oneAPI-DPC ++-C++-Compiler-FIG-9

Para invocar o compilador usando a linha de comando do Microsoft Visual Studio, abra um prompt de comando e insira o comando de compilação. por exampem:Intel-Get-Started-with-the-oneAPI-DPC ++-C++-Compiler-FIG-10

Para compilação SYCL, use a opção -fsycl com o driver C++:Intel-Get-Started-with-the-oneAPI-DPC ++-C++-Compiler-FIG-11

OBSERVAÇÃO: Ao usar -fsycl, -fsycl-targets=spir64 é assumido, a menos que -fsycl-targets seja definido explicitamente no comando.

Opção 2: Use o Microsoft Visual Studio
Suporte de projeto para o compilador Intel® DPC++/C++ no Microsoft Visual Studio
Novos projetos do Microsoft Visual Studio para DPC++ são configurados automaticamente para usar o compilador Intel® oneAPI DPC++/C++.
Novos projetos do Microsoft Visual C++* (MSVC) devem ser configurados manualmente para usar o compilador Intel® oneAPI DPC++/C++.

OBSERVAÇÃO: Os tipos de projeto CLR C++ baseados em NET não são suportados pelo compilador Intel® oneAPI DPC++/C++. Os tipos de projeto específicos variam dependendo da sua versão do Visual Studio, por exemploamparquivo: CLR Class Library, CLR Console App ou CLR Empty Project.

Use o compilador Intel® DPC++/C++ no Microsoft Visual Studio
As etapas exatas podem variar dependendo da versão do Microsoft Visual Studio em uso.

  1. Crie um projeto do Microsoft Visual C++ (MSVC) ou abra um projeto existente.
  2. No Solution Explorer, selecione o(s) projeto(s) para construir com o Intel® oneAPI DPC++/C++ Compiler.
  3. Abra Projeto > Propriedades.
  4. No painel esquerdo, expanda a categoria Propriedades de configuração e selecione a página de propriedades Geral.
  5. No painel direito, altere o Platform Toolset para o compilador que você deseja usar:
    • Para C++ com SYCL, selecione Intel® oneAPI DPC++ Compiler.
    • Para C/C++, existem dois conjuntos de ferramentas.
      Selecione o compilador Intel C++ (example 2021) para invocar icx.
      Selecione o compilador Intel C++ (example 19.2) para invocar icl.
      Como alternativa, você pode especificar uma versão do compilador como o conjunto de ferramentas para todas as plataformas e configurações com suporte do(s) projeto(s) selecionado(s) selecionando Projeto > Intel Compiler > Use Intel oneAPI DPC++/C++ Compiler.
  6. Reconstrua, usando Build > Project only > Rebuild para um único projeto ou Build > Rebuild Solution para uma solução.

Selecione a versão do compilador
Se você tiver várias versões do compilador Intel® oneAPI DPC++/C++ instalado, poderá selecionar qual versão deseja na caixa de diálogo Seleção do compilador:

  1. Selecione um projeto e vá para Ferramentas > Opções > Intel Compilers and Libraries > > Compiladores, onde os valores são C++ ou DPC++.
  2. Use o menu suspenso Selected Compiler para selecionar a versão apropriada do compilador.
  3. Selecione OK.

Alternar de volta para o compilador C++ do Microsoft Visual Studio
Se o seu projeto estiver usando o compilador Intel® oneAPI DPC++/C++, você pode optar por voltar para o compilador Microsoft Visual C++:

  1. Selecione seu projeto no Microsoft Visual Studio.
  2. Clique com o botão direito do mouse e selecione Compilador Intel > Usar Visual C++ no menu de contexto.

Esta ação atualiza a solução file para usar o compilador Microsoft Visual Studio C++. Todas as configurações de projetos afetados são limpas automaticamente, a menos que você selecione Não limpar projeto(s). Se você optar por não limpar os projetos, precisará reconstruir os projetos atualizados para garantir que todos os files são compilados com o novo compilador.

Crie um programa a partir da linha de comando
Use as etapas a seguir para testar a instalação do compilador e criar um programa.

  1. Use um editor de texto para criar um file chamado hello-world.cpp com o seguinte conteúdo:
    #incluir int main() std::cout << “Olá, mundo!\n”; retorna 0;
  2. Compilar hello-world.cpp:
    icx olá-mundo.cpp
  3. Agora você tem um executável chamado hello-world.exe que pode ser executado e fornecerá feedback imediato:
    Olá-mundo.exe

Quais saídas:
Olá, mundo!

Você pode direcionar e controlar a compilação com as opções do compilador. por example, você pode criar o objeto file e envie o binário final em duas etapas:

  1.  Compilar hello-world.cpp:
    icx hello-world.cpp /c /Fohello-world.obj
    A opção /c impede a vinculação nesta etapa e /Fo especifica o nome do objeto file.
  2. Use o compilador icx para vincular o código de objeto do aplicativo resultante e gerar um executável:
    icx hello-world.obj /Fehello-world.exe
  3. A opção /Fe especifica o executável gerado file nome. Consulte Opções do compilador para obter detalhes sobre as opções disponíveis.

Compilar e executar Sampo código

Múltiplos códigosampOs arquivos são fornecidos para o compilador Intel® oneAPI DPC++/C++ para que você possa explorar os recursos do compilador e se familiarizar com seu funcionamento. por exampem:

Intel-Get-Started-with-the-oneAPI-DPC ++-C++-Compiler-FIG-17Intel-Get-Started-with-the-oneAPI-DPC ++-C++-Compiler-FIG-18

Próximos passos

  • Use o código oneAPI S mais recenteamparquivos e acompanhe os recursos de treinamento Intel® oneAPI.
  • Explore o Guia do desenvolvedor e a referência do compilador Intel® oneAPI DPC++/C++ na Intel® Developer Zone.

Documentos / Recursos

intel Comece com o compilador oneAPI DPC ++/C++ [pdf] Guia do Usuário
Comece a usar o compilador C DPC oneAPI, Comece a usar o compilador C DPC oneAPI

Referências

Deixe um comentário

Seu endereço de e-mail não será publicado. Os campos obrigatórios estão marcados *