1. A method performed by a computer system, the method comprising: translating a first portion of general purpose data parallel code that is intended for execution on one or more data parallel devices into first data parallel device source code; translating a second portion of the general purpose data parallel code that is intended for execution on the one or more data parallel devices into second data parallel device source code; and binding the first and the second data parallel device source codes into a self-contained data parallel device source code unit.