Comparing the AI Capabilities of Single-Board Computers (SBCs)

Comparing the AI Capabilities of Single-Board Computers (SBCs)
Photo by Ian Taylor / Unsplash

During the start of the pandemic in 2020 and we were scrambling to do work-from-home set-ups, I recorded a short video on how to make an OPNsense/pfSense router using any spare desktop lying around and as many USB dongles you could get your hands on to extend your networking. The intent was to share the knowledge as quick and as fast not just to my team but to anyone who might have needed it:

Roll your own work-from-home router in 15mins!

I never got to publish a public follow-up about the recommended rules as requested from the user comments. Although, I just might at some point find the internal Zoom sharing session I did for my team in the archives.

Anyways, fast forward to 2022 and I'd found myself needing to move my virtual router from my hyper-converged Proxmox VE set-up due to it running hot on enterprise-class SAS spinning drives. In fact, some of those same drives had started failing or their backplanes failing since Dell R720xd models were released back in 2012 – a full decade earlier.

The half-dozen Raspberry Pi 3Bs from 2016 that I'd been using as dashboard heads had come home with me to be repurposed for something else but, alas, not compatible for *sense but perhaps as very (very, very,) underpowered OpenWRT when combined with a USB dongle and an external switch. Throughput would be quite poor, however, given that the top-end would barely achieve 100Mbps under load in real-world scenarios.

This led me down the path of alternative single-board computers and perhaps an upgrade. However, if you remember 2022, you'll remember the supply-chain issues and the price-gouging prices in the open market. It was so bad, the Raspberry Foundation blog an update to everyone about the current status of things. By July of that year I'd discovered a few alternative boards like the NanoPi R5S from FriendlyElec and a few others. I can attest to the industrial hardiness of the NanoPi and case combo given that those things sat (and still do) in the garage under the hot Texas summers of contiguous 100-degree Fahrenheit weather.

Now, with the 2nd (or was it the 4th) downing of this blog site, I'm looking for a bit more resiliency apart from being hosted online. My sights turned to maybe using a Kubernetes cluster using the aforementioned rPi 3Bs. How exciting, learning new technology + working use-case! But, trust me, this all just ended in Smurf tears the last time I attempted to do that sometime last year and all I got to do was make an SD-card performance graph (which I seem to have forgotten to re-post).

TL;DR

If you're still with me, then let's dive into the previous, current, and potential future hardware I plan to unleash my devious designs on:

Full Comparison Table

SoC and CPU

Feature Raspberry Pi 3 Model B Raspberry Pi 3 Model B+ Raspberry Pi 5 with M.2 HAT+ and AI Kit (8GB model) NanoPi R5S (4GB model) NanoPi R6S NanoPi R6C (8GB model)
SoC Broadcom BCM2837 Broadcom BCM2837B0 Broadcom BCM2712 (or latest) Rockchip RK3568B2 Rockchip RK3588S Rockchip RK3588S
CPU 1.2 GHz 64/32-bit quad-core ARM Cortex-A53 1.4 GHz 64/32-bit quad-core ARM Cortex-A53 Quad-core ARM Cortex-A76, 64-bit, 1.8 GHz Quad-core ARM Cortex-A55, up to 2.0 GHz Quad-core ARM Cortex-A76, up to 2.4GHz and quad-core Cortex-A55, up to 1.8GHz Quad-core ARM Cortex-A76, up to 2.4GHz and quad-core Cortex-A55, up to 1.8GHz
CPU Architecture ARMv8-A ARMv8-A ARMv8-A ARMv8.2-A ARMv8-A ARMv8-A
Number of Cores 4 4 4 4 8 8
Instruction Set 64-bit (AArch64) and 32-bit (AArch32) 64-bit (AArch64) and 32-bit (AArch32) 64-bit (AArch64) and 32-bit (AArch32) 64-bit (AArch64) 64-bit (AArch64) and 32-bit (AArch32) 64-bit (AArch64) and 32-bit (AArch32)

GPU and Video

Feature Raspberry Pi 3 Model B Raspberry Pi 3 Model B+ Raspberry Pi 5 with M.2 HAT+ and AI Kit (8GB model) NanoPi R5S (4GB model) NanoPi R6S NanoPi R6C (8GB model)
GPU Broadcom VideoCore IV Broadcom VideoCore IV Broadcom VideoCore VII Mali-G52 ARM Mali-G610 MP4 ARM Mali-G610 MP4
GPU Features OpenGL ES 2.0, 1080p30 video decoding and encoding OpenGL ES 2.0, 1080p30 video decoding and encoding OpenGL ES 3.1, Vulkan 1.1, OpenCL 1.2 OpenGL ES 1.1/2.0/3.2, Vulkan 1.0/1.1, OpenCL 2.0 OpenGL ES 3.2, Vulkan 1.2, OpenCL 2.2 OpenGL ES 3.2, Vulkan 1.2, OpenCL 2.2
Video Decoding H.264/MPEG-4 AVC H.264/MPEG-4 AVC 4Kp60 HEVC decoder H.265 4K@60fps, H.264 4K@30fps H.265 8K@60fps, H.264 8K@30fps H.265 8K@60fps, H.264 8K@30fps
Video Encoding H.264 H.264 H.265/H.264 1080p@60fps H.265/H.264 1080p@60fps H.265/H.264 8K@30fps H.265/H.264 8K@30fps

RAM and Storage

Feature Raspberry Pi 3 Model B Raspberry Pi 3 Model B+ Raspberry Pi 5 with M.2 HAT+ and AI Kit (8GB model) NanoPi R5S (4GB model) NanoPi R6S NanoPi R6C (8GB model)
RAM 1 GB LPDDR2 1 GB LPDDR2 8GB LPDDR4X-4267 SDRAM 2GB/4GB LPDDR4X 8GB LPDDR4X 4GB/8GB LPDDR4X
Memory Interface LPDDR2 LPDDR2 LPDDR4X LPDDR4X LPDDR4X LPDDR4X
Storage microSD card slot microSD card slot microSD card slot, supports high-speed SDR104 mode, M.2 PCIe 2.0 slot for NVMe SSD microSD card slot, M.2 PCIe 2.0 slot for NVMe SSD 32GB eMMC, microSD card slot 32GB eMMC (optional), microSD card slot, M.2 PCIe 2.0 slot for NVMe SSD

Networking and USB

Feature Raspberry Pi 3 Model B Raspberry Pi 3 Model B+ Raspberry Pi 5 with M.2 HAT+ and AI Kit (8GB model) NanoPi R5S (4GB model) NanoPi R6S NanoPi R6C (8GB model)
Networking 10/100 Ethernet, 802.11n Wi-Fi, Bluetooth 4.1 Gigabit Ethernet (limited to ~300 Mbps), dual-band 802.11ac Wi-Fi, Bluetooth 4.2/BLE Dual-band 802.11ac Wi-Fi, Bluetooth 5.0/BLE, Gigabit Ethernet with PoE+ support 1 x Native Gigabit Ethernet, 2 x PCIe 2.5G Ethernet 1 x Native Gigabit Ethernet, 2 x PCIe 2.5G Ethernet 1 x Native Gigabit Ethernet, 1 x PCIe 2.5G Ethernet
USB Ports 4 x USB 2.0 ports 4 x USB 2.0 ports 2 x USB 3.0 ports, 2 x USB 2.0 ports 2 x USB 3.0 Type-A, 1 x USB 2.0 Type-A, 1 x USB Type-C (power and data) 1 x USB 3.0 Type-A, 1 x USB 2.0 Type-A, 1 x USB Type-C (power and data) 1 x USB 3.0 Type-A, 1 x USB 2.0 Type-A, 1 x USB Type-C (power and data)

Display and Audio

Feature Raspberry Pi 3 Model B Raspberry Pi 3 Model B+ Raspberry Pi 5 with M.2 HAT+ and AI Kit (8GB model) NanoPi R5S (4GB model) NanoPi R6S NanoPi R6C (8GB model)
Display Full-size HDMI, Composite video (3.5mm jack) Full-size HDMI, Composite video (3.5mm jack) Dual 4Kp60 HDMI display output with HDR support HDMI 2.0 port supporting 4K@60Hz HDMI 2.1 port supporting 8K@60fps HDMI 2.1 port supporting 8K@60fps
Audio 3.5mm jack, HDMI 3.5mm jack, HDMI 3.5mm jack, HDMI HDMI HDMI HDMI

Other Features

Feature Raspberry Pi 3 Model B Raspberry Pi 3 Model B+ Raspberry Pi 5 with M.2 HAT+ and AI Kit (8GB model) NanoPi R5S (4GB model) NanoPi R6S NanoPi R6C (8GB model)
Real-time Clock (RTC) Not applicable Not applicable Yes Yes Yes Yes
Power Button Not applicable Not applicable Yes Yes Yes Yes
PCIe Not applicable Not applicable PCIe 2.0 x1 PCIe 2.0 x1 No PCIe 2.1 x1
AI Module Not applicable Not applicable Hailo AI module containing a Neural Processing Unit (NPU) with 13 TOPS, 28.8 GFLOPS 0.8 TOPS NPU 6 TOPS NPU 6 TOPS NPU
Thermal Management Not applicable Not applicable Thermal pad pre-fitted between module and M.2 HAT+ Not specified Not specified Not specified
Power Supply 5V/2.5A DC via micro USB connector 5V/2.5A DC via micro USB connector 5V/5A DC power via USB-C, with Power Delivery support 5V/3A via USB Type-C 5V/3A via USB Type-C 5V/3A via USB Type-C
Dimensions 85.6mm x 56.5mm x 17mm 85.6mm x 56.5mm x 17mm Not specified 62 x 90 x 1.6 mm (without Case) / 68 x 94.5 x 30 mm (with Case) 90 x 62 mm 62 x 90 x 1.6 mm (without Case) / 68 x 94.5 x 30 mm (with Case)
Operating Temperature Not specified Not specified 0°C to 50°C (ambient) 0°C to 70°C 0°C to 70°C 0°C to 70°C
Operating System Raspbian (Raspberry Pi OS), various Linux distributions Raspbian (Raspberry Pi OS), various Linux distributions Raspberry Pi OS, various Linux distributions FriendlyWrt (based on OpenWrt), Android, Debian Android, Debian, Ubuntu, FriendlyWrt Android, Debian, Ubuntu, FriendlyWrt
Compliance Not specified Not specified For a full list of local and regional product approvals, visit pip.raspberrypi.com Not specified Not specified Not specified
GPIO 40 pins 40 pins 40 pins 12 pins 12 pins 30 pins
Average Price (USD) $35 $35 $150 - $180 $55 - $70 $120 - $150 $100 - $140

Summary of Average Prices

  • Raspberry Pi 3 Model B: $35
  • Raspberry Pi 3 Model B+: $35
  • Raspberry Pi 5 System (8GB model): $150 - $180
  • NanoPi R5S (4GB model): $55 - $70
  • NanoPi R6S: $120 - $150
  • NanoPi R6C (8GB model): $100 - $140
I'm doing some experiments with the Markdown function of this Ghost platform. The above was generated using GPT-4o after a few prompting nudges and having it parse the specs links from:

Here's that data again in a snapshot gallery:

I've decided for the now to keep both of my NanoPi R5S (with dual 2.5GbE ports and NVMe) each loaded with 512GB NVMe drives and 32GB SDXC cards.

While, they aren't the strongest of the bunch it would be a far cry even if I eventually managed to get all six-(6) of the rPi 3Bs working in tandem into a Kubernetes cluster:

Comparison:

Raspberry Pi 3 Model B Cluster (6 Nodes)

  • SoC: Broadcom BCM2837
  • CPU: 1.2 GHz 64/32-bit quad-core ARM Cortex-A53
  • RAM: 1 GB LPDDR2 per node
  • Total Cores: 24 cores (6 nodes x 4 cores)
  • Total Clock Speed: 28.8 GHz (6 nodes x 4 cores x 1.2 GHz)
  • Total RAM: 6 GB (6 nodes x 1 GB)
  • GPU: Broadcom VideoCore IV (one per node)
  • Networking: 10/100 Ethernet per node
  • Storage: microSD card slot per node
  • Operating Temperature: 0°C to 70°C (32°F to 158°F)
  • Price per Node: $35
  • Total Price: $210 (6 nodes x $35)

NanoPi R5S

  • SoC: Rockchip RK3568B2
  • CPU: Quad-core ARM Cortex-A55, up to 2.0 GHz
  • RAM: 4GB LPDDR4X
  • Total Cores: 4 cores
  • Total Clock Speed: 8.0 GHz (4 cores x 2.0 GHz)
  • Total RAM: 4 GB
  • GPU: Mali-G52 1-Core-2EE
  • Networking: 1 x Native Gigabit Ethernet, 2 x PCIe 2.5G Ethernet
  • Storage: 8GB/32GB eMMC, additional 512GB NVMe
  • Operating Temperature: 0°C to 70°C (32°F to 158°F)
  • Price: $70 (4GB model) + $60 (512GB NVMe) = $130

Comparison Table

Feature Raspberry Pi 3 Model B Cluster (6 Nodes) NanoPi R5S (with 512GB NVMe) Winner
Total Cores 24 cores 4 cores Raspberry Pi 3B
Total Clock Speed 28.8 GHz 8.0 GHz Raspberry Pi 3B
Total RAM 6 GB 4 GB Raspberry Pi 3B
GPU Broadcom VideoCore IV (6 GPUs) Mali-G52 1-Core-2EE NanoPi R5S
Networking 10/100 Ethernet per node 1 x Native Gigabit Ethernet, 2 x PCIe 2.5G Ethernet NanoPi R5S
Storage microSD card slot per node 8GB/32GB eMMC, 512GB NVMe NanoPi R5S
Operating Temperature 0°C to 70°C (32°F to 158°F) 0°C to 70°C (32°F to 158°F) Tie
Price $210 $130 NanoPi R5S

Summary

  • Processing Power: Raspberry Pi 3B Cluster wins in terms of total cores and clock speed.
  • RAM: Raspberry Pi 3B Cluster has more total RAM.
  • GPU: NanoPi R5S has a more advanced GPU.
  • Networking: NanoPi R5S offers superior networking capabilities.
  • Storage: NanoPi R5S with 512GB NVMe offers faster and more reliable storage.
  • Operating Temperature: Both are suitable for 100°F environment.
  • Price: NanoPi R5S is more cost-effective.

Overall Recommendation

For hosting container applications in a 100°F environment:

  • NanoPi R5S (with 512GB NVMe) is recommended due to its superior GPU, networking, and storage capabilities, along with a better price-performance ratio.
  • Raspberry Pi 3B Cluster excels in raw CPU power and RAM, making it better for CPU-intensive and memory-intensive distributed workloads.

However, if I were in a future upgrading mode then the only real comparison to the current set of compared hardware would be between the rPi 5 (with M.2 HAT + AI Kit) and the NanoPi R6C:

The NanoPi R6S is shut-out from this comparison because it doesn't have an NVMe storage capability which severely hobbles it from any storage related processing which happens often enough in AI-related activity.

Comparison:

NanoPi R6C vs Raspberry Pi 5 Kit

SoC and CPU

Feature NanoPi R6C (8GB model) Raspberry Pi 5 with M.2 HAT+ and AI Kit (8GB model)
SoC Rockchip RK3588S Broadcom BCM2712
CPU Quad-core ARM Cortex-A76 (up to 2.4GHz) and quad-core Cortex-A55 (up to 1.8GHz) Quad-core ARM Cortex-A76, 64-bit, 2.4GHz
Winner NanoPi R6C

GPU and Video

Feature NanoPi R6C (8GB model) Raspberry Pi 5 with M.2 HAT+ and AI Kit (8GB model)
GPU Mali-G610 MP4 VideoCore VII
GPU Features OpenGL ES 3.2, Vulkan 1.2, OpenCL 2.2 OpenGL ES 3.1, Vulkan 1.2
Video Decoding 8K@60fps H.265/VP9, 8K@30fps H.264 4Kp60 HEVC
Winner NanoPi R6C

RAM and Storage

Feature NanoPi R6C (8GB model) Raspberry Pi 5 with M.2 HAT+ and AI Kit (8GB model)
RAM 4GB or 8GB LPDDR4X 4GB or 8GB LPDDR4X-4267 SDRAM
Storage microSD slot, 32GB eMMC, M.2 PCIe 2.0 slot for NVMe SSD microSD slot, M.2 PCIe 2.0 slot for NVMe SSD
Winner Tie

AI Capabilities

Feature NanoPi R6C (8GB model) Raspberry Pi 5 with M.2 HAT+ and AI Kit (8GB model)
NPU 6 TOPS Hailo AI module with 13 TOPS
Winner Raspberry Pi 5 Kit

Connectivity and Expansion

Feature NanoPi R6C (8GB model) Raspberry Pi 5 with M.2 HAT+ and AI Kit (8GB model)
Ethernet Native Gigabit Ethernet, PCIe 2.5G Ethernet Gigabit Ethernet with PoE+ support
Wi-Fi None Dual-band 802.11ac Wi-Fi
Bluetooth None Bluetooth 5.0/BLE
USB Ports 1 x USB 3.0 Type-A, 1 x USB 2.0 Type-A, 1 x USB Type-C (power only) 2 x USB 3.0, 2 x USB 2.0
GPIO 30-pin header 40-pin header
Winner Raspberry Pi 5

Display and Audio

Feature NanoPi R6C (8GB model) Raspberry Pi 5 with M.2 HAT+ and AI Kit (8GB model)
Display HDMI 2.1 (up to 8K@60Hz) Dual 4Kp60 HDMI display output with HDR support
Audio HDMI 3.5mm jack, HDMI
Winner Tie

Power Supply

Feature NanoPi R6C (8GB model) Raspberry Pi 5 with M.2 HAT+ and AI Kit (8GB model)
Power USB-C, support PD, 5V/9V/12V/20V input 5V/5A DC via USB-C, with Power Delivery support
Winner Tie

Real-time Clock (RTC)

Feature NanoPi R6C (8GB model) Raspberry Pi 5 with M.2 HAT+ and AI Kit (8GB model)
RTC Yes Yes
Winner Tie

Price

Feature NanoPi R6C (8GB model) Raspberry Pi 5 with M.2 HAT+ and AI Kit (8GB model)
Price $100 - $140 $150 - $180
Winner NanoPi R6C

Summary of Winners

  • Processor and Performance: NanoPi R6C
  • GPU and Video: NanoPi R6C
  • RAM and Storage: Tie
  • AI Capabilities: Raspberry Pi 5 Kit
  • Connectivity and Expansion: Raspberry Pi 5
  • Display and Audio: Tie
  • Power Supply: Tie
  • Real-time Clock (RTC): Tie
  • Price: NanoPi R6C

Conclusion

  • Overall Winner: NanoPi R6C offers excellent value with competitive performance, advanced video capabilities, and a more affordable price.
  • Raspberry Pi 5 Kit: Excels in AI capabilities and connectivity, making it a strong contender for specific use cases requiring AI processing and wireless communication.

The final choice depends on your specific needs, such as AI processing power, video capabilities, and budget.

What about ....

Post publication of this article I started looking at SBC add-ons, specifically in the M.2 form factor. To note, that that AI kit for the rPi 5 which does NPU is currently the cheapest and ready to market which is the Hailo 8L (13 TOPS).

But, what really interested me was the possibility of leveraging the other beefier models that could help meet the AI PC/Copilot+ PC designation of 40 TOPS. And for that the Hailo 8 Century has in spades at 208 TOPS in a 16-lane PCIe slot. Its also possible to perhaps make a cluster of Hailo 8R (13 TOPS) in the mPCIe form factor.

As for Coral, unfortunately at the moment the dev boards are using TPU which is great for the more general ML and PyTorch but not directly comparable to NPU. You may, however, still be interested in picking up one or more of these prototyping boards if your applications are more geared to visual training such as for object identification. I'm actually considering to use the USB version in a Frigate set-up to augment the person identification of my smart home automation and security projects.