Patent ID: 7814486

Claim:
A computer-implemented method configured to be performed by a runtime system comprising multiple execution threads, wherein the runtime system is configured to run on a parallel-processing computer system that includes multiple processing elements, at least two of which have different processor architectures, comprising: at runtime, receiving one or more operation requests issued by an application; generating one or more performance attributes for each of the operation requests; examining the performance attributes associated with the operation requests to determine whether a predefined compilation condition is met; in accordance with the examination of the performance attributes: identifying in a set of existing compute kernels a first compute kernel that corresponds to a first subset of the operation requests, wherein the set of existing compute kernels were previously generated in response to one or more earlier operation requests issued by the application and the first compute kernel is configured to be executed on a first processing element of a first processor architecture; and generating a second compute kernel for a second subset of the operation requests, wherein the second compute kernel is configured to be executed on a second processing element of a second processor architecture; and executing the first and second compute kernels on the corresponding first and second processing elements of the parallel-processing computer system.