a load balancing framework for adaptive and asynchronous applications kevin barker, andrey...
Post on 22-Dec-2015
228 views
TRANSCRIPT
A Load Balancing Framework for Adaptive and Asynchronous
ApplicationsKevin Barker, Andrey Chernikov, Nikos
Chrisochoides,Keshav Pingali ;IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 1
5, NO. 2, pp. 183-192 Feb. 2004Presented by 張肇烜
Outline
• Introduction
• Software Framework and Programming Model
• Load Balancing Library
• Performance Evaluation
• Related Work
• Conclusions
Introduction
• Stop-and-repartition method:– Load-balancing is accomplished by
dynamically repartitioning the data after the global synchronization phases.
– Synchronization overhead can overwhelm the benefits of improved load balance.
Introduction (cont.)
• PREMA:– Parallel Runtime Environment for Multicompu
ter Applications.– Single-sided communication similar to that pro
vided by Active Messages.– A framework which allows for the easy and eff
icient implementation of customized dynamic load balancing algorithms.
Introduction (cont.)
• Active Messages:– An efficient communication architecture for
multiprocessors.– Efficient supports a variety of parallel program
models, including message passing , shared memory and dataflow.
Software Framework and Programming Model
• Data Movement and Control Substrate (DMCS) :– DMCS provides a flexible and easy to
understand application program interface for one-sided communication operations.
Software Framework and Programming Model (cont.)
• Mobile Object Layer (MOL):– A runtime substrate for parallel adaptive and
irregular computations.– A mobile object may be referenced by any
processor in the parallel system by using its associated mobile pointer.
Load Balancing Library
• PREMA’s ILB component library is built using the framework provided by DMCS and the MOL.
• Supports the rapid development of algorithms, allowing researchers to experiment without modification of existing application code.
Load Balancing Library (cont.)
• Load balancing methods:– Diffusion– Master-worker– Work-stealing– Multilist
Related Work (cont.)
• Zoltan:– Zonltan provides graph-based partitioning algo
rithms and several geometric load balancing algorithms.
• CHARM++:– CHARM++ is built on an underlying language
which is a dialect of C++ and provides extensive dynamic load balancing strategies.