Parallelization of while loops in nested loop programs for shared-memory multiprocessor systems

Many applications contain loops with an undetermined number of iterations. These loops have to be parallelized in order to increase the throughput when executed on an embedded multiprocessor platform. This paper presents a method to automatically extract a parallel task graph based on function level...

Celý popis

Uloženo v:
Podrobná bibliografie
Vydáno v:2011 Design, Automation & Test in Europe s. 1 - 6
Hlavní autoři: Geuns, S J, Bekooij, M J G, Bijlsma, T, Corporaal, H
Médium: Konferenční příspěvek
Jazyk:angličtina
Vydáno: IEEE 01.03.2011
Témata:
ISBN:9781612842080, 1612842089
ISSN:1530-1591
On-line přístup:Získat plný text
Tagy: Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
Popis
Shrnutí:Many applications contain loops with an undetermined number of iterations. These loops have to be parallelized in order to increase the throughput when executed on an embedded multiprocessor platform. This paper presents a method to automatically extract a parallel task graph based on function level parallelism from a sequential nested loop program with while loops. In the parallelized task graph loop iterations can overlap during execution. We introduce the notion of a single assignment section such that we can exploit single assignment to overlap iterations of the while loop during the execution of the parallel task graph. Synchronization is inserted in the parallelized task graph to ensure the same functional behavior as the sequential nested loop program. It is shown that the generated parallel task graph does not introduce deadlock. A DVB-T radio receiver where the user can switch channels after an undetermined amount of time illustrates the approach.
ISBN:9781612842080
1612842089
ISSN:1530-1591
DOI:10.1109/DATE.2011.5763118