Does Docker have any competitors

kofler.info

For many developers, the most CPU-intensive process is compiling large projects. For me as an author it is the conversion of Markdown files first into the LaTeX syntax (Pandoc) and then into a PDF document (,,). For a few days I have had a Mac Mini M1 as an additional test computer. Of course, I was curious to see how fast this thing really is - in the only real-world test that is relevant to me: when creating PDFs from LaTeX files.

Set up

My fully scientific ;-) benchmark setup looked like this:

  • Computer 1: Lenovo P1 notebook with i7-8750H CPU, 32 GB RAM, Ubuntu 20.04 LTS
  • Computer 2: Mac Mini M1: 16 GB RAM, M1-CPU, macOS 11.2

The LaTeX file to be translated is 1.3 Mbytes in size (this results in approx. 550 pages of text), the EPS files to be embedded are 80 Mbytes, and the resulting PDF file is then around 18 Mbytes. So manageable amounts of data.

All tools (,,) are single-threaded, so unfortunately do not benefit from many CPU cores.

Linux plus Docker

Under Linux I use a Docker container for Pandoc and LaTeX, which contains all tools in an unchangeable version. The use of Docker has proven to be very effective, firstly because I can quickly "move" a whole book to another computer without a lot of installation work and everything continues to work, and secondly, because there are no LaTeX or Pandoc updates that make my hand-knitted scripts compatible to destroy.

If my notebook is running in 'quiet mode' (CPU speed limited to 80% = 2.2GHz, no turbo mode), the PDF generation (first, then 2x, and) takes about 2:09 min, i.e. 129 Seconds.

If I'm in a hurry and set the CPU to 'Performance' (full clock frequency, with turbo mode), the speed almost doubles, running time 1:14 min.However, the fan then howls like a jet fighter, which I hate and reduce concentration.

macOS plus Docker

Docker for the Mac Mini M1 has made massive strides in the past few weeks and is now doing pretty well. I've been working with RC3 from April 1st. Many popular images are already available natively for ARM. My LaTeX script runs in 1:12 min, so within the scope of the measurement inaccuracy as fast as on the Lenovo notebook with full CPU performance. However, the Mac Mini is absolutely silent. (There is a fan. It runs continuously at 1700 RPM, but it is inaudible to my ears. Unless you are doing synthetic benchmark tests or unpacking the Xcode image, the fan will never be audible.)

PS: Everyone (and especially the heise.de authors) who think Docker is obsolete in view of the container competition from Podman and Co. should try using containers on non-Intel-compatible systems or outside of the Linux world to work :-)

macOS native with MacTeX 2021

The first versions of Docker for the ARM CPU from Apple suffered from massive performance problems, especially with I / O operations. Database systems were severely affected. In the meantime, this problem seems to have been largely resolved, but I wanted to know whether Docker is not a brake on my setup.

So I installed MacTeX 2021 (only available for a few days, supports the ARM architecture natively) and repeated my test with it. Result: 1:05 min. (I also ran Pandoc in this test under Docker because the Pandoc version I need is not available as a native ARM download. That's why I got the somewhat older Pandoc version 2.7.3 compiled from the sources themselves into an Ubuntu Docker image.)

Summary

Terms for as well as for 2x,,

All in all, the performance of the M1 CPU is impressive - especially when you consider not only the speed but also the power consumption. I know, of course, that I compare apples with pears: The Intel CPU is about two years older than the M1 CPU. The Mac is a (small) desktop computer; a notebook was used as a comparison computer. A desktop system with a current Intel or AMD CPU is of course faster than both test candidates, and with suitable cooling for my task is also (almost) silent.

On the other hand: As fluid as macOS feels on an M1 computer - even Apple only boils with water. Synthetic tests (e.g. GeekBench) make the M1 appear faster than it actually is for real-world tasks. After the media roar since the M1 was introduced, I actually expected that the Mac Mini would outperform my notebook for miles. It is definitely not the case. (Of course, I cannot rule out that Apple will go a step further with the M1X or M2 or whatever the name of the M1 successor. But CPU development does not stop at Intel and AMD either. I expect Intel in particular that the company is now waking up from the slumber of recent years. Nothing motivates better than good competition.)

Left

LaTeXM1MACMarkdownPandoc