Cost-Directed Refactoring for Parallel Erlang Programs

被引:26
作者
Brown, Christopher [1 ]
Danelutto, Marco [2 ]
Hammond, Kevin [1 ]
Kilpatrick, Peter [3 ]
Elliott, Archibald [1 ]
机构
[1] Univ St Andrews, Sch Comp Sci, St Andrews, Fife, Scotland
[2] Univ Pisa, Dept Comp Sci, Pisa, Italy
[3] Queens Univ Belfast, Sch Elect Elect Engn & Comp Sci, Belfast, Antrim, North Ireland
基金
英国工程与自然科学研究理事会;
关键词
TRANSFORMATION;
D O I
10.1007/s10766-013-0266-5
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
This paper presents a new programming methodology for introducing and tuning parallelism in Erlang programs, using source-level code refactoring from sequential source programs to parallel programs written using our skeleton library, Skel. High-level cost models allow us to predict with reasonable accuracy the parallel performance of the refactored program, enabling programmers to make informed decisions about which refactorings to apply. Using our approach, we demonstrate easily obtainable, significant and scalable speedups of up to 21 on a 24-core machine over the sequential code.
引用
收藏
页码:564 / 582
页数:19
相关论文
共 34 条
[1]  
Aldinucci M, 2002, ADV COMP THE PRACT, V10, P59
[2]  
Aldinucci M., 1998, REWRITING SKELETON P, P44
[3]  
Aldinucci M., 1999, P PDCS INT C PAR DIS, P955
[4]  
Aldinucci Marco., 2001, PARALLEL ALGORITHMS, V16, P87
[5]  
[Anonymous], STRUCTURED DEV PARAL
[6]  
[Anonymous], 2003, Parallel Processing Letters, DOI DOI 10.1142/S0129626403001380_EPRINT:HTTPS://DOI.ORG/10.1142/S0129626403001380
[7]  
Aronis S., 2012, P 11 ACM SIGPLAN WOR, P33
[8]  
Aronis S., 2012, TRENDS FUNCTIONAL PR
[9]   P(3)L - A STRUCTURED HIGH-LEVEL PARALLEL LANGUAGE, AND ITS STRUCTURED SUPPORT [J].
BACCI, B ;
DANELUTTO, M ;
ORLANDO, S ;
PELAGATTI, S ;
VANNESCHI, M .
CONCURRENCY-PRACTICE AND EXPERIENCE, 1995, 7 (03) :225-255
[10]   Skil: An imperative language with algorithmic skeletons for efficient distributed programming [J].
Botorog, GH ;
Kuchen, H .
PROCEEDINGS OF THE FIFTH IEEE INTERNATIONAL SYMPOSIUM ON HIGH PERFORMANCE DISTRIBUTED COMPUTING, 1996, :243-252