During the last weeks I have been working on a multi-GPU library. It was originally designed to speed up MRI image reconstruction but I extracted the generic parts and put together a library:
The MGPU library strives to simplify the implementation of high performance applications and algorithms on multi-GPU systems. Its main goal is both to abstract platform dependent functions and vendor specific APIs, as well as simplify communication between different compute elements. The library is currently an alpha release containing only limited yet already useful functionality.
It is a C++ library so you need a reasonable compiler. It is also not tested under any Windows platform yet (due to lack of hardware) but I managed to compile it in a virtual machine using Windows 7 x64. It is developed for Ubuntu x64.
Here’s the code: https://github.com/sschaetz/mgpu
And some documentation: http://sschaetz.github.com/mgpu/
And some archives: https://github.com/sschaetz/mgpu/raw/archives/mgpu_0_1.tar.bz2 https://github.com/sschaetz/mgpu/raw/archives/mgpu_0_1.zip
Let me know what you think, if you encounter problems or find any bugs.