We present an original approach to automatic array alignment, the step in the hierarchical transformation system aimed at the efficient execution of shared memory programs on distributed memory machines. Our array alignment algorithm deals with a broad set of intra-dimension and inter-dimension alignment preferences, including offsets, strides, permutations, embeddings, and their combinations. We discuss the algorithm and the tests performed on the Connection Machine CM-2. 1 Introduction The trade-off between code portability and high performance is a significant problem facing software implemented for parallel machines. We have proposed a multilayered refinement of high level, expressive parallel programs to be performed in a sequence of ...
In this paper, an efficient algorithm to simultaneously implement array alignment and data/computati...
We present a unified approach to locality optimization that employs both data and control transforma...
Optimal multiple sequence alignment by dynamic programming, like many highly dimensional scientific ...
Aggregate data objects (such as arrays) are distributed across the processor memories when compilin...
Axis and stride alignment is an important optimization in compiling data-parallel programs for distr...
[[abstract]]©1997 Springer Verlag-Both automatic data alignment and array operation synthesis have b...
When a data-parallel language like Fortran 90 is compiled for a distributed-memory machine, aggregat...
Abstract. Minimizing data communication over processors is the key to compile programs for dis-tribu...
In this paper, we discuss a program transformation technique called array reshaping. Array reshaping...
When a data-parallel language like FORTRAN 90 is compiled for a distributed-memory machine, aggregat...
[[abstract]]In this paper, we propose a new automatic data alignment model called segmented alignmen...
An approach to programming distributed memory-parallel machines that has recently become popular is ...
Programming languages that provide multidimensional arrays and a flat linear model of memory must im...
In this tutorial, we address the problem of restructuring a (possibly sequential) program to improve...
Effective memory hierarchy utilization is critical to the performance of modern multiprocessor archi...
In this paper, an efficient algorithm to simultaneously implement array alignment and data/computati...
We present a unified approach to locality optimization that employs both data and control transforma...
Optimal multiple sequence alignment by dynamic programming, like many highly dimensional scientific ...
Aggregate data objects (such as arrays) are distributed across the processor memories when compilin...
Axis and stride alignment is an important optimization in compiling data-parallel programs for distr...
[[abstract]]©1997 Springer Verlag-Both automatic data alignment and array operation synthesis have b...
When a data-parallel language like Fortran 90 is compiled for a distributed-memory machine, aggregat...
Abstract. Minimizing data communication over processors is the key to compile programs for dis-tribu...
In this paper, we discuss a program transformation technique called array reshaping. Array reshaping...
When a data-parallel language like FORTRAN 90 is compiled for a distributed-memory machine, aggregat...
[[abstract]]In this paper, we propose a new automatic data alignment model called segmented alignmen...
An approach to programming distributed memory-parallel machines that has recently become popular is ...
Programming languages that provide multidimensional arrays and a flat linear model of memory must im...
In this tutorial, we address the problem of restructuring a (possibly sequential) program to improve...
Effective memory hierarchy utilization is critical to the performance of modern multiprocessor archi...
In this paper, an efficient algorithm to simultaneously implement array alignment and data/computati...
We present a unified approach to locality optimization that employs both data and control transforma...
Optimal multiple sequence alignment by dynamic programming, like many highly dimensional scientific ...