ODROID-H3+ SBC review with “Unlimited Performance” mode and 2.5GbE Net Card

ODROID-H3+ Review with 2.5GbE card

Hardkernel have added Intel Jasper Lake mini PCs to their ODROID-H series and they are known as the ODROID-H3 and ODROID-H3+. Like the discontinued ODROID-H2/H2+, this new series also supports the Net Card which will add four extra 2.5 gigabit Ethernet ports. Hardkernel kindly sent an ODROID-H3+ together with a selection of accessories for review and I’m going to look at the effect on performance when changing the Power Limit values in the UEFI (BIOS) together with the network performance of the Net Card.

ODROID-H3+ hardware overview

The ODROID-H3+ physically consists of a 110 x 110 mm (4.33 x 4.33-inch) motherboard complete with an Intel Pentium Silver Jasper Lake mobile N6005 processor which has 4 cores and 4 threads and can boost to 3.3 GHz and also includes Intel UHD Graphics.

The processor, and nearly the entire motherboard, is covered by a large metal heat sink:

Odroid-h3+ review

The front of the motherboard has a power switch, a reset switch, and five LED indicators for NVMe, SATA, power, sleep, and PMIC. The rear has a power jack, dual 2.5 gigabit Ethernet ports, dual USB 2.0 ports, dual USB 3.1 (USB 3.2 Gen 2×1 i.e. 10 Gbit/s) ports, a DisplayPort 1.2, an HDMI 2.0 port and audio ports consisting of audio out, audio in and SPDIF out. Along the left, there are two SATA 3 ports and two corresponding SATA power connectors plus the CMOS battery connector. On the right, there is a 24-pin peripheral expansion (GPIO) header and a fan header to allow active cooling. Finally, on the top of the board, there is the eMMC socket and on the underside, there is an M.2 2280 NVMe PCIe Gen 3.0 slot together with dual DDR4 SODIMM memory slots:

ODROID-H3 motherboard

The full specifications state:

ODROID H3 and H3+ specifications

Accessories

When purchasing the ODROID-H3+, besides the motherboard you will need additional components to build a fully functional system, typically storage, memory, and a power supply. Hardkernel sent me a range of components including accessories, consisting of:

  • A power adapter and cord
  • Two sticks of 16 GB DDR4 3200 MHz memory for a total of 32 GB of memory
  • A 64 GB eMMC card
  • A Net Card
  • A cooling fan
  • A power switch

ODROID-H3 accessories and net card

I was also sent a DIY-build case, the ODROID-H3 Case Type 7, which is suitable for the Net Card and two 2.5” SATA drives:

ODROID-H3 Case Type 7

ODROID-H3+ PL Review Preparation including Issues and Resolutions

The first part of the review looks at modifying the processor’s Power Limits (PL) on the ODROID-H3+ and specifically looks at ‘PL4’ and its ability to allow the CPU to run in ‘Unlimited Performance mode’. For this, I decided to install Windows 11 Pro and run a sub-set of my usual benchmarks of 3DMark’s Fire Strike, PassMark’s PerformanceTest, and Maxon’s Cinebench R20 to measure CPU performance.

Having prepared the ODROID-H3+ by installing the supplied CMOS battery, memory, and eMMC card, I also added to the bottom of the motherboard, four of the short white standoffs from the case accessories which I then secured in place by adding four of the long white standoffs, so this would raise the device and ensure airflow both above and below the ODROID-H3+:

ODROID-H3+ with standoffs

Next, I installed Windows 11 Pro from USB having downloaded the Windows 11 ISO from Microsoft. On booting Windows and after updating, checking the drivers showed some were missing:

ODROID-H3 missing drivers windows 11

Searching the Odroid forums pointed to installing the ‘Chipset Device Software for Intel NUC11AT Products’:

Intel chipset device drivers

However, after this, the ‘Base System:’ driver was still missing:

Base System Device Missing Windows 11

This was resolved by downloading the ‘GNA Scoring Accelerator’ again for NUC11AT products:

base system driver Intel GNA Scoring Accelerator

Once the driver issue had been fixed, given the eMMC card is only 64GB, there was not a lot of free space left:

64GB eMMC limited disk space Windows 11

Because I didn’t need the 13GB Windows hibernation file…

