Ferramenta de compatibilidade Intel DPC++

Comece a usar a ferramenta de compatibilidade Intel® DPC+ +
A ferramenta de compatibilidade Intel® DPC++ auxilia na migração de um programa de desenvolvedor escrito em CUDA* para um programa escrito em Data Parallel C++ (DPC++), que é baseado em C++ moderno e incorpora padrões industriais portáteis como SYCL*.
- Visite o guia e referência do desenvolvedor da ferramenta de compatibilidade Intel® DPC++ para obter informações adicionais sobre a ferramenta.
- Visite as Notas de versão para problemas conhecidos e as informações mais atualizadas.
OBSERVAÇÃO O uso da ferramenta de compatibilidade Intel® DPC++ resultará em um projeto que não foi totalmente migrado. Trabalho adicional, conforme descrito pela saída da Ferramenta de compatibilidade Intel® DPC++, é necessário para concluir a migração.
Antes de começar
A ferramenta de compatibilidade Intel® DPC++ está incluída no Intel® oneAPI Base Toolkit. Se você não instalou o Intel® oneAPI Base Toolkit, siga as instruções no Guia de instalação.
Certo cabeçalho CUDA files (específico para o seu projeto) pode precisar estar acessível para o Intel® DPC++
Ferramenta de Compatibilidade. A ferramenta de compatibilidade Intel® DPC++ procura esses cabeçalhos CUDA files nos locais padrão:
- /usr/local/cuda/incluir
- /usr/local/cuda-xy/include, onde xy é um destes valores: 8.0, 9.x, 10.xe 11.0–11.6.
Você pode fazer referência a locais personalizados apontando para eles com o –cuda-include-path= opção na linha de comando da ferramenta de compatibilidade Intel® DPC++.
OBSERVAÇÃO O caminho de inclusão do CUDA não deve ser o mesmo ou um caminho filho do diretório onde o código-fonte que precisa ser migrado está localizado.
Atualmente, a ferramenta de compatibilidade Intel® DPC++ suporta a migração de programas implementados com CUDA versões 8.0, 9.x, 10.xe 11.0–11.6. A lista de idiomas e versões com suporte pode ser estendida no futuro.
Para configurar o ambiente da ferramenta de compatibilidade Intel® DPC++, execute o seguinte:
- No Linux (sudo): fonte /opt/intel/oneapi/setvars.sh
- No Linux (usuário): fonte ~/intel/oneapi/setvars.sh
- No Windows :Drive:\ Programa Files (x86)\Intel\oneAPI\setvars.bat
A sintaxe de invocação geral do shell do sistema operacional é:
| dpct [opções] [ … ] |
OBSERVAÇÃO c2s é um alias para o comando dpct e pode ser usado em seu lugar.
Informações de uso incorporadas
Para ver a lista de opções específicas da ferramenta de compatibilidade Intel® DPC++, use –help:
| dpct –ajuda |
Para ver a lista de opções do analisador de idioma (Clang*), passe -help como a opção Clang:
| dpct — -ajuda |
Avisos Emitidos
A ferramenta de compatibilidade Intel® DPC++ identifica os locais no código que podem exigir sua atenção durante a migração do files para tornar o código SYCL compatível ou correto.
Os comentários são inseridos na fonte gerada files e exibidos como avisos na saída. por exampem:
| /caminho/para/file.hpp:26:1: aviso: DPCT1003:0: API migrada não retorna código de erro. (*,0) é inserido. Pode ser necessário reescrever esse código. // linha de código-fonte para a qual o aviso foi gerado ^ |
Para obter mais detalhes sobre o significado de um aviso específico, consulte o Referência de diagnóstico.
Para obter mais detalhes sobre o significado de um aviso específico, consulte a Referência de diagnóstico.
Migrar um projeto de teste simples
A ferramenta de compatibilidade Intel® DPC++ vem com váriosample projetos para que você possa explorar a ferramenta e se familiarizar com seu funcionamento:
| Sampo Projeto | Descrição |
Vetor Adicionar DPCT
|
O vetor Adicionar DPCT sample demonstra como migrar um programa simples de CUDA para SYCL. O Vector Add fornece uma maneira fácil de verificar se seu ambiente de desenvolvimento está configurado corretamente para usar a ferramenta de compatibilidade Intel® DPC++. |
Opções de Pasta DPCT
|
As opções de pasta DPCT sample mostra como migrar projetos mais complexos e usar opções. |
Rodínia NW DPCT
|
Rodínia NW DPCT sampO arquivo demonstra como migrar um projeto Make/CMake de CUDA para SYCL usando a ferramenta de compatibilidade Intel® DPC++. |
Review o README file fornecido com cada sample para obter informações mais detalhadas sobre o propósito e uso do sampo projeto.
Para acessar o sampos
- use o utilitário oneapi-cli para selecionar comoamparquivo da categoria Intel® DPC++ Compatibility Tool, ou
- baixar o samples de Github*.
Para obter informações mais detalhadas sobre como baixar e acessar o samples, visite os guias de introdução do Intel® oneAPI Base Toolkit:
- Guia de primeiros passos com o Intel® oneAPI Base Toolkit para Windows*
- Comece com o Intel® oneAPI Base Toolkit para Linux*
- Comece a usar o Intel® oneAPI Base Toolkit para macOS*
Tente um Sampo Projeto
Siga estas etapas para migrar o Vector Add DPCT sampprojeto de arquivo usando a ferramenta de compatibilidade Intel® DPC++:
- Faça o download do vector_add.cu sampeu.
- Execute a ferramenta de compatibilidade Intel® DPC++ a partir doampo diretório raiz:
dpct –na raiz=. src/vector_add.cu O vector_add.dp.cpp file deve aparecer no diretório dpct_output. O file agora é uma fonte SYCL file.
- Navegue até a nova fonte SYCL file:
| cd dpct_saída |
Verifique o código-fonte gerado e corrija qualquer código que a ferramenta de compatibilidade Intel® DPC++ não conseguiu migrar. (O código usado neste exemploamparquivo é simples, portanto alterações manuais podem não ser necessárias). Para obter instruções mais precisas e detalhadas sobre como lidar com avisos emitidos pela ferramenta de compatibilidade Intel® DPC++, consulte a seção Endereçando avisos no código migrado do LEIA-ME files.
OBSERVAÇÃO Para compilar os s migradosample, adicione -I/include ao seu comando de compilação.
Para s mais complexosample instruções, consulte o Migrar um projeto seção do guia e referência do desenvolvedor da ferramenta de compatibilidade Intel® DPC++.
Encontre mais
| Contente | Descrição |
| Compatibilidade Intel® DPC++ | Detalhado sobreview dos recursos, fluxo de trabalho e uso da ferramenta de compatibilidade Intel® DPC++. |
| Sob demanda Webinar: | Como migrar o código CUDA para Data Parallel C++ (DPC++) usando a ferramenta de compatibilidade Intel® DPC++, um mecanismo de migração única que transporta kernels e chamadas de API. |
| Guias de instalação para Intel® | Instruções detalhadas sobre como obter e instalar pacotes Intel® oneAPI usando diferentes modos de instalação e gerenciadores de pacotes. |
| Versão da especificação SYCL | O PDF de especificação SYCL. Explica como SYCL integra dispositivos OpenCL com C++ moderno. |
| Especificação SYCL 2020 | O PDF da especificação SYCL 2020. |
| Khronos* SYCL encerradoview | Um fimview de SYCL fornecido pelo Grupo Khronos. |
| Compilando CUDA com clang | Descrição do suporte CUDA em clang. |
| Extensões Intel LLVM SYCL | Extensões propostas para a especificação SYCL. |
| Camadas para o Projeto Yocto* | Adicione um componente de API a um projeto Yocto construído usando as camadas meta-intel. |

Documentos / Recursos
![]() |
Ferramenta de compatibilidade Intel DPC++ [pdf] Guia do Usuário Ferramenta de compatibilidade DPC, Ferramenta de compatibilidade, Ferramenta |




