Efficient scheduling of strict multithreaded computations

被引:7
|
作者
Fatourou, P [1 ]
Spirakis, P
机构
[1] Max Planck Inst Informat, Saarbrucken, Germany
[2] Univ Patras, Dept Comp Engn & Informat, Patras, Greece
[3] Comp Technol Inst, GR-26110 Patras, Greece
关键词
D O I
10.1007/s002240010002
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
In this paper we study the problem of efficiently scheduling a wide class of multithreaded computations, called strict; that is, computations in which all dependencies from a thread go to the thread's ancestors in the computation tree. Strict multithreaded computations allow the limited use of synchronization primitives. We present the first fully distributed scheduling algorithm which applies to any strict multithreaded computation. The algorithm is asynchronous, on-line, and follows the work-stealing paradigm. We prove that our algorithm is efficient not only in terms of its memory requirements and its execution time, but also in terms of its communication complexity. Our analysis applies to both shared and distributed memory machines. More specifically, the expected execution time of our algorithm is O(T-1/P + hT(infinity)), where T-1 is the minimum serial execution time, T-infinity is the minimum execution time with an infinite number of processors, P is the number of processors, and h is the maximum "distance" in the computation tree between any two threads that need to communicate. Furthermore, the total space required during the execution is O(S1P), where S-1 is the space required by a serial computer to execute the computation, while the expected communication cost incurred by our algorithm is O(PhTinfinity(1 + n(d)) S-max), where n(d) is the maximum number of dependencies entering any thread and S-max is the largest amount of storage needed for the execution of any specific thread of the computation. Our communication complexity bound is the first nontrivial bound ever proved for the model of strict parallel programming.
引用
收藏
页码:173 / 232
页数:60
相关论文
共 50 条
  • [21] Compiler and runtime support for adaptive sparse computations on a multithreaded architecture
    Zoppetti, GM
    Agrawal, G
    PARALLEL AND DISTRIBUTED COMPUTING SYSTEMS, 2002, : 488 - 493
  • [22] SCHEDULING PARALLEL COMPUTATIONS
    REITER, R
    JOURNAL OF THE ACM, 1968, 15 (04) : 590 - &
  • [23] Nonuniform Memory Affinity Strategy in Multithreaded Sparse Matrix Computations
    Srinivasa, Avinash
    Sosonkina, Masha
    HIGH PERFORMANCE COMPUTING SYMPOSIUM 2012 (HPC 2012), 2012, 44 (06): : 18 - 25
  • [24] Architectural support and mechanisms for object caching in dynamic multithreaded computations
    Karamcheti, V
    Chien, AA
    JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING, 1999, 58 (02) : 260 - 300
  • [25] Security for multithreaded programs under cooperative scheduling
    Russo, Alejandro
    Sabelfeld, Andrei
    PERSPECTIVES OF SYSTEMS INFORMATICS, 2007, 4378 : 474 - +
  • [26] OPTIMAL SCHEDULING WITH STRICT DEADLINES
    BHATTACHARYA, PP
    EPHREMIDES, A
    IEEE TRANSACTIONS ON AUTOMATIC CONTROL, 1989, 34 (07) : 721 - 728
  • [27] A preemptive deterministic scheduling algorithm for multithreaded replicas
    Basile, C
    Kalbarczyk, Z
    Iyer, R
    2003 INTERNATIONAL CONFERENCE ON DEPENDABLE SYSTEMS AND NETWORKS, PROCEEDINGS, 2003, : 149 - 158
  • [28] Optimal scheduling with strict deadlines
    Bhattacharya, Partha P., 1600, (34):
  • [29] Real-time scheduling on multithreaded processors
    Kreuzinger, J
    Schulz, A
    Pfeffer, M
    Ungerer, T
    Brinkschulte, U
    Krakowski, C
    SEVENTH INTERNATIONAL CONFERENCE ON REAL-TIME COMPUTING SYSTEMS AND APPLICATIONS, PROCEEDINGS, 2000, : 155 - 159
  • [30] Scheduling communication in multithreaded programs: experimental results
    Gomez, JC
    Rego, V
    Sunderam, VS
    CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2006, 18 (01): : 1 - 28