large hiberfil.sys

… I removed it using the ‘powercfg /H off’ command and then installed the benchmark software.

Hardkernel has very extensive documentation on the ODROID-H3+ on their wiki page which aside from including how to install Ubuntu, includes the board layout, schematics, pin details for the board’s various headers, and other hardware-specific information.

ODROID-H3+ PL Performance (Unlimited Performance mode)

First looking at some basic information about the ODROID-H3+. Accessing the UEFI (BIOS) shows that ‘PL4’ is set to 30000:

default PL4 BIOS setting 30000

which, as per the ‘help’ screen:

Power Limit 4 definition

means the CPU will be restricted to a 10W maximum power consumption.

Interestingly, HWiNFO64 doesn’t show ‘PL4’ but it does show ‘PL1’ as 10W and ‘PL2’ as 25W even though they were disabled in the UEFI (BIOS). What is shown that reflects the change of the ‘PL4’ value, is the value for ‘CPU Power Limits (Max)’ which has been set to 30A:

CPU Thermal Design Current TDC

The HWiNFO64 summary information is as follows:

HWiNFO64 HARDKERNEL ODROID-H3

Whilst the installed memory is DDR4 3200 MHz:

Memory speed 3200 MHz

it only runs at 2933 MHz:

Memory 2933 MHz running

GPU-Z still doesn’t recognize the Intel Jasper Lake iGPU:

Intel 4E71 GPU GPU-Z

The eMMC card performance is as expected:

eMMC flash CrystalDiskMark

Running the benchmarks provides the (default) baseline in the table below. Of particular interest from the benchmark results is the detailed monitoring information provided by Fire Strike:

PL4 30000 temperature 3Dmark

The CPU temperature is recorded for the duration of the benchmark and shows it was stable with no extremes, reaching a maximum of just under 72°C. This shows that a ‘PL4’ setting of 30000 is perfectly acceptable for running the ODROID-H3+ as passively cooled.

Next, I changed the value for ‘PL4’ to 0 try ‘Unlimited Performance mode’:

PL4 zero BIOS settings

Hardkernel covers the actual process of changing the value on their wiki.

This time in HWiFO64 the effect of the new ‘PL4’ value is that ‘CPU Power Limits (Max)’ has increased to 75A:

CPU Thermal Design Current TDC 75W

After running the benchmarks (see the second column in the table below), whilst the scores have improved considerably, the temperature monitoring during Fire Strike shows that active cooling is required because the temperature during the CPU-intensive tasks of the ‘Physics test’ is constantly around 105°C:

PL4 zero temperature chart 3Dmark

The next column of the table shows the benchmark results when running the ODROID-H3+ with the typical values for ‘PL1’ (10W) and ‘PL2’ (25W) seen in other mini PCs with the same processor:

ODROID-H3 PL1 PL2 PL4 BIOS settings

PL1 BIOS Platform Power Limit 1

Interestingly, the HWiFO64 information doesn’t appear to change with ‘CPU Power Limits (Max)’ again showing 75A:

Windows 11 HWiNFO64 PL1 PL2 TDC 75A

Therefore it isn’t possible to determine what the ‘PL4’ settings are using this application alone and the UEFI (BIOS) must be entered and checked manually.

The benchmark results are very similar but overall slightly worse than the results for those when ‘PL4’ was set to 0 albeit the differences are very small. The Fire Strike detailed monitoring information is also similar but with some slight observable differences although once again, the temperature during the ‘Physics test’ reached 105°C indicating that these Power Limit settings require active cooling:

3DMark PL1 PL2 temperature

So given that ‘Unlimited Performance mode’ offers the best overall performance, whilst obviously incurring some thermal throttling, I wanted to see what the effect of adding a fan would have on the results.

By using the silver standoffs from the case and inserting them in through the fan mounting holes, I was able to improvise an active cooling set-up:

ODROID-H3+ cooling fan

The results are arguably better with the fan than without based on the number of benchmarks being greater, albeit again marginally:

ODROID-H3+ Unlimited Power Mode benchmarks

The one benchmark that stands out is the CPU-intensive ‘CINEBENCH Release 20’. The addition of the fan generates over a 5% increase. Given the other benchmark margins are so small, it is possible that the analysis could have been skewed by the margin of error from running a benchmark.

