Efficient high-level parallel programming

被引:21
|
作者
Botorog, GH
Kuchen, H
机构
[1] Rhein Westfal TH Aachen, Lehrstuhl Informat 2, D-52074 Aachen, Germany
[2] Univ Munster, Inst Wirtschaftsinformat, D-48159 Munster, Germany
关键词
algorithmic skeletons; high-level parallel programming; efficient implementation of functional features; distributed arrays;
D O I
10.1016/S0304-3975(97)00196-5
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Algorithmic skeletons are polymorphic higher-order functions that represent common parallelization patterns and that are implemented in parallel. They can be used as the building blocks of parallel and distributed applications by embedding them into a sequential language. In this paper, we present a new approach to programming with skeletons. We integrate the skeletons into an imperative host language enhanced with higher-order functions and currying, as well as with a polymorphic type system. We thus obtain a high-level programming language, which can be implemented very efficiently. We then present a compile-time technique for the implementation of the functional features which has an important positive impact on the efficiency of the language. After describing a series of skeletons which work with distributed arrays, we give two examples of parallel algorithms implemented in our language, namely matrix multiplication and Gaussian elimination. Run-time measurements for these and other applications show that we approach the efficiency of message-passing C up to a factor between 1 and 1.5. (C) 1998-Elsevier Science B.V. All rights reserved.
引用
收藏
页码:71 / 107
页数:37
相关论文
共 50 条
  • [31] Special Issue: Practical Aspects of High-Level Parallel Programming INTRODUCTION
    Loulergue, Frederic
    SCALABLE COMPUTING-PRACTICE AND EXPERIENCE, 2005, 6 (04): : III - III
  • [32] INTRODUCTION TO THE SPECIAL ISSUE: PRACTICAL ASPECTS OF HIGH-LEVEL PARALLEL PROGRAMMING
    Benoit, Anne
    Loulergue, Frederic
    SCALABLE COMPUTING-PRACTICE AND EXPERIENCE, 2007, 8 (04): : V - V
  • [33] On the adequacy of lightweight thread approaches for high-level parallel programming models
    Castello, Adrian
    Mayo, Rafael
    Sala, Kevin
    Beltran, Vicenc
    Balaji, Pavan
    Pena, Antonio J.
    FUTURE GENERATION COMPUTER SYSTEMS-THE INTERNATIONAL JOURNAL OF ESCIENCE, 2018, 84 : 22 - 31
  • [34] Guest Editor’s Note: High-Level Parallel Programming 2019
    Christoph Kessler
    International Journal of Parallel Programming, 2020, 48 : 581 - 582
  • [35] JADE - A HIGH-LEVEL, MACHINE-INDEPENDENT LANGUAGE FOR PARALLEL PROGRAMMING
    RINARD, MC
    SCALES, DJ
    LAM, MS
    COMPUTER, 1993, 26 (06) : 28 - 38
  • [37] Guest Editor’s Note: High-Level Parallel Programming 2021
    Virginia Niculescu
    Frédéric Loulergue
    International Journal of Parallel Programming, 2023, 51 : 271 - 273
  • [38] Guest Editor's Note: High-Level Parallel Programming 2021
    Niculescu, Virginia
    Loulergue, Frederic
    INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING, 2023, 51 (4-5) : 271 - 273
  • [39] High-Level Programming of FPGA-Accelerated Systems with Parallel Patterns
    Birath, Bjorn
    Ernstsson, August
    Tinnerholm, John
    Kessler, Christoph
    INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING, 2024, 52 (04) : 253 - 273
  • [40] Guest Editor's Note: High-Level Parallel Programming 2019
    Kessler, Christoph
    INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING, 2020, 48 (04) : 581 - 582