Skip to content

projectwagomu/lifelineglb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Elastic Lifeline-Based Global Load Balancer

This project contains the source code for a malleable and evolving lifeline-based global load balancer. The design of the load balancing scheme is derived from the lifeline-based global load balancer first implemented in X10 and which was later extended to support multiple workers per process and ported to Java.

The source code presented in this repository extends this scheme to make it both malleable and evolving. Thus, programs are able to dynamically increase and decrease the number of processes used to perform computation at runtime.

Build instructions

This project requires Java 11 or greater and Maven to compile the library.

This elastic global load balancer relies on a malleable implementation of the APGAS for Java library. This implementation can be found here. You should first install this library in your local Maven repository using the following commands:

cd ~
git clone https://github.com/projectwagomu/apgas.git apgas
cd apgas
git checkout v0.0.4
mvn install

Then, to compile this project, clone this repository and compile it with the following commands:

cd ~
git clone https://github.com/projectwagomu/lifelineglb.git lifelineglb
cd lifelineglb
mvn package

Launching a computation

A number of demonstrating scripts are provided in the bin directory.

License

This software is released under the terms of the Eclipse Public License v1.0, though it also uses third-party packages with their own licensing terms.

Publications

Contributors

In alphabetical order:

  • Patrick Finnerty
  • Raoul Goebel
  • Takuma Kanzaki
  • Jonas Posner