O compilador usa código C para escrever uma vez e acelerar CPUs

Atualização: 6 de agosto de 2023
O compilador usa código C para escrever uma vez e acelerar CPUs

Os usuários podem gerar código para processadores multi-core na mesma arquitetura ou em arquiteturas diferentes e fazer benchmark de uso com variáveis ​​de tempo de execução. O hardware, o uso de energia ou o número de núcleos podem ser ajustados e outros processos podem ser alocados para otimizar o desempenho / W.

Clay Johnson, CEO da CacheQ Systems, descreveu o compilador como um divisor de águas. Os desenvolvedores de software podem “aproveitar ao máximo o poder de processamento paralelo sem gastar anos aprendendo a codificar com OpenMP ou MPI”, disse ele. “Eles podem acelerar um algoritmo de thread único com nossas ferramentas para compilar rapidamente e direcionar qualquer CPU com dois ou mais núcleos.”

As ferramentas da CacheQ Complier Collection permitem que os desenvolvedores de software criem e implantem aceleradores de hardware personalizados para sistemas de computação heterogêneos, incluindo FPGAS, CPUs e GPUs. o conjunto é modelado após o conjunto de ferramentas GNU Compiler Collection (GCC), incluindo uma interface de usuário semelhante aos compiladores de código aberto comuns. Requer modificação limitada do código, o que diminui o tempo de desenvolvimento, explica a empresa.

O conjunto de ferramentas permite a compilação, detecção de linting e erro, previsão de desempenho, criação de perfil, depuração e visualização do mecanismo virtual gerado. A CacheQ Compiler Collection oferece suporte a código C e C ++ por meio do acesso híbrido de uma chamada de função exportada.

A empresa fornece benchmarks para servidores high-end e dispositivos eletrônicos de consumo, por exemplo, simulação de um processador Apple M1 com dois núcleos superou o chip x86 com 11 núcleos e um processador M1 com quatro núcleos teve desempenho 210% mais rápido que o x86 com 12 núcleos . No geral, o compilador teve desempenho 1,476% mais rápido do que o GCC de thread único em execução no x86 usando o CacheQ Compiler Collection executado no mesmo código.

As ferramentas do compilador estão sendo enviadas agora por meio de um programa de acesso limitado.