Compiler developer PathScale has just unveiled a new GPGPU (general purpose GPU) programming model, which it reckons will do a much more efficient job than Nvidia's own CUDA technology.
PathScale (opens in new tab) previously told THINQ it was working on a new GPGPU standard (opens in new tab) back in April, but the compiler maker has now revealed the fruits of its work. Teaming up with CAPS (opens in new tab), a developer of software tools for many-core architectures, PathScale has now introduced a compiler suite that uses CAPS' Hybrid Multicore Parallel Programming (HMPP) model.
The new compiler suite is called ENZO, and PathScale's chief technology officer Christopher Bergström says it will "not only bring performance to another level by exploiting Nvidia GPUs, but also allow incremental changes without sacrificing maximum performance."
CAPS' CTO François Bodin added: "PathScale’s choice to implement the HMPP directive programming model in their ENZO compiler suite supports CAPS' commitment to delivering an open standard solution that will secure our users' investment."
CAPS' HMPP programming model has previously supported both Nvidia's CUDA technology, as well as AMD's Stream SDK. However, the two developers say they're now "jointly working on advancing the HMPP directives as a new open standard."
Bergström explains that "by working together with CAPS on making HMPP directives an open standard, we'll make a new evolution possible in the GPGPU programming model that has been long overdue."
Back in April, Bergström told THINQ Nvidia was, "still pushing their antiquated - dare I say crappy - CUDA programming model, which is highly explicit and very expensive for people who write large bodies of code. The scientific community for specialised code has bitten the bullet and done it, but for the most part we’re not porting lines and lines of code to CUDA, and we’re definitely not porting it to OpenCL."
Speaking about the recently-announced collaboration with CAPS, Bergström told THINQ that the new standard represents the second evolution of GPGPU programming. "There's a fully new language (CUDA/OpenCL), a directive based approach (HMPP) and then finally a fully automatic solution," he said.
PathScale and CAPS' new standard will offer a directive-based approach, which is the second stage in the evolution of GPGPU models. According to Bergström, the third approach will offer a situation "where zero code changes and your typical SIMD or vectoriser will recognise that this loop should be offloaded to the GPU."
Although ENZO is specifically targeted at Nvidia GPUs, Pathscale says Nvidia has not been involved in the development process. The compiler developer even offered free Fermi cards to open source developers in order to get working drivers ready for the system.
"Nvidia has nothing to do with this," says Bergström. "It’s just a situation where we think we can build something better than them, and basically kick their ass and push open source.”
PathScale says the new ENZO compiler suite is now available for testing by selected customers, and it will get its full release later in the summer.