OrangePi 5 Ultra Review: an ARM64 SBC Powerhouse
Following our review of their RV2 RISC-V board, OrangePi has offered us to review one of their latest ARM64 based hardware, the OrangePi 5 Ultra. This is currently their highest specs ARM64 SBC.
So what can we expect from the OrangePi Pi 5 Ultra board ? Let’s go through the specs first.
Specs
The board is fairly small in size, very close to what you get with the Raspberry Pi.
Feature | Specifications |
---|---|
Master Chip | Rockchip RK3588 (8nm LP process) |
CPU | • 8-core 64-bit processor • 4 Cortex-A76 and 4 Cortex-A55 with independent NEON coprocessor • Cortex-A76 at 2.4GHz, Cortex-A55 at 1.8GHz |
GPU | • Integrated ARM Mali-G610 • Built-in 3D GPU • Fully compatible with OpenGL ES1.½.0/3.2, OpenCL 2.2 and Vulkan 1.2 |
NPU | Embedded NPU supports INT4/INT8/INT16/FP16 hybrid computing with up to 6TOPS |
PMU | RK806-1 |
RAM | LPDDR5 496PIN: 4GB, 8GB, 16GB optional |
Memory | • eMMC flash socket • eMMC IC • Note: Either eMMC flash socket or eMMC IC, supports: 32GB, 64GB, 128GB, 256GB optional • QSPI NOR flash: 16MB • MicroSD card slot • M.2 M-KEY slot: supports NVMe SSD (PCIe 3.0 4Lane) |
USB | 2 × USB3.0; 2 × USB2.0 |
Video | • 1 × HDMI 2.1 output up to 8K@60FPS • 1 × HDMI 2.0 input up to 4K@60FPS • 1 × MIPI DSI TX 4 Lane |
Camera | • 2 × MIPI CSI 4 Lane • 1 × MIPI D-PHY RX 4 Lane |
Audio | CODEC: ES8388 • 1 × Audio 3.5mm jack with mic • 1 × MIC In • 1 × HDMI 2.1 eARC |
Ethernet | 1 × PCIe 2.5G LAN (RTL8125BG) |
Wi-Fi + BT Module | Onboard Wi-Fi 6E + BT 5.3/BLE module: AP6611 • Wi-Fi interface: SDIO3.0 • BT interface: UART/PCM |
Expansion Port | Dual-row pin: 2.54mm 40Pin • Supports DC 5V and 3.3V power output • Configurable UART, PWM, I2C, SPI, CAN, GPIO and other functional interfaces |
Button | 1 × MaskRom key, 1 × On/Off key |
Power Source | Supports Type-C power supply, 5V @ 5A |
LED | RGB LED side illumination |
FAN | 5V 2PIN 1.25mm socket |
RTC | 3V 2PIN 1.25mm socket |
Debugging | Debug serial UART included in 40PIN expansion port |
Supported OS | Orangepi OS (Droid), Orangepi OS (Arch), Orangepi OS (OH), Ubuntu, Debian, Android 13 |
PCB | Length: 89mm, Width: 57mm, Thickness: 1.6mm |
Weight | 60.5g |
The model I received for this review was a 8 GB one. One of the key reasons to use this SBC over other versions, is that it leverages LPDDR5 memory capable of very good speeds.
What I like about the specs is the numerous options for storage (one eMMC and another NVME M2 slot), the 2 Gigabit Ethernet port (a single one this time, so don’t expect to make it into a router), the 4 USB ports (sufficient to connect keyboard, mouse, and something else).
On paper, the specs are impressive with the fairly recent Rockchip processor. There is a NPU as well, but don’t expect to have it supported easily in Linux, even on AMD the NPU support is shaky at best. For this SBC, it involves cross-compilation, custom binaries before you can exploit a model on this board.
This is what the layout of the board looks like:
Here’s the back view:
Now you should be aware of the following:
- Mobile GPUs don’t support OpenGL, only the OpenGLES subtype. You can get some Vulkan support (1.2), but as we will see later, hardware support is unfortunately not there yet.
- The board is priced at around 130 USD for the 16GB version (it seems to be the main one being sold right now). Which is roughly equivalent to the Raspberry Pi 5 price for the same amount of memory. However, the Orange Pi 5 Ultra board is much more powerful in comparison, so depending on your use case, the Orange Pi 5 Ultra would represent a better value for money.
Of course, the usefulness of such a board depends entirely on the quality of the software support.
Software Support
A Full Ubuntu Experience
There are many images available for this board. Ubuntu, Debian, Arch… at first I was wondering which one to go for. Even in each category you have a bunch of different images:
- Focal (20.04 LTS), either desktop with xfce or server version.
- Jammy (22.04 LTS), desktop with GNOME or Xfce, or a server version. But it goes deeper than that. You get two different kernel available. An old 5.10 kernel or a 6.1.
I went for the Ubuntu Jammy 22.04 LTS with the 6.1 kernel, the desktop build using Xfce (GNOME was not available for that kernel).
As you can see, the Ubuntu 24.04 distro is missing from the list, and this is a shame, since this is a board released late 2024. I contacted OrangePi and they mentioned that they would eventually release a 24.04 version, but there was no clear timeline for that.
To install Ubuntu, you use dd or Balena Etcher to image a micro-SD card first, and then you get some helper scripts (using ncurses) that make it super easy to image either a eMMC chip, or a NVME drive that’s attached to the board (I don’t recommend using a micro-SD card as the main media).
Once you reach the desktop, you will see that things work pretty much as expected. Wifi, Bluetooth, and even the HDMI port could properly recognize my Ultra Wide Screen and display the full resolution. This was an issue with the RV2 board from Orange Pi (probably hardware/drivers related) but on ARM64 it seems like things are much more robust.
GPU Support?
Sadly, but this was almost expected, there does not seem to be any kind of GPU support in the version that I have chosen. A quick check with glxgears confirms that there is just a software pipe for rendering.
This being said, the software rendering is very very fast - you can see that there’s a lot of power under the hood on the CPU side. The same glxgears was only running at 35 FPS on the RV2, here it’s 10 times faster!
There is however hope. It looks like there are efforts to mainline the GPU drivers on the Linux kernel, so when this happens you could expect a standard distro like ARMbian to offer full support of the GPU capabilities. Too early to say, but we will come back on that later.
Because of the lack of GPU support, I will be skipping the gaming aspects of this board for now. I will revisit it in another article once we have proper GPU drivers, to actually see what we can expect from this SBC once we have the Mali ready for some action.
Applications
I installed and tried bunch of things:
Chromium is installed by default and works very well, but is limited to the 110 version which is old by now. Using Flathub and Flatpak I could install a much more recent version, that has proper extensions support. Firefox works fine, too - its fork, Zen browser, also works via Flatpak but is very slow for some reason. I also tried a non-Flatpak install for Zen, but it was also slow, so it’s probably not related to Flatpak itself.
This is now a good time to talk about Flatpak. When I was reviewing the RV2 board which sports a RISC-V chip, I remarked that there are very few Flatpaks that actually support that architecture. So in effect, while flatpak is supposed to work regardless of the architecture, if you don’t have any binary built for your architecture, you won’t be able to make much use of Flathub and the like. For ARM64, the support is not 100% either, but there is a massive footprint of applications that support ARM64. I tried quite a lot of applications and I was constantly surprised wow, they even have ARM64 for that!. I surmise that this is the effect of having a mainstream ARM64 desktop machine out there running Linux with the Macbooks equipped with the M chipsets, running Asahi. (and a lot of folks who have such machines being developers themselves, of course).
While most applications worked with the RV2 (which is roughly equivalent to a Raspberry Pi 3), it showed its limits when you wanted to do video editing for example. Kdenlive and Openshot were barely working. Here, with the OrangePi 5 Ultra, Kdenlive works like a breeze and had no issue dealing with a bit of video editing and rendering. The final video render was certainly not as fast as what you’d expect on a regular X86_64 platform, but you know, it’s workable if you are not dealing with very long videos (also, avoid 4k). We are certainly dealing with a much more capable SOC here.
Out of curiosity, I tried some more professional applications like Dbeaver (for databases interactions), and it worked as expected.
The same with Memgraph (graph database), used via Docker (since they don’t have a client for ARM64, I used the web client instead). Of course, I did not try to load a massive graph database with this, but the system was very responsive and usable. Honestly, very impressive to see Memgraph running so well on a SBC.
I wasted a lot of time trying to make R and Rstudio for ARM64 work togeher from the distro (without success, there was some kind of issue with the tools base package not being recognized), until I switched gears and used a Docker version of R/Rstudio instead. Once again this proved to work very well (Rstudio is a Java application so the browser IDE is basically identical).
The only appplication that did not work well was Blender. It launched, but afterwards it was a slideshow with 3 seconds between an interaction and the refresh of the screen. I assume this is because Blender requires GPU support even for its innerworkings, and since we don’t have GPU acceleration in this OS, it’s just not going to cut it.
But honestly… that’s it! Everything else I tried worked as expected on a usual desktop or laptop. At no time did I feel this is too slow, I can’t wait to stop my review - instead, if you told me that I would only have that SBC to do regular work, well, I could totally see myself living with it for 90% of my use cases.
Very impressive to see this kind of performance in this form factor. And this is a board running only at 1.8 Ghz! I can only imagine how things will improve once they go to a better lithography and manage to increase the frequency of the CPU.
Temperature Control
The temperature does rise a little when using all cores at once, but it remains at a manageable level. When doing some bursts of compilation the temperature rises up to about 78~80C, and when running LLMs on the CPU (full 100% CPU usage), we get up to 84, 85C.
This looks like the hard limit - I am not sure if the SBC goes into throttling then, but I did not observe higher temperature. In any cases, in all situations (apart from Blender), the system remained very responsive.
Power Draw
I don’t have a way to measure power draw, but according to AndroidPIMP you can expect an idle power draw between 3W and 5W, and an usage under load on average around 10W. Since the power source can produce 25W maximum, I guess you can imagine the board going up to 15W or so in spikes. In any case, its low power profile and the fact that the temperature remains well under control tells me that this is a great little machine for a server.
AI - LLM Performance
For this part, I compiled both Ollama and llama.cpp and run some benchmarks on llama.cpp. I tried only smaller models, because I had low expectations that it would be running at usable speeds. The results are below.
model | size | params | backend | threads | test | t/s |
---|---|---|---|---|---|---|
gemma3 1B Q4_K - Medium | 762.49 MiB | 999.89 M | CPU | 8 | pp512 | 23.37 ± 0.94 |
gemma3 1B Q4_K - Medium | 762.49 MiB | 999.89 M | CPU | 8 | tg128 | 2.49 ± 0.62 |
granite 3B Q4_0 | 1.36 GiB | 2.53 B | CPU | 8 | pp512 | 36.34 ± 1.78 |
granite 3B Q4_0 | 1.36 GiB | 2.53 B | CPU | 8 | tg128 | 5.06 ± 0.10 |
For dense models like Gemma 1B, it’s kind of slow and not really good for chatting. If you plan to use LLMs with this, however, MOE models like granite 3.1 3B work at a decent speed (5 tokens by second, not bad). I would certainly prefer 10 tokens by second minimum, but this is the fact, at least when using the CPU mode. It’s certainly a lot more usable than the RV2 review previously.
Once we have a capable Vulkan driver working, I wonder if Vulkan will be able to be leveraged to increase the token generation speed on this board. It works well on AMD because it can expand it shared memory, not sure how much Vulkan can allocate on an AMR64 board like this.
Performance
The go-to suite to evaluate performance is Geekbench, because it can provide some comparison between the speed of similar tests across different architectures. Here, let’s compare it against another flagship ARM64 board, the Raspberry Pi 5 running at 2.4 ghz.
Spec | OrangePi 5 Ultra | Raspberry Pi 5 Model B Rev 1.1 |
---|---|---|
Operating System | Ubuntu 22.04.5 LTS | Debian GNU/Linux 12 (bookworm) |
Processor | ARM ARMv8 @ 1.80 GHz, 1 Processor, 8 Cores | ARM ARMv8 @ 2.40 GHz, 1 Processor, 4 Cores” |
Memory | 8 GB model | 8 GB model |
Single Core Performance
Both boards end up with a very similar performance on average in single core tests.
There are some differences, but it’s fairly marginal.
Multi-core performance
When doing multi-threaded, multi-core workflows, this is where we see the 8 processors that are available on the Orange Pi 5 Ultra shine.
Its performance surpasses the Raspberry Pi 5 in almost all activities, and usually by a good 30% advantage.
Performance overview
As you can see, for parallel workloads, this board is much better than Raspberry Pi 5.
Now let’s look at the potential use of such boards as servers.
Server Use
You can use this board as a server, of course. You have several distro images just for the server use, too. Docker works very nicely with this SBC, and unlike what we have seen for the RV2 and the general Risc-V ecosystem where there are very few Docker images available for that architecture, the ARM64 scene is completely different.
Here, it’s almost rare to find a Docker image where there is no ARM64 build. Not surprising since ARM64 is a thing on servers nowadays - Amazon has famously pushed their own ARM Gravitron servers as an option to reduce cloud computing costs. So most companies and providers operating on the cloud pretty much need to have ARM64 builds.
On the server, you also don’t need to care as much about the lack of GPU support since you are running headless, so any distro provided by OrangePi should do: Debian, Ubuntu, or even Arch.
Since this is a board that operates at low wattage and passive cooling, it’s an excellent choice if you want to build a small server for the home. For a NAS use case I would probably go for the RV2 instead since it has more storage ports, but this one could also work considering you can have an eMMC drive together with another M2 drive (NVME) at the same time.
Verdict
Little boards that were previously only used for fun or small projects have come a long way. Desktop environments were rarely usable before even on the later iterations of the Raspberry Pi. Things changed a couple of years ago, and the Raspberry Pi 5 and this Orange Pi 5 Ultra fall into a category where you could actually use them as real, daily general purpose computers and not be bothered by their responsiveness or their performance. Not only will it work well for server use, but it can do desktop work without sweating either.
Price wise, the 16G version is competitive. If you want similarly specced Celeron-equipped mini-PCs you would probably need a configuration with a N100 processor (that seems to be faster than the RK3588), but that is more expensive. So the value for money of this SBC seems to be pretty good at the moment, even for the 16G configuration.
The only negative points are the moment are:
- lack of recent distro images (Ubuntu 24.04 would be nice)
- lack of GPU support (potentially because I was using the 6.1 kernel?)
- incomplete mainline support
which may be some killer aspects depending on your use case. The wide availability of software for ARM64 on Flatpak and Docker somewhat mitigates such issues for now.
The real solution will come when the RK3588 support will be properly mainlined. Currently only parts of it are supported but it’s not complete and bug-free from what I could read. I am following news around the Arch-based BredOS as they are actively working on bringing proper support for this chip. Once this is done, the benefits should be apparent such as:
- Much better Vulkan performance (compared to proprietary driver)
- Proper video acceleration in browsers like Chrome
- No more patches to chase from one kernel to the next!
Once there are news in this regard (hopefully in 2025) I plan to revisit my review of this SBC.
Practical Details
If you are interested to grab one, there are currently a few shops that sell it online:
- Aliexpress store: Orange Pi 5 Ultra 16GB at 220 USD (without shipping). Expensive if you are in the US.
- Amazon OrangePi Official: Orange Pi 5 Ultra 16GB sells for 158 USD on Amazon.com. (without shipping) - the cheaper option.
There are probably some more third parties depending on where you are based in the world.
Other valuable resources:
- The OrangePi 5 Ultra Product Page
- The user manual for the board
- The distro page on the OrangePi website.
Final note, we have been provided with a review unit of this SBC by OrangePi themselves for this article.