Proceedings 20th IEEE International Parallel &Amp; Distributed Processing Symposium 2006
DOI: 10.1109/ipdps.2006.1639500
|View full text |Cite
|
Sign up to set email alerts
|

Automatic code generation for distributed memory architectures in the polytope model

Abstract: Abstract-The polytope model has been used successfully as a tool for program analysis and transformation in the field of automatic loop parallelization. However, for the final step of automatic code generation, the generated code is either only usable on shared memory architectures or severely restricts the parallelization methods that can be applied. In this paper, we present a fully automated method for generating efficient target code, which is executable on clusters that are based on a distributed memory a… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
21
0

Year Published

2011
2011
2019
2019

Publication Types

Select...
4
1

Relationship

0
5

Authors

Journals

citations
Cited by 20 publications
(23 citation statements)
references
References 16 publications
0
21
0
Order By: Relevance
“…While there is extensive research [5,8,12] considering reordering of the statements within a loop nest for improved performance, we propose a different approach; preserving the original execution order, we propose the introduction of scratchpad memory (reuse buffers) at levels within the loop body. The memory buffer can be introduced at any level within the loop nest, we define a parameter 1 6 t 6 n to describe the placement of the buffer within a n-level loop nest.…”
Section: Memory Prefetching Using Scratchpad Memories Within Nestedloopsmentioning
confidence: 99%
See 1 more Smart Citation
“…While there is extensive research [5,8,12] considering reordering of the statements within a loop nest for improved performance, we propose a different approach; preserving the original execution order, we propose the introduction of scratchpad memory (reuse buffers) at levels within the loop body. The memory buffer can be introduced at any level within the loop nest, we define a parameter 1 6 t 6 n to describe the placement of the buffer within a n-level loop nest.…”
Section: Memory Prefetching Using Scratchpad Memories Within Nestedloopsmentioning
confidence: 99%
“…Scheduling and loop transformations which alter the execution order within this polytope framework have been extensively studied [5,8,12] either to expose parallelism by eliminating loop carried dependencies, or to reduce the communications cost when partitioning code across many processors in a HPC system.…”
Section: A Mathematical Framework For Analyzing Memory Access Patternsmentioning
confidence: 99%
“…Scheduling and loop transformations which alter the execution order within this polytope framework have been extensively studied [11,7,4] either to expose parallelism by eliminating loop carried dependencies, or to reduce the communications cost when partitioning code across many processors in a HPC system.…”
Section: Polytope Modelmentioning
confidence: 99%
“…While the work in [11,7,4] considers reordering the statements within a loop nest, we propose a different approach; preserving the original execution order, we propose the introduction of memory buffers (reuse buffers) at levels within the loop body. Unlike caches, which are filled by an implicit hardware mechanism, these memories are explicitly populated with data using code derived from the original problem description.…”
Section: Memory Buffering and Reorderingmentioning
confidence: 99%
See 1 more Smart Citation