If you use this software in a publication, please cite it as:
N. Carl, T. Pfandzelter, and D. Bermbach, Towards Energy-Efficient Serverless Computing with Hardware Isolation, October 2025. arXiv: 2510.08180.
@article{carl2025towards,
author = "Carl, Natalie and Pfandzelter, Tobias and Bermbach, David",
title = "Towards Energy-Efficient Serverless Computing with Hardware Isolation",
month = oct,
year = 2025,
eprint = "2510.08180"
}For a full list of publications, please see our website.
The code in this repository is licensed under the terms of the MIT license.
This repository contains prototypes, data, and instructions for four separate experiments that we use in our paper:
simulation: Our simulation of FaaS workerslinpack: Benchmarks of the hardware we use in the papermicrovm: Benchmarks of the energy impact of microVMschipless: Prototype of an SoC-based FaaS worker
Each directory contains separate instructions in a README.md file.
Note that instructions are specific to the hardware we use and may not transfer to other hardware. We use a Dell PowerEdge R450 with two Intel Xeon Silver 4310 as our large server. Our SoC is a Banana Pi M2 Zero with an Allwinner H3 chip.
We use TinkerForge sensors for power measurements. For the server, we attach an energy monitor bricklet to a spliced IEC 60320 cable, which powers our server. For the SoC, we splice a 5V USB power supply with an industrial relay bricklet (to control power supply and boot/interrupt the board) and a voltage/current bricklet.
Some analysis steps require Jupyter notebooks.
Requirements for a virtual environment are listed in requirements.txt.
Some experiments require binaries built from the Go source in cmd.
A working Go toolchain and GNU/Make are required.
Execute make to build the binaries.