Patent ID: 8099584

Claim:
A method for operating a computer system to generate an array of output data elements using program code that, when executed, generates at least one output data element for the array of output data elements, the method comprising: defining, by the computer system, based at least in part on an array size parameter for the array of output data elements, a first number (n 1 ) of blocks of output data elements, wherein each block includes a number (n e ) of the output data elements; defining, by the computer system, a thread array corresponding to each block, each thread array including a number (n 0 ) of threads of execution of the program code sufficient to generate each of the n e output data elements in the corresponding block; distributing, by the computer system, the n 1 thread arrays among one or more of a number C tot of processing cores; and operating each of the one or more processing cores to execute each of the thread arrays distributed thereto, wherein executing a thread array includes executing the n 0 threads of the program code to generate each of the n e output data elements in the corresponding block and storing the n e output data elements in a memory.