DocumentCode :
2136589
Title :
Deep jam: conversion of coarse-grain parallelism to instruction-level and vector parallelism for irregular applications
Author :
Carribault, Partick ; Cohen, Albert ; Jalby, William
Author_Institution :
Bull SA, Les Clayes sous Bois, France
fYear :
2005
fDate :
17-21 Sept. 2005
Firstpage :
291
Lastpage :
300
Abstract :
A number of compute-intensive applications suffer from performance loss due to the lack of instruction-level parallelism in sequences of dependent instructions. This is particularly accurate on wide-issue architectures with large register banks, when the memory hierarchy (locality and bandwidth) is not the dominant bottleneck. We consider two real applications from computational biology and from cryptanalysis, characterized by long sequences of dependent instructions, irregular control-flow and intricate scalar and array dependence patterns. Although these applications exhibit excellent memory locality and branch-prediction behavior, state-of-the-art loop transformations and back-end optimizations are unable to exploit much instruction-level parallelism. We show that good speedups can be achieved through deep jam, a new transformation of the program control- and data-flow. Deep jam combines scalar and array renaming with a generalized form of recursive unroll-and-jam; it brings together independent instructions across irregular control structures, removing memory-based dependences. This optimization contributes to the extraction of fine-grain parallelism in irregular applications. We propose a feedback-directed deep jam algorithm, selecting a jamming strategy, function of the architecture and application characteristics.
Keywords :
biology computing; cryptography; optimising compilers; parallel architectures; program control structures; back-end optimizations; branch-prediction behavior; coarse-grain parallelism; computational biology; cryptanalysis; feedback-directed deep jam; instruction-level parallelism; loop transformations; memory locality; program control-flow; program data-flow; vector parallelism; Bandwidth; Biology computing; Computer aided instruction; Computer applications; Computer architecture; Concurrent computing; Parallel processing; Performance loss; Registers; Sequences;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Parallel Architectures and Compilation Techniques, 2005. PACT 2005. 14th International Conference on
ISSN :
1089-795X
Print_ISBN :
0-7695-2429-X
Type :
conf
DOI :
10.1109/PACT.2005.16
Filename :
1515601
Link To Document :
بازگشت