HitFlow: A Dataflow Programming Model for Hybrid Distributed- and Shared-Memory Systems

被引:1
|
作者
Fresno, Javier [1 ]
Barba, Daniel [1 ]
Gonzalez-Escribano, Arturo [1 ]
Llanos, Diego R. [1 ]
机构
[1] Univ Valladolid, Dept Informat, Valladolid, Spain
关键词
Distributed systems; Dynamic computation; Parallel programming models; Streaming computation;
D O I
10.1007/s10766-018-0561-2
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Dataflow programming consists in developing a program by describing its sequential stages and the interactions between them. The runtime systems supporting this kind of programming are responsible for exploiting the parallelism by concurrently executing the different stages as soon as their dependencies are met. In this paper we introduce a new parallel programming model and framework based on the dataflow paradigm. It presents a new combination of features that allows to easily map programs to shared or distributed memory, exploiting data locality and affinity to obtain the same performance than optimized coarse-grain MPI programs. These features include: It is a unique one-tier model that supports hybrid shared- and distributed-memory systems with the same abstractions; it can express activities arbitrarily linked, including non-nested cycles; it uses internally a distributed work-stealing mechanism to allow Multiple-Producer/Multiple-Consumer configurations; and it has a runtime mechanism for the reconfiguration of the dependences and communication channels which also allows the creation of task-to-task data affinities. We present an evaluation using examples of different classes of applications. Experimental results show that programs generated using this framework deliver good performance in hybrid distributed- and shared-memory environments, with a similar development effort as other dataflow programming models oriented to shared-memory.
引用
收藏
页码:3 / 23
页数:21
相关论文
共 50 条
  • [41] SHARED-MEMORY VERSUS DISTRIBUTED-MEMORY - HALFTIME SCORE
    OTTO, SW
    [J]. COMPUTER PHYSICS COMMUNICATIONS, 1989, 57 (1-3) : 95 - 100
  • [42] THE SHARED-MEMORY LANGUAGE PSATHER ON A DISTRIBUTED-MEMORY MULTIPROCESSOR
    FELDMAN, JA
    LIM, CC
    RAUBER, T
    [J]. SIGPLAN NOTICES, 1993, 28 (01): : 17 - 20
  • [43] OpenMP: An industry standard API for shared-memory programming
    Dagum, L
    Menon, R
    [J]. IEEE COMPUTATIONAL SCIENCE & ENGINEERING, 1998, 5 (01): : 46 - 55
  • [44] TECHNIQUES FOR REDUCING CONSISTENCY-RELATED COMMUNICATION IN DISTRIBUTED SHARED-MEMORY SYSTEMS
    CARTER, JB
    BENNETT, JK
    ZWAENEPOEL, W
    [J]. ACM TRANSACTIONS ON COMPUTER SYSTEMS, 1995, 13 (03): : 205 - 243
  • [45] Simulation of aerodynamics problem on a distributed shared-memory machine
    Chongwe, S
    [J]. HIGH PERFORMANCE COMPUTING ON THE INFORMATION SUPERHIGHWAY - HPC ASIA '97, PROCEEDINGS, 1997, : 93 - 98
  • [46] Predicting the performance of distributed virtual shared-memory applications
    Parsons, EW
    Brorsson, M
    Sevcik, KC
    [J]. IBM SYSTEMS JOURNAL, 1997, 36 (04) : 527 - 549
  • [47] Extending Shared-Memory Computations to Multiple Distributed Nodes
    Ahmed, Waseem
    [J]. INTERNATIONAL JOURNAL OF ADVANCED COMPUTER SCIENCE AND APPLICATIONS, 2020, 11 (08) : 675 - 685
  • [48] AUTOMATING DATA CONVERSION FOR HETEROGENEOUS DISTRIBUTED SHARED-MEMORY
    WORTMAN, DB
    ZHOU, S
    FINK, S
    [J]. SOFTWARE-PRACTICE & EXPERIENCE, 1994, 24 (01): : 111 - 125
  • [49] Implementation of the software distributed shared-memory system on the InfiniBand
    Park, I
    Choi, HW
    Han, Y
    Hwang, S
    Kim, SW
    Park, K
    [J]. PDPTA '04: PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED PROCESSING TECHNIQUES AND APPLICATIONS, VOLS 1-3, 2004, : 1273 - 1279
  • [50] HYBRID MESSAGE-PASSING AND SHARED-MEMORY PROGRAMMING IN A MOLECULAR DYNAMICS APPLICATION ON MULTICORE CLUSTERS
    Chorley, Martin J.
    Walker, David W.
    Guest, Martyn F.
    [J]. INTERNATIONAL JOURNAL OF HIGH PERFORMANCE COMPUTING APPLICATIONS, 2009, 23 (03): : 196 - 211