Patent ID: 8701099

Claim:
In a multiple processor computer system is having a plurality of processors, a computer-implemented method comprising: in response to detecting initiation of a target program, pre-assigning a speculative iterator thread to a dedicated processor from among the plurality of processors; during the execution period of the program, initiating the speculative iterator thread at a start of a basic code block ahead of execution of a code block for a nested loop; pre-computing, via the speculative iterator thread, a plurality of indices for a multidimensional array that is associated with the nested loop; inserting the pre-computed plurality of indices as a plurality of entries within a queue; initiating iteration of the multi-dimensional array associated with the code block for the nested loop; performing iterations on the multi-dimensional array, in response to completing iterations to obtain array indices for the region; dequeueing an entry from the plurality of entries of the queue; utilizing the dequeued entry, accessing an array on which the iteration is initiated utilizing; and performing concurrent iterations on the array by using the plurality of entries of the queue.