Blog

The state of Docker on popular RISC-V platforms

I've been testing a Milk-V Jupiter this week, and have tested a number of other RISC-V development boards over the past two years.

As with any new CPU architecture, software support and ease of adoption are extremely important if you want to reach a wider audience. I wouldn't expect every developer and SBC hobbyist to be able to compile the Linux kernel, and the need to compile much of anything these days is getting rare. So having any instance where one has to know how to tweak a Makefile or pass in different flags to a compiler is a bit of a turn-off for platform adoption.

So one thing I've followed closely is how easy it is for me to get my own software running on RISC-V boards. It's one thing to run some vendor-provided demos. It's another entirely to take my real-world applications and infrastructure apps, and get them to work without hassle.

And to that end, Docker and Ansible, two tools I use extensively for dev/ops work, both run stably—though with plenty of caveats since RISC-V is still so new.

Where is Qualcomm's Snapdragon X Elite Dev Kit?

I signed up to buy a Qualcomm Snapdragon X Dev Kit the second I found out about it. It's supposed to be the Mac mini killer for Windows.

Snapdragon X Elite Dev Kit Transparent

They even promoted it with this amazing-looking transparent shell, and I and hundreds of other devs were ready to pony up the $899 Qualcomm was asking.

Their pre-order form said it would be out June 18. Almost exactly one month later, I got an email saying it was available. Great!

So I went to the purchase page on Arrow... and it showed as out of stock. That was about 15 minutes after receiving the email.

There were three possibilities:

NUMA Emulation speeds up Pi 5 (and other improvements)

Recently an Igalia engineer posted a NUMA Emulation patch for the Pi 5 to the Linux Kernel mailing list. He said it could improve performance of Geekbench 6 scores up to 6% for single-core, and 18% for multicore.

My testing didn't quite match those numbers, but I did see a significant and consistent performance increase across both Geekbench 6:

Raspberry Pi 5 Geekbench 6 Score comparison with NUMA Emulation enabled

And High Performance Linpack:

Raspberry Pi 5 HPL Gigaflops and efficiency comparison with NUMA Emulation enabled

If AI chatbots are the future, I hate it

AT&T Fiber Internet - speedtest graph

About a week ago, my home Internet (AT&T Fiber) went from the ~1 Gbps I pay for down to about 100 Mbps (see how I monitor my home Internet with a Pi). It wasn't too inconvenient, and I considered waiting it out to see if the speed recovered at some point, because latency was fine.

But as you can see around 7/7 on that graph, the 100 Mbps went down to about eight, and that's the point where my wife starts noticing how slow the Internet is. Action level.

So I fired up AT&T's support chat. I'm a programmer, I can usually find ways around the wily ways of chatbots.

Except AT&T's AI-powered chatbot seems to have a fiendish tendency to equate 'WiFi' with 'Internet', no doubt due to so many people thinking they are one and the same.

Installing Ansible on a RISC-V computer

Ansible runs on Python, and Python runs on... well pretty much everything. Including newer RISC-V machines.

But Ansible has a lot of dependencies, and some of these dependencies have caused frustration from time to time on x86 and Arm (so having issues with a dependency is just a way of life when you enter dependency hell)... but in this case, for the past few months, I've never had luck installing Ansible from PyPI (Python's Package Index) on any RISC-V system, using pip install ansible.

I prefer installing this way (rather than compiling from source or from system packages) because it generally gets the latest version of Ansible, with an easy upgrade/downgrade path. It's also easy to add ansible to a Python requirements.txt file and install it alongside other package dependencies.

Regardless, the cryptography library, which requires a Rust compiler to build if the package is not already built for a particular system, has made it difficult to install Ansible from pip:

Testing new Raspberry Pi 5 Cases - $7 to $79

Since the Pi 5's launch, a number of Pi case redesigns have launched, and there are a few new entrants with something to offer. Like Fractal's 'Baby North'... which, unfortunately, is only a prototype designed for their displays at Computex, and is not being planned for sale. At least not for now! I'll write more about this case later in this post.

Fractal Baby North - Raspberry Pi 5 Case

The Pi 5's thermals are close enough to the Pi 4 that old cooling solutions work okay, but the port layout and inclusion of a power button means at least minimal redesigns are necessary.

Here are a few of the Pi 5 cases I've been testing (most for over a month, in various places), and my thoughts on each.

Raspberry Pi 5 Case (official)

The official case for the Raspberry Pi 5 is like a saltine cracker.