SiFive HiFive Premier P550 |
|||
![]()
|
![]()
|
Over the last decade-plus, two CPU instruction set architectures have vied for dominance in client computing, whether in smartphones and tablets or high-performance PCs: x86 and Arm, or more specifically x86-64 vs Arm64. However, both of these solutions are encumbered by complex and potentially prohibitive licensing restrictions. A third architecture (disregarding niche options like MIPS and POWER) is trying to break through the mainstream ISA duopoly, however, and that’s RISC-V.
Possibly the most prominent RISC-V vendor on the market currently is SiFive, which will be our test vehicle for on the following pages. You might recall the SiFive HiFive Unmatched developer board that we looked at closely late last year. It was an interesting, if not particularly fast, proof-of-concept for desktop RISC-V development kits. While it was capable of running RISC-V software, its simplistic design approach resulted in less than robust performance. However, SiFive has pressed on with its CPU designs. Today’s entry is the next evolution of RISC-V edge computing development boards, the SiFive HiFive Premier P550.
SiFive HiFive Premier P550 Specifications
The HiFive Premier P550 is based on the ESWin EIC7700X chip, which uses SiFive’s RISC-V design. The chip is installed on a HiFive Premier P550 system-on-a-module (SoM) that comes in a four-core configuration, which matches the number of cores found on the previous HiFive Unmatched. The SoC sports a triple-issue, out-of-order design that should make client computing much faster than the Unmatched board. Those cores run at a relatively conservative 1.4 GHz, which will hamper its performance compared to most other designs. The SoC has a 32 kB L1 cache, 256 kB private L2 cache, and 4MB shared L3 cache, which are significant increases overall, compared to the previous SiFive board.
The HiFive Premier P550 includes both an integrated GPU and NPU which are enabled, but the NPU doesn’t have any software support just yet. The GPU is a PowerVR AXM-8-256, which uses a shared memory architecture like every other integrated GPU. The NPU boasts a maximum processing power of 20 TOPS, about half of what Microsoft requires for its AI PCs, but still powerful enough to help out with AI processing, once software support is in place. Again, this is about making software usable on a real RISC-V platform, not all-out performance. Well, not yet, anyway.
Our test unit comes with the Premier P550 module pre-installed with 16 GB of LPDDR5 memory and 128 MB of eMMC storage with Ubuntu preinstalled. The P550 module is about the size of a Raspberry Pi 5, but has an edge connector like a DIMM that plugs into the motherboard. This version costs $399 (module and motherboard included) at retail, although there is a $499 version with 32GB of memory available for purchase, as well.
The board has what you might expect from a modern mini-ITX or mini-DTX offering, including a single PCI Express x16 physical-sized x4 slot, rear and front panel USB 3.0 ports, onboard audio and video, and a pair of Gigabit Ethernet ports. There’s a third RJ-45 connector for a management network that runs at 100 megabits, as well. And just like the HiFive Unmatched before it, the HiFive Premier P550 has ATX power input and front panel headers for standard ATX switches. It also has a standard 5.5mm 12v barrel connector for embedded applications, as well.
SiFive had been selling a version of this board that runs a Yocto-based embedded Linux distribution that uses XFCE for window management and Dandified Package Manager for installing other software. However, more recently the company has replaced its vanilla Debian base (the same distribution upon which the official Raspberry Pi OS is based) with a pretty straightforward RISC-V port of Ubuntu 24.04.1 LTS. Owners of previous iterations can upgrade their board using an SD card and some terminal commands. However, since our unit shipped with Ubuntu, none of that was necessary, at first. We’ll explain when we get to the build section.
Exploring SiFive HiFive Premier P550 Use Cases
Let’s answer the obvious question: what is the HiFive Premier P550 for? Unlike a lot of small-form-factor computers with exotic (as in, non-x86) instruction set architectures, this is not just an embedded platform to slap into service and never look at again. In other words, it’s not a Raspberry Pi competitor or the like. Rather, this is a development board and a validation platform. It’s also the fastest RISC-V board on the market, which means that for developers that are working to bring software to the ISA, it’s likely the best option to test on real hardware.
Up until recently, the vast majority of RISC-V software development has been done with QEMU virtual machines running the RISC-V ISA to see if “in theory” software could be compiled and run on RISC-V hardware. The HiFive Unmatched was a nice proof of concept that actually ran RISC-V software natively. The Premier P550 takes that a step further and gives enough client computing performance to give RISC-V software a good workout, and also give it access to real hardware peripherals like our Radeon GPU, for example.
And there’s a ton of software that’s making its way to RISC-V. As we get to our testing results, you’ll see there’s actually quite a lot of software that runs on the platform. We didn’t have to compile anything from source for our productivity and developer tests, as RISC-V native binaries already exist for everything we needed to cover.
The mere existence of the Premier P550 means that, hopefully, running RISC-V binaries in QEMU will become less common, while targeting real hardware will increase. Ubuntu is a pretty full-fat distribution, and that means we can exercise this thing a bit. So let’s find out next.
Building a HiFive Premier P550 PC
The fun thing about the HiFive Premier P550 is that you can, for the most part, just use off-the-shelf components. We used what we had lying around, which includes a Cooler Master MasterBox Q300L micro-ATX case and a Corsair RM850e power supply, the latter of which is a bit overkill. The board has the standard headers for USB 3.0 front ports, front panel audio, and ATX standard power and reset buttons along with a power and storage activity LEDs. In that regard, putting it together was almost too easy. And that’s a very good thing.
The initial startup process is pretty straightforward to any Linux veteran; after a quick power-on self-test, the HiFive Premier P550 initializes into the GRUB boot manager, which after a few seconds boots into Ubuntu by default. On first login, we were prompted to change our password and we were good to go. The Ubuntu-themed Gnome desktop is extremely familiar.
This is where we could play with different peripherals, all of which were recognized and ready to go in Ubuntu, like you’d expect from any desktop. Webcams, USB microphones, thumb drives, and even the onboard SATA port worked just as expected. Ubuntu includes Mozilla Firefox as the default web browser, which seemed to work fine in some light-duty browsing.
While the HiFive Premier P550 module has a PowerVR AXM integrated GPU (which has Vulkan drivers, even!), we took the opportunity to use a discrete GPU. The open-source Mesa drivers that come with the system also support older (Polaris and older) graphics cards. I had this dormant XFX Radeon RX 590 Fatboy (rude) laying around, so I slapped it in. This required renaming the X config that drives the PowerVR GPU before shutting down and doing the swap. That’s a little more effort than what you’d have to do on an x86 Linux PC, but it’s really not that big of a deal for the intended audience of software developers.
The software that’s still missing from the RISC-V ecosystem does sting a bit, regardless of who you are. Basically, if it doesn’t ship with Ubuntu, you’re probably going to have to compile it from source. While having Firefox is nice, Google’s Chrome browser is the most popular browser on the planet right now, and it hasn’t been brought to RISC-V yet. Running Windows software on Linux has made great strides over the last couple of years, but you’ll need to run Box64 or build Wine yourself, and then it will be running in an x86 compatibility layer, which hurts performance. Though that’s fine; this is not a consumer system.
At this point, we started considering what tests we’d like to run, and then trouble came looking for us. Turn the page to learn about our self-inflicted disaster and the relatively simple fix that SiFive provides…