Publication | Closed Access
Automatic Data Partitioning on Distributed Memory Multiprocessors
41
Citations
9
References
2005
Year
Unknown Venue
Cluster ComputingEngineeringCompiler TechnologyComputer ArchitectureSoftware EngineeringSoftware AnalysisData Distribution SchemeParallel SoftwareData ScienceParallel ComputingCompilersData ManagementSource CodeParallelizing CompilerCompiler SupportComputer EngineeringComputer ScienceDistributed ProcessingProgram AnalysisPartition (Database)Data DistributionFormal MethodsAutomatic Data PartitioningParallel ProgrammingData-level ParallelismSystem Software
Abstract : An important problem facing numerous research projects on parallelizing compilers for distributed memory machines is that of automatically determining a suitable data partitioning scheme for a program. Most of the current projects leave this tedious problem almost entirely to the user. In this paper, we present a novel approach to the problem of automatic data partitioning. We introduce the notion of constraints on data distribution, and show how a parallelizing compiler can infer those constraints by looking at the data reference patterns in the source code of the program. We show how these constraints may be combined by the compiler to obtain a complete and consistent picture of the data distribution scheme, one that offers good performance in terms of the overall execution time. We illustrate our approach on an example routine, TRED2, from the EISPACK library, to demonstrate its applicability to real programs. Finally, we discuss briefly some other approaches that have recently been proposed for this problem, and argue why ours seems to be more general and powerful.
| Year | Citations | |
|---|---|---|
Page 1
Page 1