An integrated compile-time/run-time software distributed shared memory system

被引:14
|
作者
Dwarkadas, S
Cox, AL
Zwaenepoel, W
机构
关键词
D O I
10.1145/248209.237181
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
On a distributed memory machine, hand-coded message passing leads to the most efficient execution, but it is difficult to use. Parallelizing compilers can approach the performance of hand-coded message passing by translating data-parallel programs into message passing programs, but efficient execution is limited to those programs for which precise analysis can be carried out. Shared memory is easier to program than message passing and its domain is not constrained by the limitations of parallelizing compilers, but it lags in performance. Our goal is to close that performance gap while retaining the benefits of shared memory. In other words, our goal is (1) to make shared memory as efficient as message passing, whether hand-coded or compiler-generated, (2) to retain its ease of programming, and (3) to retain the broader class of applications it supports. To this end we have designed and implemented an integrated compile-time and run-time software DSM system. The programming model remains identical to the original pure run-time DSM system. No user intervention is required to obtain the benefits of our system. The compiler computes data access patterns for the individual processors. It then performs a source-to-source transformation, inserting in the program calls to inform the run-time system of the computed data access patterns. The run-time system uses this information to aggregate communication, to aggregate data and synchronization into a single message, to eliminate consistency overhead, and to replace global synchronization with point-to-point synchronization wherever possible. We extended the Parascope programming environment to perform the required analysis, and we augmented the TreadMarks run-time DSM Library to take advantage of the analysis. We used six Fortran programs to assess the performance benefits: Jacobi, 3D-FFT, Integer Sort, Shallow Gauss, and Modified Gramm-Schmidt, each with two different data set sizes. The experiments were run on an 8-node IBM SP/2 using user-space communication. Compiler optimization in conjunction with the augmented run-time system achieves substantial execution time improvements in comparison to the base TreadMarks, ranging from 4% to 59% on 8 processors. Relative to message passing implementations of the same applications, the compile-time runtime system is 0-29% slower than message passing, while the base run-time system is 5-212% slower. For the five programs that XHPF could parallelize (all except IS), the execution times achieved by the compiler optimized shared memory programs are within 9% of XHPF.
引用
收藏
页码:186 / 197
页数:12
相关论文
共 50 条
  • [21] THE DISTRIBUTED ADA RUN-TIME SYSTEM DARTS
    GOTHE, MC
    WENGELIN, D
    ASPLUND, L
    SOFTWARE-PRACTICE & EXPERIENCE, 1991, 21 (11): : 1249 - 1263
  • [22] REDUCING FALSE SHARING ON SHARED-MEMORY MULTIPROCESSORS THROUGH COMPILE-TIME DATA TRANSFORMATIONS
    JEREMIASSEN, TE
    EGGERS, SJ
    SIGPLAN NOTICES, 1995, 30 (08): : 179 - 188
  • [23] COMPILE-TIME OPTIMIZATION OF NEAR-NEIGHBOR COMMUNICATION FOR SCALABLE SHARED-MEMORY MULTIPROCESSORS
    HUDAK, DE
    ABRAHAM, SG
    JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING, 1992, 15 (04) : 368 - 381
  • [24] Compile-time support for efficient data race detection in shared-memory parallel programs
    Mellor-Crummey, John
    SIGPLAN Notices (ACM Special Interest Group on Programming Languages), 1993, 28 (12):
  • [25] Compile-Time Planning for Overhead Reduction in Software Dynamic Translators
    Naveen Kumar
    Childers Bruce R.
    Daniel Williams
    Jack W. Davidson
    Mary Lou Soffa
    International Journal of Parallel Programming, 2005, 33 : 103 - 114
  • [26] Compile-time planning for overhead reduction in software dynamic translators
    Kumar, N
    Childers, BR
    Williams, D
    Davidson, JW
    Soffa, ML
    INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING, 2005, 33 (2-3) : 103 - 114
  • [27] Integrated building and system simulation using run-time coupled distributed models
    Trcka, M.
    Hensen, J. L. M.
    Wijsman, A. J. Th. M.
    ASHRAE TRANSACTIONS 2006, VOL 112, PT 1, 2006, 112 : 719 - +
  • [28] Compile-Time Function Memoization
    Suresh, Arjun
    Rohou, Erven
    Seznec, Andre
    CC'17: PROCEEDINGS OF THE 26TH INTERNATIONAL CONFERENCE ON COMPILER CONSTRUCTION, 2017, : 45 - 54
  • [29] COMPILE-TIME TESTING.
    Hamlet, Richard G.
    1977, : 15 - 1
  • [30] Compile-time copy elimination
    Schnorf, Peter
    Ganapathi, Mahadevan
    Hennessy, John L.
    Software - Practice and Experience, 1993, 23 (11) : 1175 - 1200