Geekbench is a benchmarking tool measures system performance by executing a number of CPU and GPU related benchmarking tests. This tool can be used to measure performance not only of bare metal systems, but also of virtualized systems as well. The easiest way to do this is to use a docker image with pre-installed and set as the entry point. This image can be used either as a docker image or as part of a docker-compose file.
Geekbench can be run directly from the docker command line. This example pulls the image from docker hub, runs it with a controlling terminal attached for output, and then removes it when it completes. The program will provide a running log of it’s findings and the tests it is running to stdout, but the full output will be available online via a link that will be provided in the output.
$ docker run -it --rm davidsarkany/geekbench
Geekbench 5.3.1 Tryout : https://www.geekbench.com/
Geekbench 5 is in tryout mode.
<--------- SNIP --------->
Uploading results to the Geekbench Browser. This could take a minute or two
depending on the speed of your internet connection.
Upload succeeded. Visit the following link and view your results online:
https://browser.geekbench.com/v5/cpu/4882648
Visit the following link and add this result to your profile:
https://browser.geekbench.com/v5/cpu/4882648/claim?key=365602
You can also run this application via a compose-file; this is somewhat preferable to running directly via docker run
, as it gives you a bit more control over the process. It is important to set the restart
command to no
in order to restrict the program from running once. Otherwise, it will run the benchmark over and over again until the container is stopped or deleted.
A sample compose file is provided here:
version: "2.3"
services:
geekbench:
image: "davidsarkany/geekbench"
restart: "no"
Note that if you are testing GPU resources, the docker compose file needs to contain the correct commands/arguments to enable the container to access the GPU. The following compose file shows a sample for NVIDIA GPUs.
version: '2.3'
services:
geekbench:
image: "davidsarkany/geekbench"
network_mode: "host"
restart: no
runtime: nvidia
environment:
- NVIDIA_VISIBLE_DEVICES=all
The Geekbench container can be deployed to MobiledgeX as both a docker image and as a docker-compose file.
Deploying the Geekbench container through the MobiledgeX console is no different from the process used for any other docker-compose deployment.