Skip to content

Latest commit

 

History

History
80 lines (48 loc) · 1.82 KB

3.1_Comparison_Definition.md

File metadata and controls

80 lines (48 loc) · 1.82 KB

3. Comparison Definition

Notes

Notes about application dependency, installation, etc.

Setup

Information about the setup

Non App Related Performance

Measured on a single bare-metal server in order to get precise measurements limiting any possibile bias and variance that virtualization can introduce.

Image Size

The size of the image is measured with the du command and with other commands provided by the container solution, when available

Memory Footprint (idle)

The container is launched and the memory footprint is measured with the free -m command and with other commands provided by the container solution, when available

Startup Time Singular Container

This test:

  • does not depend on the application type
  • is simple to implement to avoid measurement errors
  • can be implemented for all the container solutions
Implementation

Start the container and send a single character with netcat. Measure the time between the container is started and the character is received.

Start the container and execute the following command

echo -n 'm' | nc -q0 127.0.0.1 1234

On the same machine we run

nc -l 1234 | hexdump -C

to wait for the character.

Measured multiples times, in seconds, waiting 1 second between each measurement

Startup Time Mutiple Containers

Launch a given number of containers one after another one and measure the startup, stop time while measuring the memory consumption

App Related Performance

Measured on cloud with specific applications in order to mimic real world used cases

Cloud

Solutions:

  • Docker
  • Singularity
  • Podman

Applications: https://github.com/NicholasRasi/phoronix-test-suite-docker#cloud

HPC
  • Docker
  • Singularity
  • CharlieCloud
  • Saurus

Applications: MPI

IoT
  • Docker
  • Balena

Applications: IoT application