O Hero C Compiler”HCC”deseja facilitar a compilação do código C para execução em GPUs, compilando o código C11 comum e transformando-o em módulos SPIR-V que podem ser consumidos por GPUs com suporte Vulkan.
HCC é autodescrito como:
HCC é um compilador C que permite compilar sua base de código C (com limitações) para SPIR-V para a API de gráficos Vulkan. Isso significa que você pode compartilhar struct’s, enum’s e funções entre seu código de CPU e GPU. O HCC visa o futuro da programação de GPU, portanto, é projetado em torno de recursos como recursos sem vínculo e alinhamento escalar. Isso facilita a interoperabilidade com a GPU e o foco na escrita do código do sombreador sem escrever seu próprio sistema de criação de sombreador.
O projeto está atualmente em alfa, então espere bugs e por favor ajude registrando bugs e contribuindo de volta para a base de código:)
O desenvolvedor líder da HCC, Henry Rose, escreveu no Phoronix comentando ainda,”Acabei de lançar minha primeira versão do HCC, o principal objetivo do projeto é permitir que eu use a linguagem C11 na GPU, pois adoro usá-la na CPU. Isso me permite compartilhar código e estruturas de dados, mas também nos livramos de alguns dos recursos herdados que estão em outras linguagens de sombreamento.”
O HCC é compatível com Windows e Linux, tem como objetivo converter o código C11 para o uso do Vulkan 1.3+ via SPIR-V e oferecer suporte ao maior número possível de recursos da linguagem C.
Aqueles que desejam aprender mais sobre o compilador HCC pode encontrá-lo hospedado no GitHub.