DEV Community

Discussion on: I Got Tired of Docker Eating My Raspberry Pi's RAM — So I Built My Own Container Orchestrator

Collapse
 
fyodorio profile image
Fyodor

Nice project. Didn't you actually compare/benchmark it (on RAM consumption) with podman? I understand there are some [significant] other implications (dependencies and security) but still (as podman is quite a project!) — I didn't try it myself on Pi but was planning to, so I wonder how big is the difference.

Collapse
 
zrouga profile image
Mohamed Zrouga • Edited

@fyodorio thanks! The comparison with Podman is a bit tricky because the architecture goals are different.

Podman is daemonless by design, while nyxd is intentionally built around a daemon architecture because the long-term goal is clustering and distributed orchestration in future releases.

So a pure “apples-to-apples” benchmark isn’t fully accurate.

That said, from my current ARM/Pi benchmarks:

  • nyxd is roughly ~1.2x faster than Docker on startup/runtime operations

  • Podman is currently about ~1.1x faster than nyxd in raw execution paths

But resource-wise, nyxd still comes out lighter overall because the stack is extremely small:

  • basically just crun + the nyxd binary

  • no large supporting component chain like Docker/containerd

  • no traditional CNI plugin dependency on the default path

So even though Podman is impressively lean already, the total idle footprint and dependency surface of nyxd is still lower in my tests.

I’ll probably publish proper memory profiling numbers and methodology in a follow-up post because I think the ARM space really needs more transparent benchmarking around this stuff.