Spectral Compute is aiming to change the high-performance computing market by allowing CUDA code to run across different microchips without requiring developers to rewrite their software. The London-based startup has built a compiler called SCALE that serves as a drop-in replacement for Nvidia’s NVCC, enabling existing CUDA code to run on alternative hardware, including AMD graphics processing units.
Spectral Compute was founded in 2018 by four engineers with around 60 years of combined high-performance computing optimisation experience. The founders state the project grew out of frustration while working at an artificial intelligence firm, where they sought to avoid the high cost of Nvidia hardware and the lower performance of alternative compilers, prompting them to build their own solution using LLVM and Clang.
Unlike tools that translate CUDA into another language or operate on already compiled binaries, SCALE works as a standalone compiler, recompiling CUDA directly for the target hardware. The model follows the approach of central processing unit compilers, where code runs on different architectures and performance variances are determined by the hardware rather than the compiler itself.
Spectral is working from the assumption that CUDA will remain the industry standard, noting that it accounts for about 80% of high-performance computing code in use today.
Giulio Malitesta, head of growth at Spectral, said: “We take the approach that’s industry-standard for CPUs, but apply it to GPUs.” He added that it’s “the same approach that enables C++ to run, for example, on AMD and ARM CPUs, where nobody expects a performance gap that isn’t directly caused by differences in the underlying hardware.
“CUDA is basically the de-facto standard of HPC. We need to accept that as a fact and just do the work as compiler engineers to make it available on different platforms that are not necessarily Nvidia, but also improve on Nvidia GPUs.”
Several other tools also aim to make CUDA portable, but each has certain limitations. AMD’s HIPIFY converts CUDA code into C++ for its ROCm platform but does not fully utilise low-level features such as PTX. Intel’s SYCLomatic migrates about 90% of the code, leaving the remaining 10% for manual cleanup, whilst tools like ZLUDA work at the binary level, which can reduce performance.
Spectral argues its method avoids those trade-offs by recompiling from source and checking results against NVCC outputs to preserve accuracy. Benchmarks published by Spectral show that SCALE can outperform HIPIFY-based approaches on AMD graphics processing units, with performance gains in some cases approaching six times.
So far, the company has focused on AMD hardware but is working toward supporting other artificial intelligence accelerators. It also continues to support Nvidia hardware, where it believes there is still room to improve performance through alternative compilation methods.
The broader CUDA ecosystem includes hundreds of specialised libraries, such as cuDNN, cuTENSOR and cuDF, which many applications depend on. Spectral is working to expand support for these and plans to roll out PyTorch compatibility to integrate with common artificial intelligence workflows.
Even as it works to make CUDA more portable, Spectral states it is not trying to compete directly with Nvidia. The company joined Nvidia’s Inception programme in June and says it is working across the industry.
SCALE has been shipping for around two years, and Spectral currently has around 30 employees. The company sells the compiler to commercial users while offering it free of charge to academic and non-profit groups. The software has already been tested on large systems, including the Frontier supercomputer at Oak Ridge National Laboratory.
For the users Spectral is targeting, the appeal is mostly practical, as rewriting large CUDA codebases for different hardware requires substantial time and resources.
Ruben van Dongen, head of academic solutions and business development, commnted: “We’re on the good side of Nvidia and we’re on a good side with AMD. Of course, we want to be friends with the entire industry. We are neutral, truly neutral. Especially in the field of research, the researchers lack time. Instead of having to rewrite the entire code base or port away from their current existing code base, they can just recompile with our solution and even increase performance benefits.”
The approach hinges on keeping CUDA as the standard while breaking its dependence on a single vendor’s hardware.
Image source: LinkedIn