Published July 3, 2026 | Version v1

ELiSE: A tool to support algorithmic design for HPC co-scheduling

Description

As high-performance computing systems continue to advance, new methodologies for efficient resource usage are emerging. One such technique is co-location, where multiple jobs share the same node-level resources throughout their execution in an attempt to improve overall system throughput and job speedup. This approach can be particularly beneficial for memory-bound HPC applications when more memory bandwidth is available. Optimizing co-location involves two key aspects: user satisfaction and system utilization, each measured by a variety of related metrics. This is a complex problem and there is a shortage of tools that enable researchers to quickly develop and test co-scheduling algorithms with simplicity and accuracy, without requiring extensive environment configuration. In response to that, we propose ELiSE a Python-based framework designed for the rapid development of scheduling algorithms with co-location capabilities, featuring also current-state practices such as backfilling. ELiSE offers a standalone library and operates both under a CLI for numerous experimentations, and under a GUI for ease of use. Key features include the ability to generate different types of static or dynamic workloads, specify system architecture, use in-built or custom-made (co-)scheduling algorithms, visualize performance metrics, and export results. Leveraging these features, we conducted several experiments and provide preliminary estimates of potential trade-offs and optimization strategies in the realm of co-scheduling. ELiSE source code is available here.

Files

ELiSE_A_tool_to_support_algorithmic_design_for_HPC_co_scheduling.pdf

Files (1.3 MB)

Additional details

Software

Repository URL
https://github.com/cslab-ntua/elise
Programming language
Python