Patent ID: 7444632

Claim:
A method for load balancing code execution, said method comprising: compiling a first source code subtask and a second source code subtask, the compiling resulting in a first byte code subtask and a second byte code subtask; determining whether to store a pointer in a byte code file, the pointer including a stored location that corresponds to the second byte code subtask; storing the pointer in the byte code file in response to the determination; storing the second byte code subtask at the stored location in response to the determination; translating the first byte code subtask to a first object code subtask; executing the first object code subtask using one of a plurality of heterogeneous processor types; during the execution of the first object code subtask, the method further comprises: retrieving the pointer and analyzing the stored location; in response to analyzing the stored location, retrieving the second byte code subtask using a runtime loader; in response to retrieving the second byte code subtask, using the runtime loader to identify a processor type from the plurality of heterogeneous processor types in which to execute the second byte code subtask, wherein the identifying includes retrieving a loading factor for each of the plurality of heterogeneous processor types and determining an availability of each of the plurality of heterogeneous processor types using the loading factors; in response to identifying the processor type, using the runtime loader to translate the second byte code subtask to a second object code subtask; and loading the second object code subtask into a processor that corresponds to the identified processor type.