Nvidia
Depois de obter o suporte de empresas líderes como Intel, Xilinx, Renesas e Imagination Technologies, o SYCL (pronuncia-se ‘foice’), os desenvolvedores que usam GPUs NVIDIA também poderão obter o benefício. Codeplay, a organização que sempre contribuiu ativamente para a Comunidade SYCL, agora culminou com o desenvolvimento avançado de DPC ++ (Data Parallel C ++), que facilita a reciclagem e reutilização de código em várias plataformas de hardware. O resultado é ComputeCpp, Implementação do SYCL da própria Codeplay .
A edição mais recente do ComputeCpp oferece suporte experimental para GPUs NVIDIA usando OpenCL e PTX da NVIDIA
No ano passado, a Intel deu um passo decisivo para dar um empurrão no SYCL, e até começou a trabalhar em um padrão da API. O oneAPI inclui DPC ++ (uma implementação de SYCL com extensões) para CPUs, GPUs e FPGAs da Intel. O movimento logo se tornou bastante grande e ganhou impulso depois que o suporte para SYCL veio da Xilinx, Renesas e Imagination Technologies. Simplificando, os desenvolvedores de software agora são capazes de direcionar uma ampla gama de dispositivos usando SYCL.
Estamos trabalhando para oferecer suporte total para GPUs NVIDIA aos desenvolvedores SYCL integrados ao projeto DPC ++ de código aberto. Descubra como você pode experimentar hoje. https://t.co/RJoruLg8ae #sycl pic.twitter.com/4o07O9iNQW
- Software Codeplay (@codeplaysoft) 3 de fevereiro de 2020
O ComputeCpp oferece suporte experimental para GPUs NVIDIA usando OpenCL e PTX da NVIDIA. Mas DPC ++ (implementação SYCL da Intel) oferece a oportunidade de adicionar suporte total para GPUs NVIDIA integradas ao compilador LLVM sem passar por OpenCL. A Codeplay anunciou que está abrindo o código-fonte da fase inicial experimental de sua implementação que permite aos desenvolvedores SYCL direcionar as GPUs NVIDIA. A base de código para esta implementação permanece em um garfo separado do projeto principal do compilador LLVM e do branch DPC ++. A organização acrescentou que pretende trabalhar com a Intel para obter o suporte de GPU NVIDIA adicionado ao compilador Intel / LLVM upstream.
Como os desenvolvedores podem se beneficiar do suporte SYCL para GPUs NVIDIA?
Este projeto permite aos desenvolvedores direcionar GPUs NVIDIA usando o código SYCL, sem ter que passar pela camada OpenCL no sistema. Em outras palavras, com apenas uma GPU NVIDIA, os desenvolvedores podem executar DPC ++ em seu sistema para compilar aplicativos SYCL. Além disso, qualquer aplicativo CUDA existente pode ser portado de forma incremental para SYCL usando o suporte CUDA e, em seguida, executá-lo em uma plataforma que não tem CUDA. Isso claramente economiza muito tempo e esforços repetidos.
A solução Codeplay SYCL 1.2.1 oferece uma alternativa aberta para CUDA https://t.co/hFqhaglfZQ #HPC pic.twitter.com/myDbUAeQwW
- insideHPC.com (@insideHPC) 20 de outubro de 2019
Codeplay ofereceu instruções no arquivo README do projeto explicando como usar o back-end NVIDIA para DPC ++. Os desenvolvedores são obrigados a usar alguns sinalizadores ao compilar e algum código para configurar seu seletor de dispositivo para garantir que o tempo de execução saiba qual dispositivo visar. Em particular, a seção “ Crie um conjunto de ferramentas SYCL com suporte para NVIDIA CUDA ”E as opções do compilador Clang têm instruções específicas .
A Codeplay confirmou que executou com sucesso o projeto com Ubuntu 18.04 usando CUDA 10.1 em uma GPU Titan RTX (recursos de computação 7.5). A equipe garante que ele também deve funcionar em outras versões do Linux com qualquer GPU NVIDIA compatível com SM 5.0 ou superior. No entanto, o aplicativo SYCL compilado só será capaz de direcionar CUDA ou OpenCL, não ambos ao mesmo tempo.
=>
'Trazendo suporte de GPU NVIDIA para desenvolvedores SYCL