Our research in load balancing focuses on two primary areas: Object Migration and Seed Balancing.
Object Migration
- Periodic Load Balancing for bipartite object networks
- Adaptive use of Workstation Clusters
- Optimal Object Migration to handle background load variation
A major reason slowing deployment of parallel programs is that efficient parallel programs are difficult to write. Parallel programming adds a second dimension to programming: not just when will a particular operation be executed, but where, i.e. what processor will perform it. A vast number of parallelizable applications do not have a regular structure for efficient parallelization. Such applications require load balancing to perform efficiently in parallel. The load in these applications may also change over time, requiring rebalancing. The programmer is left with the choice of either distributing computation haphazardly, producing poorly-performing programs, or spending more development time including load-balancing code in the application.
In recent years, new types of "parallel" computers have appeared. Networks of commodity workstations are making parallel computation available to an expanding group of researchers. Workstation networks present new issues for the application programmer. Now, in addition to application imbalance, a parallel program must be concerned with background load from other simultaneous users. Parallel programs may run on clusters of workstations on an interactive user's desks, where the primary user only permits parallel computation when the computer is not being used interactively. Finally, computational clusters may expand over time, but with the rapid increase in computational power, new processors are likely to be faster than the older machines that they are supplementing. To maximize throughput, load balancers in parallel applications must account for all these factors.
Work migration is a unified scheme for handling both application-specific and externally-arising load imbalance. The difficulty with migrating work is that either work is repartitioned in an application-specific way, placing the burden on the application programmer, or that automatic migration is supported, but with poor accuracy, due to the lack of application-specific knowledge.
Object migration provides a way of performing accurate, fine-grained automatic load balancing. Objects usually have small, well-defined regions of memory on which they operate, reducing the cost of migration. Using the Charm++ object model, the run-time system measures the work represented by particular objects, rather than deriving execution time from application-specific heuristics. Furthermore, the run-time system records object-to-object communication patterns, so the load balancer can asses the communication impact of migrating particular objects.
With the advent of massively parallel machines like Bluegene/Q and Cray XC40, our recent work has focused on topology-aware migration of objects. We have developed strategies which take into account both the message sizes and the network hop length to minimize the total amount of communication.
Communication latencies form a significant factor in the performance of parallel applications on these large machines. The latencies are primarily due to network contention in the grid and torus networks, which are usually used in these large parallel machines. Our load balancing strategies minimize the impact of topology by heuristically minimizing the number of hops traveled by each communicated byte. They are not network specific and work for all classes of interconnection networks.
Seed Load Balancing
Seed load balancing involves the movement of object creation messages, or "seeds", to create a balance of work across a set of processors. Several variations of strategies are being analyzed. In particular, we distinguish between global strategies, which may result in communication amongst all processors to exchange load information, and neighborhood strategies, which typically impose a dense graph organization on the processors, and restrict communication to neighbors only. Some strategies use averaging of loads to determine how seeds should be distributed, while others use receiver-initiated strategies, where a processor requests work from elsewhere when it is about to go idle. A strategy that places seeds randomly when they are created and does no movement of seeds thereafter is used as a baseline for comparison on numerous benchmarks.
People
Papers / Talks
-
23-022023
MS Thesis -
23-012023
PhD ThesisVector Load Balancing for High-Performance Parallel Applications
- Ronak Akshay Buch
-
18-032018
PaperAdaptive Methods for Irregular Parallel Discrete Event Simulation Workloads
- Eric Mikida
- Laxmikant Vasudeo Kale
-
18-022018
PaperMulti-level Load Balancing with an Integrated Runtime Approach
- Seonmyeong Bak
- Harshitha Menon
- Sam White
- Matthias Diener
- Laxmikant Vasudeo Kale
-
17-082017
PaperIntegrating OpenMP into the Charm++ Programming Model
- Seonmyeong Bak
- Harshitha Menon
- Sam White
- Matthias Diener
- Laxmikant Vasudeo Kale
-
17-012017
PosterPoster: Automated Load Balancer Selection Based on Application Characteristics
- Harshitha Menon
- Kavitha Chandrasekar
- Laxmikant Vasudeo Kale
-
16-192016
PaperHandling Transient and Persistent Imbalance Together in Distributed and Shared Memory
- Harshitha Menon
- Seonmyeong Bak
- Phil Miller
- Sam White
- Nitin Bhat
- Laxmikant Vasudeo Kale
-
14-412014
PaperApplying Graph Partitioning Methods in Measurement-based Dynamic Load Balancing
- Harshitha Menon
- Abhinav Bhatele
- Sébastien Fourestier
- Laxmikant Vasudeo Kale
- François Pellegrini
-
14-242014
PaperOptimizing Data Locality for Fork/Join Programs Using Constrained Work Stealing
- Jonathan Lifflander
- Sriram Krishnamoorthy
- Laxmikant Vasudeo Kale
-
14-192014
Paper- Laxmikant Vasudeo Kale
- Akhil Langer
- Osman Sarood
-
13-332013
PaperThermal Aware Automated Load Balancing for HPC Applications
- Harshitha Menon
- Bilge Acun
- Simon Garcia De Gonzalo
- Osman Sarood
- Laxmikant Vasudeo Kale
-
13-262013
PaperA Distributed Dynamic Load Balancer for Iterative Applications
- Harshitha Menon
- Laxmikant Vasudeo Kale
-
13-172013
Phd Thesis -
13-162013
PaperParallel Science and Engineering Applications: The Charm++ Approach
- Laxmikant Vasudeo Kale
- Abhinav Bhatele
-
13-052013
PaperImproving HPC Application Performance in Cloud through Dynamic Load Balancing
- Abhishek Gupta
- Osman Sarood
- Laxmikant Vasudeo Kale
- Dejan Milojicic
-
12-532012
TalkAutomated Load Balancing Invocation based on Application Characteristics
- Harshitha Menon
- Nikhil Jain
- Gengbin Zheng
- Laxmikant Vasudeo Kale
-
12-412012
MS Thesis -
12-312012
PaperA Hierarchical Approach for Load Balancing on Parallel Multi-core Systems
- Laercio L. Pilla
- Christiane Pousa Ribeiro
- Daniel Cordeiro
- Chao Mei
- Abhinav Bhatele
- Philippe O. A. Navaux
- Francois Broquedis
- Jean-Francois Mehaut
- Laxmikant Vasudeo Kale
-
12-292012
PaperAutomated Load Balancing Invocation based on Application Characteristics
- Harshitha Menon
- Nikhil Jain
- Gengbin Zheng
- Laxmikant Vasudeo Kale
-
12-202012
Paper‘Cool’ Load Balancing for High Performance Computing Data Centers
- Osman Sarood
- Phil Miller
- Ehsan Totoni
- Laxmikant Vasudeo Kale
-
12-112012
PaperWork Stealing and Persistence-based Load Balancers for Iterative Overdecomposed Applications
- Jonathan Lifflander
- Sriram Krishnamoorthy
- Laxmikant Vasudeo Kale
-
11-382011
TalkDynamic Load Balance for Optimized Message Logging in Fault Tolerant HPC Applications
- Esteban Meneses
- Greg Bronevetsky
- Laxmikant Vasudeo Kale
-
11-282011
PaperImproving Parallel System Performance with a NUMA-aware Load Balancer
- Laercio L. Pilla
- Christiane Pousa Ribeiro
- Daniel Cordeiro
- Abhinav Bhatele
- Philippe O. A. Navaux
- Jean-Francois Mehaut
- Laxmikant Vasudeo Kale
-
11-262011
PaperDynamic Load Balance for Optimized Message Logging in Fault Tolerant HPC Applications
- Esteban Meneses
- Greg Bronevetsky
- Laxmikant Vasudeo Kale
-
11-252011
PaperParSSSE: An Adaptive Parallel State Space Search Engine
- Yanhua Sun
- Gengbin Zheng
- Pritish Jetley
- Laxmikant Vasudeo Kale
-
11-172011
Paper- Chao Mei
- Yanhua Sun
- Gengbin Zheng
- Eric Bohm
- Laxmikant Vasudeo Kale
- James Phillips
- Chris Harrison
-
10-262010
PaperA Comparative Analysis of Load Balancing Algorithms Applied to a Weather Forecast Model
- Eduardo Rodrigues
- Philippe O. A. Navaux
- Jairo Panetta
- Alvaro Fazenda
- Celso Mendes
- Laxmikant Vasudeo Kale
-
10-202010
PaperPeriodic Hierarchical Load Balancing for Large Supercomputers
- Gengbin Zheng
- Abhinav Bhatele
- Esteban Meneses
- Laxmikant Vasudeo Kale
-
10-082010
PaperHierarchical Load Balancing for Charm++ Applications on Large Supercomputers
- Gengbin Zheng
- Esteban Meneses
- Abhinav Bhatele
- Laxmikant Vasudeo Kale
-
09-092009
PaperTowards a Framework for Abstracting Accelerators in Parallel Applications: Experience with Cell
- David Kunzman
- Laxmikant Vasudeo Kale
-
09-022009
PaperDynamic Topology Aware Load Balancing Algorithms for Molecular Dynamics Applications
- Abhinav Bhatele
- Laxmikant Vasudeo Kale
- Sameer Kumar
-
08-032008
PaperMassively Parallel Cosmological Simulations with ChaNGa
- Pritish Jetley
- Filippo Gioachin
- Celso Mendes
- Laxmikant Vasudeo Kale
- Thomas Quinn
-
08-012008
PaperOvercoming Scaling Challenges in Biomolecular Simulations across Multiple Platforms
- Abhinav Bhatele
- Sameer Kumar
- Chao Mei
- James Phillips
- Gengbin Zheng
- Laxmikant Vasudeo Kale
-
07-122007
MS Thesis -
07-012007
PaperOptimizing Distributed Application Performance Using Dynamic Grid Topology-Aware Load Balancing
- Greg Koenig
- Laxmikant Vasudeo Kale
-
06-052006
PaperMultiple Flows of Control in Migratable Parallel Programs
- Gengbin Zheng
- Orion Lawlor
- Laxmikant Vasudeo Kale
-
05-262005
PosterSpeeding Up Parallel Simulation with Automatic Load Balancing
- Hari Govind
- Gengbin Zheng
- Laxmikant Vasudeo Kale
- Michael Breitenfeld
- Philippe Geubelle
-
05-192005
PaperPerformance Visualization and Analysis of Parallel Discrete Event Simulations with Projections
- Chee Wai Lee
- Terry Wilmarth
- Laxmikant Vasudeo Kale
-
05-182005
PaperTopology-Aware Task Mapping for Reducing Communication Contention on Large Parallel Machines
- Tarun Agarwal
- Amit Sharma
- Laxmikant Vasudeo Kale
-
05-072005
MS Thesis -
05-062005
Phd Thesis -
99-061999
PaperBranch and Bound Based Load Balancing for Parallel Applications
- Shobana Radhakrishnan
- Robert Brunner
- Laxmikant Vasudeo Kale
-
99-031999
PaperHandling Application-Induced Load Imbalance using Parallel Objects
- Robert Brunner
- Laxmikant Vasudeo Kale
-
98-021998
PaperLoad Balancing in Parallel Molecular Dynamics
- Laxmikant Vasudeo Kale
- Milind Bhandarkar
- Robert Brunner
-
96-071996
PaperAutomating Runtime Optimizations for Load Balancing in Irregular Problems
- Sanjeev Krishnan
- Laxmikant Vasudeo Kale
-
95-151995
PaperAgents: an Undistorted Representation of Problem Structure
- Joshua Yelon
- Laxmikant Vasudeo Kale
-
93-131993
PaperA Load Balancing Strategy For Prioritized Execution of Tasks
- Amitabh Sinha
- Laxmikant Vasudeo Kale
-
92-051992
PaperA Load Balancing Strategy For Prioritized Execution of Tasks
- Amitabh Sinha
- Laxmikant Vasudeo Kale
-
90-111990
Paper -
89-081989
PaperA Dynamic Scheduling Strategy for the Chare Kernel System
- Wennie Shu
- Laxmikant Vasudeo Kale