Making Open Work
May 8–9, 2017: Training & Tutorials
May 10–11, 2017: Conference
Austin, TX

Quantifying container runtime performance: A serverless platform case study

Phil Estes (IBM)
2:25pm2:50pm Tuesday, May 9, 2017
Location: Ballroom G
Average rating: ****.
(4.33, 3 ratings)

Containers are already “fast” in one sense: compared to VMs, the start time of a container seems instantaneous, and this improvement is part of the “wow” factor and attraction of containerized applications. But certain use cases care about the milliseconds needed to perform container lifecycle operations.

Phil Estes offers an overview of a serverless (function-as-a-service) framework that initially used the full Docker container engine as the execution vehicle for invoking user functions via containers. After several performance and stability challenges, this project decided to assess the various layers of the Docker engine (containerd and runC) as potential options for the function invoker. Out of that work came an open source project, bucketbench, that can be used to generate benchmarks of container lifecycle operations (e.g., start, stop, kill, remove, pause, unpause) and compare multithreaded operation throughput and stability of each optional engine. Phil provides details on the bucketbench project, explains how it has been used to generate performance data for these container runtimes, and shares lessons learned along the way that greatly impact container runtime performance, including bottlenecks in the Linux kernel.

Join in to learn how you can use bucketbench for your own performance tuning or assessment of container runtimes and how you can collaborate on improvements to the bucketbench project.

Photo of Phil Estes

Phil Estes

IBM

Phil Estes is a senior technical staff member in the office of the CTO of IBM Cloud, focusing on open source strategy and upstream community leadership and helping IBM customers navigate the new world of cloud, containers, and open source. Phil is a core contributor and maintainer on the Docker engine project, where he has contributed key features like user namespace support and multiplatform image capabilities. Phil is also a founding maintainer of the containerd project and participates in the Open Container Initiative (OCI) as a contributor to the development of runC. Phil is a regular speaker at meetups and industry conferences on container technology. He maintains an active blog on container topics.