LONDON Processor licensor ARM Holdings plc (Cambridge, England) is a key participant in a European collaborative research project that is aiming to develop a language to boost the programmability of accelerator hardware, such as graphics processing units (GPUs).
The three-year CARP project for Correct and Efficient Accelerator Programming aims to introduce innovations in programming language design and implementation and use of formal verification techniques. The project started on Dec. 1, 2011 and will receive funding support to the value of 2.8 million euro (about $3.5 million).
ARM is joined in the project by Monoidics Ltd. (London, England), Realeyes Data Services Ltd. (London, England) and Rightware Oy (Espoo, Finland) as well as researchers from universities and institutes in England, France, Germany and the Netherlands.
The researchers aim to provide:
a performance increase of at least 4x when comparing optimized code with non-optimized code, on multiple platforms
a reduction in energy consumption of at least 20 percent
automatic detection of at least 70 percent of known functional errors
a reduction of several orders of magnitude in time taken to design an application to run efficiently across multiple accelerator platforms
The CARP will focus on the development of a novel programming language called PIL (Portable Intermediate Language). PIL will be able to receive compiled inputs from domain-specific languages and will target its output to the widely adopted industry-standard OpenCL. Compiler optimizations will be geared towards reducing execution time and increasing energy efficiency, according to the project's website.
Click on image to enlarge.
An overview of the CARP approach. Source: www.carpproject.eu
The results will be applied through collaboration with Monoidics, Realeyes and Rightware. Monoidics' Infer product is a static code analyser that focuses on memory safety and security. Realeyes is a developer of eye-tracking software and emotion measurement software. Rightware is developer of graphical user interface software and mobile and embedded software benchmarks.
"Effective programming tools are essential to help broaden the adoption of heterogeneous systems, such as systems-on-chip accelerated by ARM Mali graphics processing units. We aim to provide software developers with a variety of programming technologies that range from industry standards, such as OpenCL, to domain-specific frameworks. The emphasis is on efficiency, performance portability and productivity," said Anton Lokhmotov, staff engineer at ARM, in a statement.
"I view accelerator programming as a challenge that must be tackled both from the top-down, via programming frameworks allowing software developers to synthesize efficient platform-specific code from platform-neutral algorithm representation, and from the bottom-up, via effective tools for debugging and verifying low-level code," said Alastair Donaldson, project coordinator and lecturer at Imperial College London, in the same statement.
Related links and articles:
Muddy mobile graphics waters dead ahead
Altera's OpenCL for FPGAs reduces development times
AMD makes Fusion architecture CPU and GPU agnostic
Why ARM-AMD makes sense