Thumbnail
Access Restriction
Open

Author Macdonald, Steve ♦ Szafron, Duane ♦ Schaeffer, Jonathan
Source CiteSeerX
Content type Text
File Format PDF
Language English
Subject Domain (in DDC) Computer science, information & general works ♦ Data processing & computer science
Subject Keyword Coarse-grained Application ♦ Parallel Programmer ♦ Expert Parallel Programmer ♦ Intuitive Simplicity ♦ Intuitive Structure ♦ Load Balancing ♦ Paper Detail ♦ Performance Result ♦ Object-oriented State ♦ Master Slave Structure ♦ Novice Parallel Programmer ♦ Pipeline Style ♦ Good Speedup ♦ Many Problem ♦ Efficient Execution ♦ Serious Problem
Description The pipeline is a simple and intuitive structure to speed up many problems. Novice parallel programmers are usually taught this structure early on. However, expert parallel programmers typically eschew using the pipeline in coarse-grained applications because it has three serious problems that make it difficult to implement efficiently. First, processors are idle when the pipeline is not full. Second, load balancing is crucial to obtaining good speedup. Third, it is difficult to incrementally incorporate more processors into an existing pipeline. Instead, experts recast the problem as a master/slave structure which does not suffer from these problems. This paper details a transformation that allows programs written in a pipeline style to execute using the master/slave structure. Parallel programmers can benefit from both the intuitive simplicity of the pipeline and the efficient execution of a master/slave structure. This is demonstrated by performance results from two applications.
Educational Role Student ♦ Teacher
Age Range above 22 year
Educational Use Research
Education Level UG and PG ♦ Career/Technical Study
Learning Resource Type Article
Publisher Date 2004-01-01
Publisher Institution 9TH INTERNATIONAL WORKSHOP ON HIGH-LEVEL PARALLEL PROGRAMMING MODELS AND SUPPORTIVE ENVIRONMENTS (HIPS’2004) AT IPDPS