To gauge what the margin of error might be for the ‘CINEBENCH Release 20’.test I ran it three times, which admittedly is a small sample, and calculated the margin of error to be in the order of ±1.2%:

cinebench R20 margin of error

Revisiting the results with the assumption that the benchmarking margin of error is relatively small, this still suggests that ‘Unlimited Performance mode’ will give the best performance, and, given the temperature reaching the CPU’s ‘TJUNCTION‘ of 105°C without a fan, this mode also requires active cooling to prevent thermal throttling and, as the saying goes, to prevent the CPU from frying (or potentially degrading through electromigration or similar):.

Cinebench R20 temperature PL4 zero fan

ODROID-H3+ Net Card Review Preparation including Issues and Resolutions

The second part of the review looks at the performance of the ODROID-H3+ Net Card which uses the motherboard’s PCIe slot to add four extra 2.5 gigabit Ethernet ports.

When testing a mini PC’s Ethernet performance, I normally connect the mini PC to a router which is also connected to a PC whose Ethernet connection speeds are known to run at the maximum. I then use ‘iperf3’ to test network speeds. As the ODROID-H3+ includes dual 2.5 gigabit Ethernet ports, one of these could be used as a WAN port and the other as a Management port when adding the Net Card which could then provide four LAN ports. By installing an application like pfSense on the ODROID-H3+, it could then be used as a router.

Alternatively, given the ODROID-H3+ supports two external SATA drives, together with the Net Card and installing an appliance like TrueNAS, the ODROID-H3+ would make an ideal NAS. Both functionalities could be combined, and although TrueNAS supports Virtual Machines which could be used for installing pfSense, my preference was to use a hypervisor and run pfSense and TrueNAS as VMs.

Initially, I looked at using ESXi, however all the ODROID-H3+ and Net Card Ethernet ports use the RTL8125B chipset which isn’t natively supported by ESXi, so I decided to use PROXMOX.

First I physically installed the Net Card on the ODROID-H3+ with reference to Hardkernel’s wiki page on the Net Card.

ODROID-H3 Plus with Net Card

Prior to using the Net Card, a different version of the UEFI (BIOS) needs to be flashed in order to provide 4 bifurcated x1 lanes from the PCIe slot which again is explained in detail on the Hardkernel Net Card wiki page including details of the actual process.

Hardkernel differentiates their UEFI (BIOS) version by using the ‘Project Version’ and ‘Build Date’ settings. Unfortunately, HWiNFO64 doesn’t show the ‘Project Version’ of the installed UEFI (BIOS) but it does show the ‘Build Date’:

ODROID-H3+ BIOS version

For the ‘Project Version’, you specifically have to boot into the UEFI (BIOS) and check the main screen:

BIOS Project Version Build Date Time

More importantly, there is no distinction between the regular and Net Card UEFI (BIOS) which suggests it is best practice to flash the Net Card UEFI (BIOS) when attaching the Net Card and also flash the regular UEFI (BIOS) when removing the Net Card:

BIOS netcard versions

After updating the UEFI (BIOS) I reset ‘PL4’ to 0 to keep using ‘Unlimited Performance mode’ given I was going to continue using the fan.

Having prepared the Net Card, I next configured two 2.5” SATA drives by repurposing two M.2 NVMe SATA drives and installing them into two M.2 SSD to 2.5” SATA adapters.

Next, I built the case by following the video on Harkernel’s wiki page and added the fan on top as explained in this video.

ODROID-H3+ Review with Net Card and Case Type 7

Unfortunately, PROXMOX doesn’t support the eMMC card as it fails to recognize the drive. Whilst this is logged as an ‘open’ issue on the PROXMOX ‘GitHub’ page, the issue does include a possible solution. There are several ways to use this suggestion, including manually making a bootable USB drive and editing then copying the installation files to it, or, respin the PROXMOX ISO with a pre-edited version of the installer. Given my interest in ISO respinning I chose the latter option and having unsquashed the installer file system, I applied a rather heavy-handed and highly unsupportable edit of:


and then respun the ISO, wrote it to a USB, and successfully installed PROXMOX on the ODROID-H3+ eMMC card.

Afterward, installing pfSense was straightforward:

