Hello everyone,
I was doing some benchmarking between my docker container an a bare-metal install of different software I use. I compared a CentOS 7 install to a CentOS7 docker and a Fedora 33 install to a Fedora 33 docker.
The setup is as followed for the docker:
-
CentOS 7 docker is started with sbin/init and accessed using docker exec
-
Fedora 32 docker is started with /bin/bash
Both are ran in a VM (meaning I have a Fedora 33 VM and a CentOS7 VM, but both centos and fedora docker are being ran on the Fedora 33 VM)
So the software I ran for the test are Ansys Fluent and StarCCM+ for centos and Openfoam for Fedora.
For the ansys fluent test:
Ansys Fluent Concorde Case (8 cores)
5960x (linux CentOS7 docker in Fedora 33 VM V19.3) = 142.939 seconds (for 140 iterations)
5960x (linux CentOS7 docker in Fedora 33 VM V19.13) = 393.108 seconds (287 Iterations, Check Mesh fixed 10% bad cells for 4 passthroughs twice)
5960x (linux CentOS7 VM Ansys R19.3) = 132.494 seconds (for 140 iterations)
5960x (linux CentOS7 VM Ansys R19.3) = 383.644 seconds (287 Iterations, Check Mesh fixed 10% bad cells for 4 passthroughs twice)
For StarCCM+ test:
StarCCM+
Blade Element Helicoptor Method (8 core):
5960x (linux CentOS7 docker in Fedora 33 VM V10.03.065) = 10684.45 seconds (or 8 times total cpu time) or 1335.56 seconds total
5960x (linux CentOS7 VM V10.03.065) = 9514.61 Seconds (or 8 times total cpu time) or 1189.326 seconds total
For Openfoam test:
OpenFOAM-7 Incompressible SimpleFOAM Motorbike (6 core):
5960x (linux Fedora 32 docker in Fodera 33 VM (OFv7) = 98.52 seconds (SnappyHexMesh) and 228.77 seconds (SimpleFoam)
5960x (linux Fodera 33 VM (OFv7) = 99.22 seconds (SnappyHexMesh) and 213.5 seconds (SimpleFoam)
OpenFOAM-v1912 Incompressible SimpleFOAM Motorbike (6 core):
5960x (linux Fedora 32 docker in Fodera 33 VM (OFv1912) = 77.56 seconds (SnappyHexMesh) and 261.73 seconds (SimpleFoam)
5960x (linux Fodera 33 VM (OFv1912) = 73.78 seconds (SnappyHexMesh) and 229.55 seconds (SimpleFoam)
OpenFOAM-v2012 Incompressible SimpleFOAM Motorbike (6 core):
5960x (linux Fedora 32 docker in Fodera 33 VM (OFv2012) = 77.08 seconds (SnappyHexMesh) and 246.53 seconds (SimpleFoam)
5960x (linux Fodera 33 VM (OFv2012) = 75.2 seconds (SnappyHexMesh) and 236.8 seconds (SimpleFoam)
Based on those numbers I am looking at:
fluent (concorde, 140 iteration) docker perf hit = 7.31 %
fluent (concorde, 287 iterations) docker perf hit = 2.41 %
StarCCM+ (Blade Element Method Helicopter) docker perf hit = 10.95%
Openfoam 7 (motorbike) docker perf hit = 6.67%
Openfoam 1912 (motorbike) docker perf hit = 12.23%
Openfoam 2012 (motorbike) docker perf hit = 3.95%
So is that a normal overhead to expect? I believe the delta will increase/decrease depending on simulations. Is it possible to get an almost 0% (or less than 0.1%) delta?
Here is the script I use to launch CentOS docker: My script