Publication | Closed Access
Compile-time synchronization optimizations for software DSMs
17
Citations
27
References
2002
Year
Unknown Venue
Sofware Distributed-shared-memoryEngineeringCompiler TechnologyComputer ArchitectureSoftware EngineeringSoftware AnalysisHardware SecurityParallel SoftwareShared MemorySystems EngineeringCompilersParallel ComputingDynamic CompilationParallelizing CompilerConcurrent ProgrammingComputer EngineeringComputer ScienceExpensive ParallelismOptimizing CompilerSoftware DsmsProgram AnalysisParallel Performance EvaluationParallel ProgrammingSystem SoftwareSynchronization Overhead
Sofware distributed-shared-memory (DSM) systems provide a desirable target for parallelizing compilers due to their flexibility. However, studies show synchronization and load imbalance are significant sources of overhead. The authors investigate the impact of compilation techniques for eliminating synchronization overhead in software DSMs, developing new algorithms to handle situations found in practice. They evaluate the contributions of synchronization elimination algorithms based on 1) dependence analysis, 2) communication analysis, 3) exploiting coherence protocols in software DSMs, and 4) aggressive expansion of parallel SPMD regions. They also found suppressing expensive parallelism to be useful for one application. Experiments indicate these techniques eliminate almost all parallel task invocations, and reduce the number of barriers executed by 66% on average. On a 16 processor IBM SP-2, speedups are improved on average by 35%, and are tripled for some applications.
| Year | Citations | |
|---|---|---|
Page 1
Page 1