ODROID-H3+ pfSense VM

as was installing TrueNAS:

PROMOX TrueNAS VM

To set up the test network, in PROXMOX I configured one of the ODROID-H3+ Ethernet ports as my WAN bridge, and then bound all of the four Net Card Ethernet ports as my LAN bridge which I passed to both VMs. I then added the SSD physical disks as virtual SCSI disks and passed them through to the TrueNAS VM:

SSD for TrueNAS

Having configured some rules on the pfSense firewall, the ODROID-H3+ was ready for testing network performance using ‘iperf3’:

PROMOX Virtual Environment ODROID-H3+

ODROID-H3+ Net Card Performance

The actual testing was conducted by connecting two PCs to the Net Card’s LAN, one with a 10 gigabit Ethernet port to act as a server, and the other with a 2.5 gigabit Ethernet port to act as the client. Both the server PC and client PC were dual boot Windows 11 Pro and Ubuntu 22.04.1. I used ‘iperf3’ to test network performance between various combinations of PCs (client and server), hypervisor (PROXMOX), and one of the VMs (TrueNAS):

ODROID-H3+ 2.5GbE net card iperf3

The testing shows that the Net Card’s 2.5 gigabit Ethernet ports perform as expected with a maximum average speed of 2.35 gigabits per second:

Windows 11 VM iperf3

Ubuntu VM iperf3

The PC-to-PC average was 2.22 Gbits/s for download and 2.04 Gbits/s for upload.

The rest of the result permutations and combinations highlight the potential overheads of hypervisors, VMs, and appliance applications and are included for interest.

CPU Usage

In parallel, I also very briefly looked at the CPU load on the ODROID-H3+ by monitoring ‘/proc/stat’. When idle, the CPU usage was less than 5%. Running ‘iperf3’ between PROXMOX and the server PC running Windows, during download (2.36 Gbits/s) the CPU usage was around 30% however during upload (1.84 Gbits/s) the CPU usage dropped to around 20%. Whereas between TrueNAS and the Windows server PC, the CPU usage was around 85% during download (2.35 Gbits/s) and 35% during upload (1.90 Gbits/s). This suggests that the overhead of running the TrueNAS appliance creates additional CPU load which should be considered if running the ODROID-H3+ passively.

Power Consumption

Power consumption was measured using the above configuration, i.e. with the Net Card installed, using the case and fan, together with ‘PL4’ set to 0 and running PROXMOX, etc:

  • Powered off – 1.2 Watts
  • UEFI (BIOS) – 18.8 Watts
  • GRUB boot menu – 18.0 Watts
  • Idle
    • 8.2 Watts (PROXMOX)
    • 10.2 Watts (with pfSense)
    • 10.5 Watts (and TrueNAS)
    • 11.6 Watts (and 2 PCs connected)
  • On a LAN-connected Windows PC, opening ‘File Explorer’ with ‘View’ set to ‘Extra large icons’ on a directory containing multiple images – 18.8 Watts

Final Observations

Using a ‘PL4’ power setting of 0 coupled with a fan certainly seems to be the easiest way to get ‘Ultimate Performance’ from the ODROID-H3+ SBC. If the Net Card is added then CPU usage will increase and will undoubtedly make use of the ‘Ultimate Performance’.

Having used the ODROID-H3+ as a NAS and router for the purposes of testing and storing images and results for this review, by running PROXMOX headlessly with auto-startup of the VMs at power on, my personal experience of the ODROID-H3+ and Net Card has been very good.

HighlightsLimitations
Multiple ports and headersRealtek Ethernet ports
PCIe NVMe supportNo WiFi or SD card slots
Both passive and active coolingNo OOTB PROXMOX eMMC support

I’d like to thank Hardkernel for providing the ODROID-H3+ board and accessories for review. The ODROID-H3+ can be purchased for $165, the case type 7 for $20,  and the Net Card for $47.

Share this:

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress

ROCK 5 ITX RK3588 mini-ITX motherboard
Subscribe
Notify of
guest
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.
16 Comments
oldest
newest
Willy
1 year ago

Maybe one way to avoid throttling at PL4=0 is to limit the frequency to 3.2 or maybe 3.1 GHz which could possibly still provide you the benefits of the higher non-throttled frequency.

