Abstract
Virtualisation technologies are widely used in Cloud computing infrastructures, because they can be provisioned cheaply and quickly to meet demand. The common approaches are either to package a Operating System (OS) as a Virtual Machine, or to containerise software with an OS kernel. An emerging alternative are unikernels, which are customised kernels to support just one application. Unikernels are lightweight and an applications has sole use of the kernel, which offers potential for fast, resource efficient and secure execution. For these reasons, unikernels may be idea for parallel computing in the Cloud. However, the parallel performance of unikernel-based Cloud applications has not been extensively studied. This paper presents an evaluation of the OSv unikernel using a parallelised Mandelbrot benchmark, comparing with Docker and a monolithic VM for runtime, parallel speedups and boot-up time. OSv has the fastest boot-up time, and is comparable with the parallel speedups of Docker and the monolithic VM.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Wu, S., et al.: Android unikernel: gearing mobile code offloading towards edge computing. Future Gener. Comput. Syst. 86, 694–703 (2018). https://doi.org/10.1016/j.future.2018.04.069
Madhavapeddy, A., et al.: Unikernels: library operating systems for the cloud. ACM SIGARCH Comput. Archit. News 41(1), 461–72 (2013). https://doi.org/10.1145/2490301.2451167
Cheon, J., Kim, Y., Hur, T., Byun, S., Woo, G.: An analysis of haskell parallel programming model in the HaLVM. J. Phys. Conf. Ser. 1566, 012070 (2020). https://doi.org/10.1088/1742-6596/1566/1/012070
Madhavapeddy, A., Scott, D.: Unikernels: rise of the virtual library operating system: what if all the software layers in a virtual appliance were compiled within the same safe, high-level language framework? Queue 11, 30–44 (2013). https://doi.org/10.1145/2557963.2566628
Kivity, A., et al.: OSv-optimizing the operating system for virtual machines. In: 2014 USENIX Annual Technical Conference (USENIX ATC 2014), pp. 61–72 (2014). https://www.usenix.org/conference/atc14/technical-sessions/presentation/kivity
Kuenzer S, et al.: Unikraft: fast, specialised Unikernels the easy way. In: Proceedings of the Sixteenth European Conference on Computer Systems, pp. 376–394. ACM, Online Event United Kingdom (2021)
Cha, S., Jeon, S., Jeong, Y., Kim, J., Jung, S.: OS noise analysis on Azalea-Unikernel. In: 2022 24th International Conference on Advanced Communication Technology (ICACT), pp. 81–84 (2022)
Xavier, B., Ferreto, T., Jersak, L.: Time provisioning evaluation of KVM, docker and unikernels in a cloud platform. In: 2016 16th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGrid), pp. 277–280 (2016)
What Is Rally? - Rally 3.3.1 dev7 Documentation. https://rally.readthedocs.io/en/latest/. Accessed 19 May 2022
OSProfiler (2022). https://github.com/stackforge/osprofiler
Projects | Unikernels. http://Unikernel.org/projects/. Accessed 14 May 2022
Tajbakhsh, M., Bagherzadeh, J.: Microblogging hash tag recommendation system based on semantic TF-IDF: Twitter use case. In: 2016 IEEE 4th International Conference on Future Internet of Things and Cloud Workshops (FiCloudW), pp. 252–257 (2016)
Boettiger, C.: An introduction to docker for reproducible research. SIGOPS Oper. Syst. Rev. 49, 71–79 (2015). https://doi.org/10.1145/2723872.2723882
Prabhakar, R., Kumar, R.: Concurrent Programming in Go
Why Gleam \(\cdot \) Chrislusf/Gleam Wiki. GitHub. https://github.com/chrislusf/gleam. Accessed 26 May 2022
Selvacoumar, A.: AKILAN1999/Mandelbrot-go-uni-kernel-. GitHub. https://github.com/Akilan1999/mandelbrot-go-uni-kernel-
El-Nashar, A.: arXiv e-print archive. To parallelize or not to parallelize, speed up issue. https://arxiv.org/pdf/1103.5616.pdf
Makkad, S.: Mandelbrot Set Basics. Fractal To Desktop (2018). https://fractaltodesktop.com/mandelbrot-set-basics/index.html
Bratterud, A.: Enhancing cloud security and privacy: The unikernel solution. https://aura.abdn.ac.uk/bitstream/handle/2164/8524/AAB02.pdf
Bratterud, A.: A framework for elastic execution of existing MPI programs. IEEE Xplore. https://ieeexplore.ieee.org/abstract/document/6008941
Fontana de Nardin, I., Da Rosa Righi, R., Lima Lopes, T., André da Costa, C., Yeom, H., Köstler, H.: On revisiting energy and performance in microservices applications: a cloud elasticity-driven approach. Parallel Comput. 108, 102858 (2021). https://www.sciencedirect.com/science/article/pii/S0167819121001010
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Selvacoumar, A., Stewart, R., Loidl, HW., Soobhany, A.R. (2023). Benchmarking Parallelism in Unikernels. In: Singer, J., Elkhatib, Y., Blanco Heras, D., Diehl, P., Brown, N., Ilic, A. (eds) Euro-Par 2022: Parallel Processing Workshops. Euro-Par 2022. Lecture Notes in Computer Science, vol 13835. Springer, Cham. https://doi.org/10.1007/978-3-031-31209-0_23
Download citation
DOI: https://doi.org/10.1007/978-3-031-31209-0_23
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-31208-3
Online ISBN: 978-3-031-31209-0
eBook Packages: Computer ScienceComputer Science (R0)