The Johannes Gutenberg-University Mainz (JGU) provides a lot of experience in the areas of systems and load balancing. The possibility of task-migration between CPUs and GPUs was demonstrated using Reed-Solomon-Codes.
In the BMBF-Project ENHANCE Linux was extended by a scheduler that can manage both GPU- and CPU-processes and that can migrate tasks between GPUs and CPUs. Therefore timestamps for checkpointing were introduced at places where transformations from CPU to GPU or vice versa are possible. In our current work, these timestamps are automatically detected via source-code-analysis and the according migration code is injected.