tkaiser
tkaiser
1 year ago

> This suggests that the overhead of running the TrueNAS appliance creates additional CPU load

The 85% CPU utilization were just caused by an iperf3 run between client and this VM? Don’t you think this could be due to CPU cycles wasted caused by bridging and not ‘appliance creating additional CPU load’? Quick check with the pfsense VM might clarify (iperf being available through Package Manager and then Diagnostics)

Linuxium
1 year ago

If it helps, measuring CPU load using ‘vmstat’, between pfSense and the Windows server PC, the CPU usage was around 57% during download (2.35 Gbits/s) and 97% during upload (1.90 Gbits/s).

dave
dave
1 year ago

If this had 128gb of storage it would be a more viable option for running windows on.

Jean-Luc Aufranc (CNXSoft)
Admin

Hardkernel sent the 64GB module to Ian, but they also sell a 128GB module. It should also be possible to run the OS from the SSD.

Sum Yung Gai
1 year ago

It actually doesn’t need the eMMC module. It works just fine with either SATA or NVMe storage directly, just like any other x86-64 box. I’ve got an Odroid H3 (not plus) running from a Samsung SSD 970 EVO Plus (1TB) with Kubuntu 22.04 LTS “Jammy Jellyfish” as a video watching station. The Samsung 970 EVO Plus is an NVMe SSD, and if using NVMe SSD’s, these really are the most compatible. WD Black NVMe SSD’s, you can install the OS, but you cannot boot from it. The 970 EVO’s, you can. Go figure. SATA 2.5″ SSD’s, it boots fine from… Read more »

WereCatf
WereCatf
1 year ago

There’s two SATA-ports and, if one were to skip the Net-card, an M.2-slot for an NVMe SSD, so you have plenty of options for jacking in a lot of storage.

someone
someone
1 year ago

This isn’t an Alder Lake, this is just an ordinary Jasper Lake, introduced a year before (as correctly mentioned further down). Which means its cores are not Gracemont (Alder Lakes E-Cores), but Tremont. And its IGPU isn’t Xe graphics, but based on the old architecture which Intel used up to Icelake. Also explains why the RAM only runs at 2933 MHz. The Jasper Lake can’t run it any faster.

Anonymous
Anonymous
1 year ago

It might be superior to some Alder Lake-N options in some cases due to having dual-channel DDR4 instead of single-channel DDR4/DDR5.

Linuxium
1 year ago

Thanks – it’s a typo and it should have read ‘Hardkernel have added Intel Jasper Lake mini PCs to their ODROID-H series and they are known as the ODROID-H3 and ODROID-H3+.’

Marcelo Bello
1 year ago

Way too expensive.
There are good alternatives on AliExpress for ~30-40% less.

WereCatf
WereCatf
1 year ago

Feel free to post links. Also, how often do they get BIOS-updates? How good is their support? I mean, some of the value with Odroid’s stuff is that they do provide BIOS-updates and they have working support, which many Chinese vendors do not offer at all.

back2future
back2future
1 year ago

Maybe from Your POV, x86_64 is a tight margin market on that type of cpu/system implementation, but with Hardkernel H3(/H3+) ~$129(/~$165) there’s a(nother) pretty versatile and accessible base for individual projects on now up to 2x32GB (each ~$107) RAM and net expansion board 4×2.5Gbps (~$47). 128GB emmc ~$45.

Lopatoid
7 months ago

How do I find this alternatives?
TIA.

Chris Clawson
1 year ago

You might want to test the networking with Realtek’s drivers instead of the generic r8168 or whatever. They should have better performance.

https://www.realtek.com/en/component/zoo/category/network-interface-controllers-10-100-1000m-gigabit-ethernet-pci-express-software

Linuxium
1 year ago

My understanding was that the Realtek drivers were only recommended for Windows installations experiencing problems. When I tested Windows on the ODROID-H3+ I did install them but saw no network performance change.

However, for the client PC running Ubuntu 22.04.1 I’ve just checked and it was using Ethernet with the Realtek RTL8125 chipset and the default r8169 driver with rtl8125b-2_0.0.2 firmware. So I’ll have to upgrade the driver with the Realtek one as you suggest and see what the effect is.

Khadas VIM4 SBC