Title
A hierarchical load-balancing framework for dynamic multithreaded computations
Abstract
High-level parallel programming models that support dynamic fine-grained threads in a global object space, are becoming increasingly popular for expressing irregular applications based on sophisticated adaptive algorithms and pointer-based data structures. However, implementing these multithreaded computations on scalable parallel machines poses significant challenges, particularly with respect to load-balancing. Load-balancing techniques must simultaneously incur low overhead to support fine-grained threads as well as be sophisticated enough to preserve data locality and thread execution priority.This paper presents a hierarchical framework which addresses these conflicting goals by viewing the computation as being made up of different thread subsets, each of which are load-balanced independently. In contrast to previous processor-centric approaches that have advocated the use of a uniform policy for load-balancing all threads in a computation, our framework allows each thread subset to be load-balanced using a policy most suited to its characteristics (e.g., locality or priority sensitivity). The framework consists of two parts: (i) language support which permits a programmer or the compiler to tag different thread subsets with appropriate policies, and (ii) run-time support which synthesizes overall application load-balance by composing these individual policies.This framework has been implemented in the Illinois Concert runtime system, an implementation platform for fine-grained concurrent object-oriented languages. Results for four large irregular applications on the Cray T3D and the SGI Origin 2000 demonstrate advantages of the hierarchical framework: performance improves by up to an order of magnitude as compared to using a uniform load-balancing policy.
Year
DOI
Venue
1998
10.1109/SC.1998.10047
SC
Keywords
DocType
ISBN
fine-grained thread,hierarchical load-balancing framework,thread subset,language support,fine-grained concurrent object-oriented language,thread execution priority,hierarchical framework,dynamic multithreaded computation,appropriate policy,run-time support,dynamic fine-grained thread,different thread subsets,orbit,object oriented language,satellite,load balance,data structure,apogee,multithreading,parallel programming model,virtual reality,rotate,perigee
Conference
0-89791-984-X
Citations 
PageRank 
References 
4
0.48
21
Authors
2
Name
Order
Citations
PageRank
Vijay Karamcheti164667.03
Andrew A. Chien23696405.97