Authors: Bartłomiej Przybylski (Institute of Informatics, University of Warsaw, Poland); Maciej Pawlik (AGH University of Science and Technology, Krakow, Poland; Academic Computer Centre Cyfronet AGH, Krakow, Poland); Paweł Żuk (Institute of Informatics, University of Warsaw, Poland); Bartłomiej Łagosz (AGH University of Science and Technology, Krakow, Poland); Maciej Malawski (Sano Centre for Computational Medicine, Krakow, Poland; AGH University of Science and Technology, Krakow, Poland); and Krzysztof Rzadca (Institute of Informatics, University of Warsaw, Poland)
Abstract: Modern HPC workload managers and their careful tuning contribute to the high utilization of HPC clusters. However, due to inevitable uncertainty it is impossible to completely avoid node idleness. Although such idle slots are usually too short for any HPC job, they are too long to ignore them. Function-as-a-Service (FaaS) paradigm promisingly fills this gap, and can be a good match, as typical FaaS functions last seconds, not hours. Here we show how to build a FaaS infrastructure on idle nodes in an HPC cluster in such a way that it does not affect the performance of the HPC jobs significantly. We dynamically adapt to a changing set of idle physical machines, by integrating open-source software Slurm and OpenWhisk.
We designed and implemented a prototype solution that allowed us to cover up to 90% of the idle time slots on a 50k-core cluster that runs production workloads.
Back to Technical Papers Archive Listing