A quickie since this is way inside baseball. Software tools developer RapidMind announced yesterday that
…it is both leveraging and contributing to the LLVM (Low Level Virtual Machine) Compiler Infrastructure project as well as participating in and adopting the OpenCL (Computing Language) standard.
…RapidMind is augmenting its proprietary code generation technology with LLVM, both to leverage LLVM’s existing code base, and to allow much quicker support for new architectures. When a hardware vendor adds LLVM support for any new architecture, RapidMind can very quickly enable software developers to use RapidMind to build parallel applications for that new processor.
LLVM is a set of open-source libraries and tools that provide a hardware-independent interface to generate and optimize machine code for a variety of processor architectures. LLVM is used in a number of compilers and other products that require code generation, such as domain-specific languages and Just-In-Time compilers.
And regarding OpenCL
“We are excited about the possibility of a non-proprietary standard for a low-level layer interface that targets GPUs from a spectrum of hardware vendors if they choose to support OpenCL. ISVs using RapidMind today gain the benefits of GPU performance, without having to understand the architecture of the underlying hardware,” said Ray DePaul, president and CEO of RapidMind. “A single standard makes it easier for us to support multiple hardware platforms, and ultimately expand our base of supported hardware.”
Which makes perfect sense.