first implementation of multi-device cuda