Wouldn't it be great to write code that runs high-speed parallel algorithms on just about every kind of hardware out there, and without needing to be hand-tweaked to run well on GPUs versus CPUs?
That's the promise behind a new project being developed by professors and students from the University of Edinburgh and the University of Münster, with support from Google. Together they're proposing a new open source functional language, called "Lift," for writing algorithms that run in parallel across a wide variety of hardware.
Lift creates code for OpenCL, a programming system designed to target CPUs, GPUs, and FPGAs alike as well as to automatically generate optimizations for each of those hardware types.