A uniform approach for programming distributed heterogeneous computing systems

被引:15
|
作者
Grasso, Ivan [1 ,2 ]
Pellegrini, Simone [1 ]
Cosenza, Biagio [1 ]
Fahringer, Thomas [1 ]
机构
[1] Univ Innsbruck, Inst Comp Sci, A-6020 Innsbruck, Austria
[2] Barcelona Supercomp Ctr, Barcelona, Spain
基金
奥地利科学基金会;
关键词
OpenCL; MPI; Distributed computing; Heterogeneous computing; Programming model; Runtime system;
D O I
10.1016/j.jpdc.2014.08.002
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Large-scale compute clusters of heterogeneous nodes equipped with multi-core CPUs and GPUs are getting increasingly popular in the scientific community. However, such systems require a combination of different programming paradigms making application development very challenging. In this article we introduce libWater, a library-based extension of the OpenCL programming model that simplifies the development of heterogeneous distributed applications. libWater consists of a simple interface, which is a transparent abstraction of the underlying distributed architecture, offering advanced features such as inter-context and inter-node device synchronization. It provides a runtime system which tracks dependency information enforced by event synchronization to dynamically build a DAG of commands, on which we automatically apply two optimizations: collective communication pattern detection and device-host-device copy removal. We assess libWater's performance in three compute clusters available from the Vienna Scientific Cluster, the Barcelona Supercomputing Center and the University of Innsbruck, demonstrating improved performance and scaling with different test applications and configurations. (C) 2014 The Authors. Published by Elsevier Inc.
引用
收藏
页码:3228 / 3239
页数:12
相关论文
共 50 条
  • [1] dOpenCL: Towards a Uniform Programming Approach for Distributed Heterogeneous Multi-/Many-Core Systems
    Kegel, Philipp
    Steuwer, Michel
    Gorlatch, Sergei
    2012 IEEE 26TH INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM WORKSHOPS & PHD FORUM (IPDPSW), 2012, : 174 - 186
  • [2] An approach to the development of programming software for distributed computing and information processing systems
    Kutepov, V. P.
    Malanin, V. N.
    Pankov, N. A.
    ICSOFT 2008: PROCEEDINGS OF THE THIRD INTERNATIONAL CONFERENCE ON SOFTWARE AND DATA TECHNOLOGIES, VOL PL/DPS/KE, 2008, : 83 - 90
  • [3] dOpenCL: Towards uniform programming of distributed heterogeneous multi-/many-core systems
    Kegel, Philipp
    Steuwer, Michel
    Gorlatch, Sergei
    JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING, 2013, 73 (12) : 1639 - 1648
  • [4] PROGRAMMING-LANGUAGES FOR DISTRIBUTED COMPUTING SYSTEMS
    BAL, HE
    STEINER, JG
    TANENBAUM, AS
    COMPUTING SURVEYS, 1989, 21 (03) : 261 - 322
  • [5] Programming environments for grids and distributed computing systems
    Sunderam, V
    RECENT ADVANCES IN PARALLEL VIRTUAL MACHINE AND MESSAGE PASSING INTERFACE, 2003, 2840 : 28 - 28
  • [6] Mobile computing systems programming: A graduate distributed computing course
    Kulik, Lars
    IEEE Distributed Systems Online, 2007, 8 (05):
  • [7] METASYSTEMS - AN APPROACH COMBINING PARALLEL-PROCESSING AND HETEROGENEOUS DISTRIBUTED COMPUTING SYSTEMS
    GRIMSHAW, AS
    WEISSMAN, JB
    WEST, EA
    LOYOT, EC
    JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING, 1994, 21 (03) : 257 - 270
  • [8] OBJECT ORIENTATION IN HETEROGENEOUS DISTRIBUTED COMPUTING SYSTEMS
    NICOL, JR
    WILKES, CT
    MANOLA, FA
    COMPUTER, 1993, 26 (06) : 57 - 67
  • [9] On task allocation in heterogeneous distributed computing systems
    Indian Inst of Technology, Madras, India
    Comput Syst Sci Eng, 4 (231-238):
  • [10] Security architecture for heterogeneous distributed computing systems
    Naqvi, S
    Riguidel, M
    38TH ANNUAL 2004 INTERNATIONAL CARNAHAN CONFERENCE ON SECURITY TECHNOLOGY, PROCEEDINGS, 2004, : 34 - 41