Skip to content

CollaborativeStateMachines/Pulse

Repository files navigation

Pulse Scheduler

License: GPL v3 Issues Version

Pulse is a research prototype scheduler for multi-objective scheduling of service-based applications across multi-cluster Cloud–Edge–IoT infrastructures. It is based on the paper:

Pulse: Multi-objective Scheduling for Service-Based Applications in Multi-Cluster Cloud-Edge-IoT Infrastructures
(see citation below)

Overview

The scheduler models scheduling as two interconnected optimization problems:

  • Local assignment problem—assigning services to resources within a cluster.
  • Global composition problem—composing assignments across multiple clusters.

To explore trade-offs between objectives, Pulse leverages selectors to choose solutions from Pareto fronts.

For multi-objective optimization, Pulse integrates with the MOEA Framework, a Java library for evolutionary multi-objective optimization.

Usage

Pulse is implemented as a Java-based Gradle project. It can be used directly as a library within other Java projects. To build and install the library locally:

./gradlew clean build
./gradlew publishToMavenLocal

After publishing, you can include Pulse in your own Java project via your build.gradle:

dependencies {
    implementation 'org.pulse:scheduler:0.1.0'
}

The paper describes a Kubernetes-based implementation of Pulse, realized through a custom orchestration system for Kubernetes. This repository does not contain that implementation. Instead, Pulse here is provided as an orchestration-system-independent description of the multi-cluster scheduling architecture and its optimization components.

For questions related to the Kubernetes-based implementation, please contact the authors of the paper.

License

This project is licensed under the GPLv3—see the LICENSE file for details.

Citation

If you use Pulse in your research, please cite:

Marlon Etheredge, Juan Aznar Poveda, Stefan Pedratscher, Abolfazl Younesi, Thomas Fahringer,
Pulse: Multi-objective scheduling of service-based applications in multi-cluster cloud–edge–IoT infrastructures,
Journal of Network and Computer Applications,
Volume 248,
2026,
104439,
ISSN 1084-8045,
https://doi.org/10.1016/j.jnca.2026.104439.
(https://www.sciencedirect.com/science/article/pii/S1084804526000147)
Abstract: The rapid growth of cloud computing and the expansion of edge and IoT technologies are becoming essential for meeting the performance, scalability, and latency requirements of modern distributed service-based applications. While these applications facilitate the accommodation of real-world workloads, their placement across a computing continuum spanning the cloud, edge, and IoT remains challenging. Existing service scheduling works often rely on simulations or orchestration systems limited to a single cluster. While simulations fail to capture real-world constraints, single-cluster orchestration systems introduce significant overhead and cannot capture the heterogeneity, network latency, and cross-cluster dependencies across cloud, edge, and IoT layers. In this paper, we introduce Pulse, a fully distributed scheduling system designed to optimize the deployment of distributed service-based applications across multi-cluster environments. Pulse leverages a two-phase distributed multi-objective optimization approach: locally optimizing for monetary cost and fairness within clusters, and globally optimizing for monetary cost and latency across multiple clusters. Pulse is built atop a lightweight orchestration framework, which enables service coordination across cloud, edge, and IoT layers, ensuring adaptability to heterogeneous infrastructures and the latency among geo-distributed clusters. To validate our approach, we conduct a comprehensive real-world evaluation on the Grid’5000 infrastructure, demonstrating that Pulse outperforms state-of-the-art scheduling methods by improving total resource utilization by 34.5%, reducing monetary cost by 82.6%, and lowering the average end-to-end network latency among services by 75.0%. These results highlight Pulse’s effectiveness in managing large-scale, service-based applications in realistic, multi-cluster environments.
Keywords: Computing continuum; Distributed scheduling; Multi-cluster environments; Multi-objective scheduling; Service-based applications; Orchestration; Multi-objective evolutionary optimization

About

No description or website provided.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages