Radxa sent me a sample of the Orion O6 mini-ITX motherboard for review. The system is powered by an CIX P1 (CD8180) 12-core Armv9 processor, equipped with 16GB RAM, and offers features like 5GbE, HDMI and DisplayPort, a PCIe Gen4 x16 slot, and more. It’s one of the most anticipated boards of the first part of 2025 since it’s powerful, offers a good performance/value ratio, and eventually promises to boot any ISO Arm64 image through an open-source BIOS / EDKII bootloader.
I’ll start this review with an unboxing, NVMe SSD and WiFi module installation, and a short tutorial showing how to install Debian 12 operating systems before getting some system information and running a few benchmarks. In a few weeks, I’ll publish a more detailed review with features testing and more benchmarks to see what works and what doesn’t at this very early stage.
Radxa Orion O6 unboxing
I received the Orion O6 “Arm AI PC Motherboard” in a package similar to the Radxa ROCK 5 ITX and MILK-V Jupiter motherboards I reviewed last year.
The bottom side of the package has the full specs, but I won’t go through these again since we also listed the detailed specs in the announcement.
The package comes with the motherboard sandwiched between top and bottom acrylic plates, a rear panel for installation into a mini-ITX chassis (maybe I’ll do that in the second part of the review), and a screw set for SSD and wireless module installation.
I have to say the board looks really neat in the photos below. The rear panel features a power button, two USB-C ports, two USB 2.0 ports, two USB 3.2 ports, HDMI and DisplayPort video outputs, two 5GbE RJ45 jacks, an audio jack, and a Reset button.
One of the sides comes with the PCIe x16 slot to add a graphics card or other PCIe expansion cards.
The other side comes with a 24-pin ATX connector and a 40-pin Raspberry Pi-compatible GPIO header.
Since the Orion O6 ships with a heatsink+fan combo, I removed it to have a better look at the motherboard.
It has four 4GB SKHynix H58G56AK6B DDR5 chips for a total of 16GB RAM, two Realtek RTL8126 5GbE controllers, a Realtek RTS5453H USB-C PD chip, and a Radxa-branded RA620-1 chip that’s a customized Rockchip RK620-1 DisplayPort to HDMI bridge.
SSD and wireless module installation
I removed the top acrylic cover and inserted a 512GB MAKERDISK NVMe SSD and an Fn-Link 6252M-PUB WiFi 6 & Bluetooth 5.2 wireless module that I got from the Radxa ROCK 5B into the two M.2 sockets on the motherboard.
Nothing much to add here. It was a straightforward operation.
Debian 12 installation on the Orion O6 motherboard
Eventually, you should be able to use the Orion O6 like an x86 machine, getting a random Arm64 ISO to boot it up on the machine including Windows 11 for Arm. But we are not quite there yet, and for now, the only options are Debian 12 or Fedora 14 images that need to be dumped onto a USB flash drive. I went with the orion-o6-usb-install-debian12-preinstalled-desktop-b3.img.gz image download from Mega, and copied it to a USB flash drive using USB Imager, but other tools like balenaEtcher, Win32DiskImager, or even dd could also do. I first used a 7.2GB (out of 8GB advertised) drive but it was too small, so I switched to a larger 64GB drive.
At this point, I connected an HDMI cable to a monitor, a USB RF dongle for a mouse and wireless control, the USB drive with the Debian 12 image, and connected power using the 65W USB-C PD adapter from the Khadas Mind 2 AI Maker Kit.
Within a few seconds, the “BIOS” showed up with “Radxa Orion O6” motherboard, “CIX P1 CD8180” procession, and 0.2.2-1 version.
I browse the BIOS menu, and we can see that’s indeed TianoCore EDK II (ED2) UEFI implementation.
It has some features that we’d find in a regular x86 BIOS like Restore AC Power Loss, although it’s not quite as detailed.
We can also select between Device Tree and ACPI O/S hardware description. I left it to Device Tree.
Let’s now go to the Boot Manager Manu to select our USB flash drive (UEFI Kingston DataTraveler 3.0).
The display will turn off for a while, but soon enough we’ll get to the familiar Debian 12 desktop.
Debian 12 is now running on the USB flash drive. The system is rather slow because of the slow random I/O on this type of storage, so let’s copy the image to the NVMe SSD we’ve just installed. We’ll use the balenaEtcher program preinstalled in the image.
Instead of flashing a file, we’ll click on Clone driver and select the USB drive.
For the target, we’ll need to show the hidden system drive “PCIe SSD (config, boot, rootfs)” and click on Select (1).
A big fat WARNING will pop up since we are about to overwrite the computer’s drive… Select “Yes, I’m sure”.
balenaEtcher will clone the USB drive to the NVMe SSD. It took about 10 minutes in my case, and once done it will show “Flash Complete”. We can now shutdown the board, remove the USB drive, and boot Debian 12 from the much faster NVMe SSD.
Debian 12 system information and sbc-bench.sh benchmark
I could connect to 5GHz WiFi easily since the WiFi 6 module was properly detected and browse the web.
U’ll test all/most features in the second part of the review, but since it will take a couple of days to complete, I’ll just report system information from inxi first:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
radxa@orion-o6:~$ sudo inxi -Fc0 System: Host: orion-o6 Kernel: 6.1.44-cix-build-generic arch: aarch64 bits: 64 Console: pty pts/2 Distro: Debian GNU/Linux 12 (bookworm) Machine: Type: Unknown Mobo: Radxa (Shenzhen) model: Radxa Orion O6 v: 1.0 serial: N/A UEFI: Radxa (Shenzhen) v: 1.0 date: Jan 1 1980 CPU: Info: 12-core model: CIX P1 CD8180 bits: 64 type: MCP Speed (MHz): avg: 1033 min/max: 800/2500:1800:2300:2200:2400 cores: 1: 800 2: 800 3: 800 4: 800 5: 800 6: 800 7: 800 8: 2200 9: 2200 10: 800 11: 800 12: 800 Graphics: Device-1: linlon-v8 driver: amvx_dev v: N/A Device-2: mali-valhall driver: mali v: N/A Device-3: linlon-v8 driver: N/A Device-4: mali-valhall driver: N/A Device-5: linlon-v8 driver: N/A Device-6: mali-valhall driver: N/A Device-7: linlon-v8 driver: N/A Device-8: linlon-v8 driver: N/A Device-9: linlon-v8 driver: N/A Device-10: linlon-v8 driver: N/A Display: server: X.org v: 1.21.1.7 with: Xwayland v: 22.1.9 driver: gpu: linlondp note: X driver n/a tty: 80x24 resolution: 1920x1080 API: OpenGL Message: GL data unavailable in console and glxinfo missing. Audio: Device-1: sky1-sound-card driver: sky1_asoc_card API: ALSA v: k6.1.44-cix-build-generic status: kernel-api Server-1: PulseAudio v: 16.1 status: active (root, process) Network: Device-1: Realtek RTL8852BE PCIe 802.11ax Wireless Network driver: rtw89_8852be IF: wlan0 state: up mac: 48:46:c1:8f:98:79 Device-2: Realtek driver: r8126 IF: eth0 state: down mac: 00:48:54:20:0b:af Device-3: Realtek driver: r8126 IF: eth1 state: down mac: 00:48:54:20:0b:b0 Bluetooth: Device-1: Realtek Bluetooth Radio type: USB driver: btusb Report: hciconfig ID: hci0 rfk-id: 1 state: down bt-service: enabled,running rfk-block: hardware: no software: yes address: 48:46:C1:8F:98:96 Drives: Local Storage: total: 476.94 GiB used: 7.46 GiB (1.6%) ID-1: /dev/nvme0n1 model: PCIe SSD size: 476.94 GiB Partition: ID-1: / size: 54.57 GiB used: 7.46 GiB (13.7%) fs: ext4 dev: /dev/nvme0n1p2 Swap: Alert: No swap data was found. Sensors: System Temperatures: cpu: 38.0 C mobo: N/A Fan Speeds (RPM): N/A Info: Processes: 383 Uptime: 5m Memory: 14.87 GiB used: 2.16 GiB (14.6%) Init: systemd target: graphical (5) Shell: Sudo inxi: 3.3.26 |
The system indeed comes with a 12-core processor clocked up to 2.5 GHz, and it looks like there are five clusters of Cortex-A720 and Cortex-A510 cores each operating at different maximum frequencies. The board is running Debian 12 with Linux 6.11 and there are ten mali-valhall and linlon-v8 graphics devices… Not sure what that means in practice just yet. The two 5GbE ports are detected, as well as the Realtek RTL8852BE wireless card I’m using. It also shows 476.94 GB local storage, but the rootfs partition is only 54.57 GB in size, so I’ll have to resize it. The idle temperature is only 38°C thanks to the integrated cooling solution that’s fairly noisy…
Let’s run sbc-bench.sh to evaluate the performance of the CPU:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
radxa@orion-o6:~$ sudo ./sbc-bench.sh -r Starting to examine hardware/software for review purposes... WARNING: dmesg output does not contain early boot messages which help in identifying hardware details. It is recommended to reboot now and then execute the benchmarks. Press [ctrl]-[c] to stop or [enter] to continue. Average load and/or CPU utilization too high (too much background activity). Waiting... Too busy for benchmarking: 17:45:44 up 8 min, 3 users, load average: 4.55, 3.93, 2.09, cpu: 7% Too busy for benchmarking: 17:45:49 up 8 min, 3 users, load average: 4.50, 3.93, 2.10, cpu: 2% Too busy for benchmarking: 17:45:54 up 8 min, 3 users, load average: 4.46, 3.94, 2.11, cpu: 2% Too busy for benchmarking: 17:45:59 up 8 min, 3 users, load average: 4.42, 3.94, 2.12, cpu: 2% Too busy for benchmarking: 17:46:04 up 8 min, 3 users, load average: 4.39, 3.94, 2.13, cpu: 3% |
Ah… it won’t start because the reported load average is too high even when the system is idle…
I modified the script to skip that part and ran the benchmark on the Orion O6 motherboard again:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 |
radxa@orion-o6:~$ sudo ./sbc-bench.sh -r Starting to examine hardware/software for review purposes... WARNING: dmesg output does not contain early boot messages which help in identifying hardware details. It is recommended to reboot now and then execute the benchmarks. Press [ctrl]-[c] to stop or [enter] to continue. sbc-bench v0.9.69 Installing needed tools: apt-get -f -qq -y install build-essential git sysstat lshw links mmc-utils smartmontools stress-ng p7zip. Something went wrong: perl: warning: Setting locale failed. perl: warning: Please check that your locale settings: LANGUAGE = (unset), LC_ALL = (unset), LC_ADDRESS = "en_GB.UTF-8", LC_NAME = "en_GB.UTF-8", LC_MONETARY = "en_GB.UTF-8", LC_PAPER = "en_GB.UTF-8", LC_IDENTIFICATION = "en_GB.UTF-8", LC_TELEPHONE = "en_GB.UTF-8", LC_MEASUREMENT = "en_GB.UTF-8", LC_TIME = "en_GB.UTF-8", LANG = (unset) are supported and installed on your system. perl: warning: Falling back to the standard locale ("C"). locale: Cannot set LC_ALL to default locale: No such file or directory Trying to continue, tinymembench, ramlat, mhz, cpufetch, cpuminer. Done. Checking cpufreq OPP. Done. Executing tinymembench. Done. Executing RAM latency tester. Done. Executing OpenSSL benchmark. Done. Executing 7-zip benchmark. Done. Throttling test: heating up the device, 5 more minutes to wait. Done. Checking cpufreq OPP again. Done (25 minutes elapsed). Results validation: * Measured clockspeed not lower than advertised max CPU clockspeed * Background activity (%system) OK * Too much other background activity: 2% avg, 2% max -> https://tinyurl.com/mr2wy5uv * No throttling Full results uploaded to https://0x0.st/88Al.bin # Radxa Orion O6 Tested with sbc-bench v0.9.69 on Wed, 29 Jan 2025 18:20:29 +0800. Full info: [https://0x0.st/88Al.bin](http://0x0.st/88Al.bin) ### General information: The CPU features 5 clusters consisting of 2 different core types: Cix P1/CD8180, Kernel: aarch64, Userland: arm64 CPU sysfs topology (clusters, cpufreq members, clockspeeds) cpufreq min max CPU cluster policy speed speed core type 0 0 0 800 2500 Cortex-A720 / r0p1 1 0 1 800 1800 Cortex-A520 / r0p1 2 0 1 800 1800 Cortex-A520 / r0p1 3 0 1 800 1800 Cortex-A520 / r0p1 4 0 1 800 1800 Cortex-A520 / r0p1 5 0 5 800 2300 Cortex-A720 / r0p1 6 0 5 800 2300 Cortex-A720 / r0p1 7 0 7 800 2200 Cortex-A720 / r0p1 8 0 7 800 2200 Cortex-A720 / r0p1 9 0 9 800 2400 Cortex-A720 / r0p1 10 0 9 800 2400 Cortex-A720 / r0p1 11 0 9 800 2400 Cortex-A720 / r0p1 15222 KB available RAM ### Governors/policies (performance vs. idle consumption): Original governor settings: cpufreq-policy0: performance / 2500 MHz (userspace performance schedutil / 800 1200 1500 1800 2100 2300 2500) cpufreq-policy1: performance / 1800 MHz (userspace performance schedutil / 800 1800) cpufreq-policy5: performance / 2300 MHz (userspace performance schedutil / 800 1200 1500 1800 2000 2100 2300) cpufreq-policy7: performance / 2200 MHz (userspace performance schedutil / 800 1200 1500 1800 1900 2000 2200) cpufreq-policy9: performance / 2400 MHz (userspace performance schedutil / 800 1200 1500 1800 2000 2200 2400) 14230000.vpu: simple_ondemand / 150 MHz (userspace performance simple_ondemand / 150 300 480 600 800 1200) 14260000.aipu: userspace / 1200 MHz (userspace performance simple_ondemand / 400 600 800 1200) 15000000.gpu: simple_ondemand / 72 MHz (userspace performance simple_ondemand / 72 216 350 600 800 900) Tuned governor settings: cpufreq-policy0: performance / 2500 MHz cpufreq-policy1: performance / 1800 MHz cpufreq-policy5: performance / 2300 MHz cpufreq-policy7: performance / 2200 MHz cpufreq-policy9: performance / 2400 MHz 14230000.vpu: performance / 1200 MHz 14260000.aipu: performance / 1200 MHz 15000000.gpu: performance / 900 MHz Status of performance related policies found below /sys: /sys/devices/platform/soc@0/14260000.aipu/gm_policy: [1] AIPU GM is shared by tasks of all QoS level. /sys/devices/platform/soc@0/15000000.gpu/power_policy: [coarse_demand] always_on /sys/module/pcie_aspm/parameters/policy: default [performance] powersave powersupersave ### Clockspeeds (idle vs. heated up): Before: cpu0 (Cortex-A720): OPP: 2500, Measured: 2498 cpu1-cpu4 (Cortex-A520): OPP: 1799, Measured: 1796 cpu5-cpu6 (Cortex-A720): OPP: 2299, Measured: 2298 cpu7-cpu8 (Cortex-A720): OPP: 2199, Measured: 2198 cpu9-cpu11 (Cortex-A720): OPP: 2399, Measured: 2398 After: cpu0 (Cortex-A720): OPP: 2500, Measured: 2498 cpu1-cpu4 (Cortex-A520): OPP: 1799, Measured: 1796 cpu5-cpu6 (Cortex-A720): OPP: 2299, Measured: 2298 cpu7-cpu8 (Cortex-A720): OPP: 2199, Measured: 2198 cpu9-cpu11 (Cortex-A720): OPP: 2399, Measured: 2398 ### Performance baseline * cpu0 (Cortex-A720): memcpy: 13172.6 MB/s, memchr: 25581.7 MB/s, memset: 37838.1 MB/s * cpu1 (Cortex-A520): memcpy: 8851.2 MB/s, memchr: 1790.6 MB/s, memset: 28384.6 MB/s * cpu5 (Cortex-A720): memcpy: 15489.2 MB/s, memchr: 23926.9 MB/s, memset: 36626.5 MB/s * cpu7 (Cortex-A720): memcpy: 16771.9 MB/s, memchr: 22947.8 MB/s, memset: 41800.7 MB/s * cpu9 (Cortex-A720): memcpy: 15799.1 MB/s, memchr: 24944.3 MB/s, memset: 45944.9 MB/s * cpu0 (Cortex-A720) 16M latency: 40.89 28.40 38.42 28.38 37.70 31.34 33.58 45.60 * cpu1 (Cortex-A520) 16M latency: 73.59 66.93 102.3 71.91 80.30 69.99 86.76 100.5 * cpu5 (Cortex-A720) 16M latency: 33.63 27.23 33.16 26.12 39.61 28.42 33.60 43.45 * cpu7 (Cortex-A720) 16M latency: 32.69 26.90 34.49 27.06 33.34 28.28 34.18 43.44 * cpu9 (Cortex-A720) 16M latency: 32.33 26.56 31.06 25.64 39.91 28.23 34.47 42.18 * cpu0 (Cortex-A720) 128M latency: 51.43 73.83 50.71 71.58 51.32 68.89 98.76 139.6 * cpu1 (Cortex-A520) 128M latency: 220.4 223.1 221.2 222.8 220.9 223.2 235.1 325.1 * cpu5 (Cortex-A720) 128M latency: 49.96 68.55 49.70 71.70 49.52 63.56 95.84 137.7 * cpu7 (Cortex-A720) 128M latency: 49.35 72.95 49.36 72.83 49.93 64.63 98.32 137.9 * cpu9 (Cortex-A720) 128M latency: 51.66 74.35 51.42 73.82 50.60 68.82 99.19 137.6 * 7-zip MIPS (3 consecutive runs): 31114, 30905, 31152 (31060 avg), single-threaded: 3746 * `aes-256-cbc 832535.93k 1258223.94k 1375448.32k 1395696.98k 1401760.43k 1402186.41k (Cortex-A720)` * `aes-256-cbc 171952.17k 345356.57k 462925.31k 505739.26k 519902.55k 520672.60k (Cortex-A520)` * `aes-256-cbc 766171.30k 1157689.92k 1265492.48k 1284152.32k 1289691.14k 1290108.93k (Cortex-A720)` * `aes-256-cbc 732873.06k 1107236.86k 1210473.81k 1228302.68k 1233641.47k 1234021.03k (Cortex-A720)` * `aes-256-cbc 799390.22k 1207701.57k 1320384.85k 1339843.93k 1345650.69k 1346065.75k (Cortex-A720)` ### PCIe and storage devices: * Realtek RTL8852BE PCIe 802.11ax Wireless Network: Speed 2.5GT/s, Width x1, driver in use: rtw89_8852be, ASPM Disabled * Realtek Device 8126: Speed 8GT/s, Width x1, driver in use: r8126, ASPM Disabled * Realtek Device 8126: Speed 8GT/s, Width x1, driver in use: r8126, ASPM Disabled * 476.9GB "PCIe SSD" SSD as /dev/nvme0: Speed 8GT/s, Width x4, 0% worn out, drive temp: 36°C, ASPM Disabled ### Software versions: * Debian GNU/Linux 12 (bookworm) * Compiler: /usr/bin/gcc (Debian 12.2.0-14) 12.2.0 / aarch64-linux-gnu * OpenSSL 3.0.15, built on 3 Sep 2024 (Library: OpenSSL 3.0.15 3 Sep 2024) ### Kernel info: * `/proc/cmdline: BOOT_IMAGE=/Image loglevel=0 console=ttyAMA2,115200 efi=noruntime earlycon=pl011,0x040d0000 arm-smmu-v3.disable_bypass=0 acpi=off root=PARTUUID=21b3cd7c-3570-4a71-aa70-a3c2b1063c78 rootwait rw` * Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl * Vulnerability Spectre v1: Mitigation; __user pointer sanitization * Kernel 6.1.44-cix-build-generic / CONFIG_HZ=250 Kernel 6.1.44 is not latest 6.1.127 LTS that was released on 2025-01-23. See https://endoflife.date/linux for details. It is somewhat likely that a lot of exploitable vulnerabilities exist for this kernel as well as many unfixed bugs. All known settings adjusted for performance. Device now ready for benchmarking. Once finished stop with [ctrl]-[c] to get info about throttling, frequency cap and too high background activity all potentially invalidating benchmark scores. All changes with storage and PCIe devices as well as suspicious dmesg contents will be reported too. Time cpu0/cpu1/cpu5/cpu7/cpu9 load %cpu %sys %usr %nice %io %irq Temp 18:20:30: 2500/1800/2300/2200/2400MHz 11.92 22% 1% 19% 0% 0% 1% °C 18:21:31: 2500/1800/2300/2200/2400MHz 7.17 2% 0% 0% 0% 0% 1% °C 18:22:31: 2500/1800/2300/2200/2400MHz 5.47 2% 0% 0% 0% 0% 1% °C 18:23:31: 2500/1800/2300/2200/2400MHz 4.54 2% 0% 0% 0% 0% 1% °C 18:24:31: 2500/1800/2300/2200/2400MHz 4.20 2% 0% 0% 0% 0% 1% °C 18:25:31: 2500/1800/2300/2200/2400MHz 4.14 2% 0% 0% 0% 0% 1% °C 18:26:31: 2500/1800/2300/2200/2400MHz 4.31 2% 0% 0% 0% 0% 1% °C ^C Cleaning up. Done. Checking cpufreq OPP again. Done. Clockspeeds now: cpu0 (Cortex-A720): OPP: 2500, Measured: 2498 cpu1-cpu4 (Cortex-A520): OPP: 1799, Measured: 1796 cpu5-cpu6 (Cortex-A720): OPP: 2299, Measured: 2298 cpu7-cpu8 (Cortex-A720): OPP: 2199, Measured: 2198 cpu9-cpu11 (Cortex-A720): OPP: 2399, Measured: 2398 Results validation: * Measured clockspeed not lower than advertised max CPU clockspeed * Background activity (%system) OK * No throttling |
No throttling is reported, but we’ll notice the temperature is not reported correctly. Checking the CPU clusters’ frequency in the full log confirms that no throttling occurred.
The system achieved 31,060 MIPS in 7-zip on average with three runs: 31114, 30905, and 31152. Since the performance did not decrease in runs 2 and 3, we can be further assured no throttling happened. The CIX P1 achieved 1402186.41k in aes-256-cbc. Let’s compare the results to Armv8 boards we’ve tested in the part including the Raspberry Pi 5 SBC.
I used the results of CPU10 (Cortex-A720) for memory bandwidth, and even though it was not the fastest core, it’s clear the Orion O6 has the fastest memory bandwidth of all the boards. Unsurprisingly, the CIX P1 destroys the competition in the multi-core 7-zip test thanks to its 12 Armv9 cores, being 2.84 times faster than the Raspberry Pi 5.
OpenSSL AES-256 is a single-core benchmark that mostly follows the CPU frequency, and while the Orion O6 is still the fastest here, it’s not overly so. We’ll do more benchmarks in the second part of the review to better understand the strengths and weaknesses of the Orion O6 board and CIX P1 SoC.
I’d like to thank Radxa for sending the Orion O6 mini-ITX motherboard for review. The 16GB model tested in the review sells for just $251.90 on Arace. Even though they target different applications, that’s competitive against the Raspberry Pi 5 SBC with 16GB RAM ($120) that also needs an M.2 HAT+, an active cooler, and a 26 TOPS Hailo-8 AI accelerator ($110) to get closer to the features set, but still with fewer features and lower performance.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress
Thanks for the early review Jean-Luc! I received one as well (nice surprise, thanks Radxa) and will reserve some time to run some tests on it as well. I’ll try to focus on the CPU/cache topology and PCIe efficiency with 100Gbps NICs. I have plenty of workloads ready to throw at it on this front 😉 (and maybe even a bit of llama.cpp given the 16GB). Thomas mentioned on Radxa’s forum that you can change the max CPU frequency to 2.6GHz in the BIOS. I’ll also check that. According to his RAM latency measurements, the memory controller looks amazingly fast,… Read more »
Thank you for your review. Could you please go in more depth on what features of hailo would affect any the benchmarks in this review? Because I don’t see any and I wonder if i misunderstood something. Thanks!
The Hailo-8 would not affect any of the benchmarks in this review. It would only impact workloads benefiting from an AI accelerator.
Thanks for this. I’ve got one on order, and these results look a little disappointing, given the claim of “comparable to M1”. It would be nice to see some comparison to M1 in the next set of benchmarks.
You may have read it wrong. In the official slides, CIX P1 outperformed Snapdragon 8cx Gen 3, but it still lags behind Apple M1. (Page 11: https://dl.radxa.com/orion/o6/radxa_orion_o6_announcement_presentation_2024_12_18.pdf)
And currently the CPU frequency cannot be set to the claimed 2.8GHz, which also reduces performance.
The previous CNX article said “with performance similar to Apple M1 and Qualcomm 8cs Gen3 platform”, so I didn’t expect equal, just “similar”.
Of course, I have an M1 Max, so that’s what I think of when I think of M1. So 2x Rock 5 and 3x Pi 5 is not in _that_ ballpark.
I’m still looking forward to receiving the machine, and I think it offers nice price-performance for an aarch64 Linux development workstation.
> Of course, I have an M1 Max, so that’s what I think of when I think of M1
Well, wrong expectations then since multi-threaded a M1 Max with twice the P cores compared to M1 is over twice as fast (just not in Geekbench 6).
And Cix chose the M1 since multi-threaded the eight A720 inside P1 come at least a little bit close to the 4E/4P setup of the original M1 (though Apple’s efficiency cores performing closer to older Cortex ‘big’ cores than little ones)
[ Is there a difference between USB-C and ATX power supply considering performance or grid related consumption? (thx) ]
The performance will not change, but using an ATX power supply will usually draw a bit more power at an equivalent configuration.
Will you test with an atx psu in the second part? Curious if it will follow the atx spec and fully power down the supply on shutdown.
That’s the plan. I’ll use the Auriga case with a 350W PSU: https://www.cnx-software.com/2024/07/25/building-a-workstation-with-radxa-rock-5-itx-arm-or-milk-v-jupiter-risc-v-mini-itx-motherboard/#auriga-6-bay-nas-mini-itx-chassis
[ Some experiences tell about difficulties with ATX power supplies below a ~2-4% minimum power requirements or others below a ~5Watts, depending on ATX revisions and manufacturer. If it’s not starting up with low demand or output is unstable (it would require an additional demand for the power supply not being left within that unstable conditions. Some report about possible damage to an ATX power supply from ongoing low power requirements. So that’s maybe something for to have attention on, even more, if it already built up some dust ‘barriers’ for air flow, over years of usage and difficult accessibility… Read more »
With the state of current software (UEFI + various firmwares for various MCUs and kernel) it’s a bit pointless to measure anything.
Idle consumption measured at wall (with an 94W Apple power brick in between) is between 16W and 17.5W depending on governors/policies. When the board has been shut down it still draws 4W.
Also performance-wise the advertised clockspeeds can’t yet be reached and there’s a weird CPU cluster layout resulting in some benchmarks generating more garbage than usual.
Its mentioned that its better than the Pi 5 in some ways, but what are the different applications that you’d want to use one of these with its limited support and much higher cost against the Pi 5 with an SSD ? For many applications like local web server, git server, NAS, TV Box etc the Pi 5 is half the price and with 16GB more than enough. If doing any AI with it, is the 45 TOPS more powerful than the Pi 5 with an AI add-on for the same cost ? And even if it is, is that… Read more »
I think the board’s target is really a workstation. The CPU performance is expected to be much closer to what you find in the x86 world so that you can build a powerful development machine. For developers working on Arm-based devices, it can be quite convenient to use the same architecture locally and test their code directly on the development machine rather than using cross-compilation and qemu/scp. For a NAS, the Rock5 ITX is more suited with its 4 SATA and the available M.2 on which you can install a 10GbE NIC (like I did on mine), and actually reach… Read more »
For me the board’s target would be a higher-end home-lab server … with it’s TWO 5gbps ports it would be perfect for everyone who already has faster-than-1gbps LAN at home … For me personally, I could replace two RK3588 boards which I use now (one as NAS and video streaming server, and the other one with home assistant and several self hosted docker services) with the Orion O6 … And because there are several USB3.2 Ports too, I would never have any storage problems any more … let alone the PCIe4 x8 Port … this cries for either 2xM.2 or… Read more »
One thing is that afaik there is no way how to get SSD together with the 26TOPS hailo on a single rpi5.
You can use Seeed Studio’s PCIe 3.0 to dual M.2 “HAT”: https://www.cnx-software.com/2025/01/21/pcie3-0-to-dual-m-2-hat-for-raspberry-pi-5-features-asmedia-asm2806-pcie-3-0-switch/. The PCI 3.0 x1 bandwidth is shared though.
I *think* (but I might be wrong) that the 26TOPS hailo is plain hat board, i.e. not in the form of M.2 — only the 13TOPS hailo is an m.2 board and a carrier. So I think the dual m2 would not work. At least that was my premise, when writing the previous comment. But I admit I might be not knowledgeable enough in this.
You’re correct in terms of what Raspberry Pi sells. You need to purchase the Hailo-8 26TOPS M.2 module separately.
> it won’t start because the reported load average is too high even when the system is idle…
There’s two problems. Average load right now (at least with BSP kernel) will always be above 4.0 since four processes remain in D state (check with ‘ps auxwww | grep D’).
And then there’s CPU utilization which will always be above 2% for /usr/bin/cix_audio_switch.sh alone (I would recommend adding ‘exit 0’ as 2nd line followed by a reboot prior to any further testing).
Next sbc-bench version will pick up a thermal sensor (I tried to choose one of the big CPU cores)
Best dust catcher / distributor I’ve ever seen.