Nova versão

ChipStar 1.2 lançado com melhorias de desempenho para HIP/CUDA sobre SPIR-V

O ChipStar 1.2 é uma ferramenta de código aberto que compila e executa programas HIP/CUDA em dispositivos com drivers OpenCL ou Vulkan. A versão 1.2 traz melhorias em compatibilidade, desempenho e suporte a diferentes bibliotecas. Metadescrição: Descubra as melhorias do ChipStar 1.2, que agora oferece melhor suporte

chipstar 1.2

A versão 1.2 do ChipStar foi lançada como uma ferramenta de código aberto que facilita a execução de programas HIP/CUDA em diferentes dispositivos, usando tecnologias amplamente compatíveis como SPIR-V, OpenCL e Vulkan.

O ChipStar 1.2 é uma solução inovadora que permite que programas desenvolvidos com HIP (uma plataforma de programação para dispositivos de alto desempenho) e CUDA (a tecnologia da NVIDIA para executar tarefas complexas em GPUs) sejam executados em uma variedade de dispositivos de diferentes fabricantes. Isso é possível graças à utilização de SPIR-V, que é um tipo de linguagem intermediária usada para representar esses programas de maneira que diferentes tecnologias, como OpenCL (um padrão de programação para executar tarefas em diversos tipos de processadores) e Vulkan (uma interface gráfica de alto desempenho), possam compreender e executar.

Ao rodar esses programas no SPIR-V, o ChipStar permite que eles sejam compatíveis com uma ampla gama de dispositivos, desde placas gráficas até processadores, mesmo que sejam de fabricantes diferentes. A versão anterior, ChipStar 1.1, já permitia que grandes programas científicos e de computação avançada fossem executados, mas o ChipStar 1.2 vem com ainda mais aprimoramentos.

Explicando as melhorias em detalhes

Nesta nova versão, foi introduzido o “cucc”, que é uma substituição simples para o compilador “nvcc” da NVIDIA, uma ferramenta usada para converter programas CUDA em código que pode ser executado em GPUs da NVIDIA. Agora, com o cucc, é possível fazer isso em dispositivos que não são necessariamente da NVIDIA, ampliando o alcance dos programas CUDA.

Além disso, o suporte ao OpenCL foi aprimorado com a adição de uma extensão chamada buffer device address, que melhora a maneira como o sistema gerencia o acesso aos dados na memória, tornando as operações mais rápidas e eficientes. Houve também melhorias na forma como o ChipStar mede o desempenho dos programas e no perfilamento das filas, ou seja, como ele organiza as tarefas que precisam ser executadas, otimizando ainda mais o uso dos recursos do sistema.

Melhorias no suporte a diferentes fabricantes

Para o sistema da Intel, chamado oneAPI Level Zero, o ChipStar 1.2 corrigiu vários problemas, incluindo erros relacionados à falta de memória e melhorias na segurança do uso simultâneo de múltiplos processos (thread safety). Isso significa que os desenvolvedores terão menos problemas com travamentos e bugs durante a execução de seus programas.

Já no suporte à AMD, o ChipStar 1.2 agora funciona com a versão HIP 6.x, que faz parte do ROCm 6 (uma plataforma aberta da AMD para computação de alto desempenho). Além disso, agora há suporte a importantes bibliotecas como hipBLAS (para operações com matrizes), hipFFT (para transformadas rápidas de Fourier, muito usadas em processamento de sinais), e rocRAND (para geração de números aleatórios), aumentando a gama de programas que podem ser executados com o ChipStar.

Primeiros testes e avanços futuros

Outro ponto interessante deste lançamento é que a equipe já iniciou os testes de execução de programas HIP/CUDA em processadores RISC-V, que é uma arquitetura de processador aberta e flexível, ainda em fase de crescimento. Esse tipo de compatibilidade pode ser extremamente útil para o futuro, permitindo que mais dispositivos possam executar tarefas de computação complexas.

De forma geral, o ChipStar 1.2 é descrito pelos desenvolvedores como uma atualização importante, que melhora a estabilidade e o desempenho da plataforma, além de aumentar o suporte a bibliotecas e dispositivos de diferentes fabricantes.

Para mais informações sobre o ChipStar 1.2 e para baixar a nova versão, acesse a página oficial no GitHub.