Patent №
US 8,701,099
Granted
2014-04-15
Filed 2010
Owner
INTERNATIONAL BUSINESS MACHINES CORPORATION
Lab
AI components
3
kr · planning · hardware
Assignment
Recorded
Dataset
AIPD
2023_r1 edition
Application
12938312
A method, a system and a computer program product for effectively accelerating loop iterators using speculative execution of iterators. An Efficient Loop Iterator (ELI) utility detects initiation of a target program and initiates/spawns a speculative iterator thread at the start of the basic code block ahead of the code block that initiates a nested loop. The ELI utility assigns the iterator thread to a dedicated processor in a multi-processor system. The speculative thread runs/executes ahead of the execution of the nested loop and calculates indices in a corresponding multidimensional array. The iterator thread adds all the precomputed indices to a single queue. As a result, the ELI utility effectively enables a multidimensional loop to be replaced by a single dimensional loop. At the beginning of (or during) each iteration of the iterator, the ELI utility “dequeues” an entry from the queue to use the entry to access the array upon which the ELI utility iterates. The ELI utility performs concurrent iterations on the array by using the queue entries.
AI classification
Ownership
INTERNATIONAL BUSINESS MACHINES CORPORATION
assignment · 252370290
Assignors
BIKSHANDI, GANESH, DAS, DIBYENDU, SARANGI, SMRUTI RANJAN
On an employer assignment, the assignors are typically the inventors.