book_icon

Intel ajuda desenvolvedores a criarem códigos heterogêneos

Nova ferramenta de código aberto do projeto SYCLomatic ajuda os programadores a portar mais facilmente o código CUDA para SYCL e C++

Intel ajuda desenvolvedores a criarem códigos heterogêneos

A Intel lançou uma ferramenta de código aberto para migrar código para SYCL por meio de um projeto chamado SYCLomatic, que ajuda os desenvolvedores a portar mais facilmente o código CUDA para SYCL e C++ para acelerar a programação entre arquiteturas heterogêneas. Este projeto de código aberto permite a colaboração da comunidade para promover a adoção do padrão SYCL, uma etapa fundamental para liberar os desenvolvedores de um ecossistema proprietário de um único fornecedor.

“Migrar para C++ com SYCL fornece ao código um alinhamento ISO C++ mais forte, suporte a vários fornecedores para aliviar o aprisionamento de fornecedores e suporte a multiarquitetura para fornecer flexibilidade no aproveitamento de todo o poder das novas inovações de hardware. O SYCLomatic oferece uma ferramenta valiosa para automatizar grande parte do trabalho, permitindo que os desenvolvedores se concentrem mais no ajuste personalizado do que na portabilidade”, disse James Reinders, evangelista da Intel oneAPI.

A reutilização de código entre arquiteturas simplifica o desenvolvimento, reduzindo o tempo e os custos da manutenção contínua do código

Embora a inovação de hardware tenha levado a um cenário arquitetônico heterogêneo diversificado para computação, o desenvolvimento de software tornou-se cada vez mais complexo, dificultando o aproveitamento total de CPUs e aceleradores. Os desenvolvedores de hoje e suas equipes precisam de tempo, dinheiro e recursos para acomodar a reescrita e teste de código para aumentar o desempenho do aplicativo para essas diferentes arquiteturas. Os desenvolvedores estão procurando alternativas abertas que melhorem o tempo de retorno, e a Intel está fornecendo um caminho mais fácil e curto para permitir a escolha de hardware.

O SYCL é um padrão do Khronos Group baseado em C++, estende os recursos de C++ para suportar configurações de memória multiarquitetura e disjuntas. Para iniciar este projeto, a Intel abriu o código-fonte da tecnologia por trás de sua Ferramenta de Compatibilidade DPC++ para aprimorar ainda mais os recursos de migração para a produção de mais aplicativos baseados em SYCL. A reutilização de código entre arquiteturas simplifica o desenvolvimento, reduzindo o tempo e os custos da manutenção contínua do código.

Utilizando a licença Apache 2.0 com exceção LLVM, o projeto SYCLomatic hospedado no GitHub oferece uma comunidade para que os desenvolvedores contribuam e forneçam feedback para o desenvolvimento heterogêneo aberto em CPUs, GPUs e FPGAs.

O SYCLomatic auxilia os desenvolvedores na portabilidade do código CUDA para SYCL, normalmente migrando 90-95% do código CUDA automaticamente para o código SYCL. Para concluir o processo, os desenvolvedores concluem o restante da codificação manualmente e, em seguida, fazem o ajuste personalizado para o nível de desempenho desejado para a arquitetura.

O SYCLomatic é um projeto do GitHub. O portal GitHub inclui um guia “contributing.md” que descreve as etapas para contribuições técnicas ao projeto para garantir a máxima facilidade. Os desenvolvedores são incentivados a usar a ferramenta e fornecer feedback e contribuições para avançar na evolução da ferramenta.

Serviço
www.intel.com

 

As opiniões dos artigos/colunistas aqui publicados refletem exclusivamente a posição de seu autor, não caracterizando endosso, recomendação ou favorecimento por parte da Infor Channel ou qualquer outros envolvidos na publicação. Todos os direitos reservados. É proibida qualquer forma de reutilização, distribuição, reprodução ou publicação parcial ou total deste conteúdo sem prévia autorização da Infor Channel.