Using Preemptive Thread Migration to Load-Balance Data-Parallel Applications
- 52 Downloads
Generic load balancing policies for irregular parallel applications may be efficiently implemented by integrating preemptive thread migration into the runtime support. In this context, a delicate issue is to manage pointer validity in a migration-safe way. In  we presented an iso-address approach to this problem. This paper discusses the impact of the iso-address migration scheme on the runtime of the Adaptor  HPF compiler. This runtime (previously modified so as to generate multithreaded code for our PM2 runtime system ) now provides a generic support for dynamic load balancing, using preemptive thread migration. We report some encouraging results obtained with our system on a HPF flame simulation code, a motivating application of HPF 2.0 .
KeywordsDynamic Load Balance Distribute Shared Memory Virtual Address Shared Memory System Block Distribution
- G. Antoniu, L. Bougé, and R. Namyst An efficient and transparent thread migration scheme in the PM2 runtime system. In Proc. 3rd Workshop on Runtime Systems for Parallel Programming (RTSPP’ 99), Lect. Notes in Computer Science, San Juan, Puerto Rico, April 1999. Springer-Verlag. Workshop held as part of IPPS/SPDP 1999, IEEE/ACM.Google Scholar
- Robert D. Blumofe and Charles E. Leiserson Scheduling multithreaded computations by work stealing. In 35th Annual Symposium on Foundations of Computer Science (FOCS’ 94), pages 356–368, Santa Fe, New Mexico, November 1994.Google Scholar
- L. Bougé, P. Hatcher, R. Namyst, and C. Perez Multithreaded code generation for a HPF data-parallel compiler. In Proc. 1998 Int. Conf. Parallel Architectures and Compilation Techniques (PACT’98), ENST, Paris, France, October 1998.Google Scholar
- Th. Brandes. Adaptor. Available at http://www.gmd.de/SCAI/lab/adaptor/adaptor_home.html.
- J. Casas, R. Konuru, S.W. Otto, R. Prouty, and J. Walpole Adaptive load migration systems for PVM. In Proc. Supercomputing’ 94, pages 390–399, Washington, D. C., November 1994.Google Scholar
- D. Cronk, M. Haines, and P. Mehrotra Thread migration in the presence of pointers. In Proc. Mini-track on Multithreaded Systems, 30th Intl Conf. on System Sciences, Hawaii, January 1997.Google Scholar
- HPF Forum HPF-2 Scope of activities and motivating applications, November 1994. Ver. 0.8.Google Scholar
- HPF Forum High Performance Fortran Language Specification. Rice University, Texas, Oct. 1996. Version 2.0.Google Scholar
- A. Itzkovitz, A. Schuster, and L. Shalev Thread migration and its application in distributed shared memory systems. J. Systems and Software, 42(1):71–87, July 1998.Google Scholar
- E. Mascarenhas and V. Rego Ariadne: Architecture of a portable threads system supporting mobile processes. Software: Practice & Experience, 26(3):327–356, March 1996.Google Scholar
- Myricom. Myrinet link and routing specification. Available at http://www.myri.com/myricom/document.html, 1995.
- R. Namyst and J.-F. Méhaut. PM2: Parallel multithreaded machine. a computing environment for distributed architectures. In Parallel Computing (ParCo’ 95), pages 279–285. Elsevier Science Publishers, September 1995.Google Scholar
- S. Orlando and R. Perego. SUPPLE: an efficient run-time support for non-uniform parallel loops. Research Report CS-96-17, Dip. di Matematica Applicata ed Informatica, Universita Ca’Foscari di Venezia, December 1996.Google Scholar
- S. Orlando and R. Perego. A comparison of implemantation strategies for nonuniform data-parallel computations. J. Parallel Distrib. Comp., 52(2):132–149, March 1998.Google Scholar
- B. Weissman, B. Gomes, J.W. Quittek, and M. Holtkamp. Efficient fine-grain thread migration with Active Threads. In Proceedings of IPPS/SPDP 1998, Orlando, Florida, March 1998.Google Scholar