FRATS - A PARALLEL REDUCTION STRATEGY FOR SHARED MEMORY

被引:0
|
作者
LANGENDOEN, KG
VREE, WG
机构
关键词
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
FRATS is a strategy for parallel execution of functional languages on shared memory multiprocessors. It provides fork-join parallelism through the explicit usage of an annotation to (recursively) spark a set of parallel tasks. These tasks are executed by ordinary sequential graph reducers which share the program graph. FRATS avoids the consistency problem of graph reducers updating shared nodes by a special evaluation order: Before sparking a set of tasks, all (sub) redexes in those tasks are reduced to normal forms. Then the tasks can proceed in parallel without any synchronisation (e.g., locks) because tasks only share normalised graph nodes. The eager evaluation of shared redexes, however, does not preserve full laziness which might result in superfluous or, worse, infinite computation. The paper presents in detail program transformations to enforce termination and avoid superfluous computation. Analysis of a benchmark of parallel applications shows that these transformations are necessary and effective with negligible costs. Sometimes they even increase performance.
引用
收藏
页码:99 / 110
页数:12
相关论文
共 50 条
  • [21] Parallel garbage collection for shared memory multiprocessors
    Flood, CH
    Detlefs, D
    Shavit, N
    Zhang, XL
    USENIX ASSOCIATION PROCEEDINGS JAVA(TM) VIRTUAL MACHINE RESEARCH AND TECHNOLOGY SYMPOSIUM, 2001, : 185 - 194
  • [22] PARALLEL HASHING - AN EFFICIENT IMPLEMENTATION OF SHARED MEMORY
    KARLIN, AR
    UPFAL, E
    JOURNAL OF THE ACM, 1988, 35 (04) : 876 - 892
  • [23] Parallel Hierarchical Clustering on Shared Memory Platforms
    Hendrix, William
    Patwary, Md Mostofa Ali
    Agrawal, Ankit
    Liao, Wei-keng
    Choudhary, Alok
    2012 19TH INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING (HIPC), 2012,
  • [24] Optimizing Parallel Clustering Throughput in Shared Memory
    Gowanlock, Michael
    Blair, David M.
    Pankratius, Victor
    IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 2017, 28 (09) : 2595 - 2607
  • [25] The Glasgow Parallel Reduction Machine: Programming Shared-memory Many-core Systems using Parallel Task Composition
    Tousimojarad, Ashkan
    Vanderbauwhede, Wim
    ELECTRONIC PROCEEDINGS IN THEORETICAL COMPUTER SCIENCE, 2013, (137): : 79 - 94
  • [26] A scalable memory-efficient architecture for parallel shared memory switches
    Matthews, Brad
    Elhanany, Itamar
    2007 WORKSHOP ON HIGH PERFORMANCE SWITCHING AND ROUTING, 2007, : 74 - +
  • [27] Adaptive Space-Shared Scheduling for Shared-Memory Parallel Programs
    Cho, Younghyun
    Oh, Surim
    Egger, Bernhard
    JOB SCHEDULING STRATEGIES FOR PARALLEL PROCESSING, JSSPP 2016, 2017, 10353 : 158 - 177
  • [28] COMBINATOR REDUCTION IN A SHARED-MEMORY MULTIPROCESSOR
    BURKIMSHER, PC
    COMPUTER JOURNAL, 1987, 30 (03): : 214 - 222
  • [29] Cyclic reduction on distributed shared memory machines
    Allmann, S
    Rauber, T
    Rünger, G
    NINTH EUROMICRO WORKSHOP ON PARALLEL AND DISTRIBUTED PROCESSING, PROCEEDINGS, 2001, : 290 - 297
  • [30] Highly Efficient Parallel ATPG Based on Shared Memory
    Cai, X.
    Wohl, P.
    Waicukauski, J. A.
    Notiyath, P.
    INTERNATIONAL TEST CONFERENCE 2010, 2010,