The CARP European research project aims at improving the programmability of accelerated systems, particularly systems accelerated with GPUs, at all levels.
This involves designing high-level programming formalisms geared towards accelerators, writing highly optimizing compilers to compile high-level code into efficient OpenCL, verifying correctness of accelerator kernels, and employing intensive symbolic testing techniques to find bugs.