Thread-local memory reference promotion for translating CUDA code for execution by a general purpose processor
AssigneeNVIDIA Corporation
InventorsVinod Grover, Bastiaan Joannes Matheus Aarts, Michael Murphy
Life of this patent
Estimating the term…
Loading patent…
AssigneeNVIDIA Corporation
InventorsVinod Grover, Bastiaan Joannes Matheus Aarts, Michael Murphy
Estimating the term…
One embodiment of the present invention sets forth a technique for translating application programs written using a parallel programming model for execution on multi-core graphics processing unit (GPU) for execution by general purpose central processing unit (CPU). Portions of the application program that rely on specific features of the multi-core GPU are converted by a translator for execution by a general purpose CPU. The application program is partitioned into regions of synchronization independent instructions. The instructions are classified as convergent or divergent and divergent memory references that are shared between regions are replicated. Thread loops are inserted to ensure correct sharing of memory between various threads during execution by the general purpose CPU.
A computer-implemented method for promoting thread-local memory references of application program as part of translating the application program for execution by a general purpose processor, the method comprising:
A non-transitory computer-readable medium that includes instructions that, when executed by a general purpose processor, configure the general purpose processor to promote thread-local memory references of application program as part of translating the application program for execution by a general purpose processor, by performing the steps of:
A computing system configured to promote thread-local memory references of application program as part of translating the application program for execution by a general purpose processor, comprising:
Dependencies are inferred from the claim text.