$50 ODROID-C4 Raspberry Pi 4 Competitor Combines Amlogic S905X3 SoC with 4GB RAM

Hardkernel has just launched an update to its ODROID-C2 board, with ODROID-C4 SBC equipped with a 2.0 GHz Amlogic S905X3 quad-core Cortex-A55 processor combined with up to 4GB RAM, four USB 3.0 ports, Gigabit Ethernet, HDMI 2.0 video output, and the usual 40-pin I/O header.

That makes it a worthy competitor to Raspberry Pi 4 with 4GB RAM, especially since it supports Ubuntu 20.04, CoreELEC, Android 9, and LineageOS operating systems, and comes with a proper heatsink for cooling for just $50 plus shipping.

ODROID-C4
Click to Enlarge

ODROID-C4 specifications:

  • SoC – Amlogic S905X3 quad-core Cortex-A55 processor @ 2.0GHz with Arm Mali-G31MP2 GPU supporting OpenGL ES 3.2, Vulkan 1.0 and OpenCL 2.0
  • System Memory – 4GB DDR4
  • Storage
    • 1x eMMC connector (8/16/32/64GB modules available)
    • 1x Micro SD slot with support for DS/HS mode up to UHS-I SDR104
  • Video & Output – HDMI 2.0 port up to [email protected] with HDR, CEC, EDID
  • Audio – Digital audio via HDMI, optional SPDIF optical output, audio expansion header (See below)
  • Video
  • Connectivity – Gigabit Ethernet port via Realtek RTL8211F; optional WiFi with USB dongle
  • USB – 4x USB 3.0 host ports, 1x USB 2.0 OTG port for host or device mode (not for power input)
  • Expansion
    • 40-pin I/O header with up to 25x GPIO, 6x PWM, 2x ADC (12-bit, 1.8V max), 2x I2C, 1x SPI, 1x UART, and 5V, 3.3V, 1.8V, GND power signals.
    • 7-pin audio expansion header with I2C  S/PDIF output, 5V DC
    • Note all I/Os are 3.3V, except ADC @ 1.8V max
  • Debugging – Debug serial console (UART)
  • Misc – IR receiver, system LEDs for power (Red) and kernel status (Blue)
  • Power Supply – 5.5V to 17V via 5.5/2.1mm DC jack; DC 12V/2A power adaptor is recommended
  • Power consumption – Idle: ~1.8W; CPU stress: ~3.64W with Performance governor; power off: ~0.14W
  • Dimensions – 85 x 56mm
  • Weight – 59 grams with heatsink
Amlogic S905X3 SBC
Click to Enlarge

You’ll find documentation in the Wiki.

Compared to ODROID-C2, the new ODROID-C4 is significantly more efficient, while delivering a 40% boost to multi-core CPU performance, and 50% higher DRAM bandwidth which may be especially useful for graphics and video playback, or other applications moving lots of data.

The Cortex-A55 core used in Amlogic S905X3 is supposed to be a power-efficient processor that’s not quite as powerful as the Cortex-A72 core found in Raspberry Pi 4. But this is mostly compensated by a higher default CPU frequency (1.5 GHz vs 2.0 GHz) as shown in some benchmarks shared by Hardkernel in the announcement post.

Raspberry Pi 4 vs ODROID-C4
Click to Enlarge

Both boards have about the same performance with the real-life 7-zip benchmark, but we can see a much higher RAM bandwidth for ODROID-C4. I assume they added a heatsink to the Raspberry Pi 4 board or that would not be a fair comparison since it tends to overheat under load.  It should also be noted Raspberry Pi 4 can be overclocked to 2.0+ GHz with proper cooling, which in that case would be quite faster than ODROID-C4 in most workloads.

ODROID-C4 Crypto Benchmark
Click to Enlarge

One exemption being applications making heavy use of crypto functions, since Broadcom BCM2711 processor found in Raspberry Pi 4 does not come with Armv8 crypto extension, and for example, ODROID-C4 is around 7 times faster with SHA256 8KB hash. ODROID-C4 consumes quite a lot less power as well.

Besides benchmarks and power consumption, the boards also differ in terms of features. For example, Raspberry Pi 4 offers dual HDMI output and built-in WiFi and Bluetooth, while ODROID-C4 comes with a single HDMI port, and WiFi/Bt is optional via a USB dongle. On the other hand, ODROID-C4 comes with four USB 3.0 ports, and offers support for eMMC flash module, while RPi 4 features 2x USB 3.0 + 2x USB 2.0 ports, and does not offer an eMMC option.

ODROID-C4 should have similar performance to Khadas VIM3L SBC which comes with Amlogic S905D3 processor, but is offered at a higher price ($70+) due to extra built-in features such on-chip NPU, STM8 control MCU, built-in WiFI and Bluetooth, eMMC flash soldered on the board and so on.

Support CNX Software - Donate via PayPal or become a Patron on Patreon
Advertisements

101
Leave a Reply

avatar
14 Comment threads
87 Thread replies
3 Followers
 
Most reacted comment
Hottest comment thread
33 Comment authors
tkaiserWillytheguyukDavid Willmorecrashoverride Recent comment authors
  Subscribe  
newest oldest most voted
Notify of
Methanoid
Guest
Methanoid

Would be interested to know how high this might OC given Pi4’s are regularly reaching 2.0-2.1 GHz and for emulation CPU performance might be useful for Gamecube/Wii/Dreamcast

theguyuk
Guest
theguyuk

Does not need over clocking to be on par with Rpi tart 4, as i commented in another thread people have noticed the Android media players with s905x3 emulate games on par with over clocked cooled Rpi tart 4.

https://www.cnx-software.com/2020/04/08/amlogic-s922x-digital-signage-board-comes-with-hdmi-lvds-v-by-one-edp/#comment-571765

Methanoid
Guest
Methanoid

Downvoted and debunked by comments after it though? 😉

theguyuk
Guest
theguyuk

No , down voters fear people knowing. did you check the video i linked.

willy
Guest
willy

That’s a great news. I think it will be appealing to many who look for lots of RAM and a stable platform. My VIM3L remains cool to the touch, I expect this one to be the same and never to throttle at all. The A55 is reasonably beefy for day-to-day operations so that could be a really cool general-purpose board. One point to keep in mind however is the shipping cost+taxes which tend to be a bit on the high side from HK.

Also what’s cool with HardKernel is that they didn’t want to be trapped twice and this time they measured the performance linearity with reported frequency to verify that it was real 🙂 They were kind enough not to do it on the competing board 😉

blu
Guest
blu

This board could be a killer proposition if only Panfrost supported bifrost already. Hopefully sooner than later.

David Willmore
Guest
David Willmore
Member
Michal Lazo

I don’t get this benchmarks
https://www.cnx-software.com/wp-content/uploads/2020/04/Raspberry-Pi-4-vs-ODROID-C4.png

so RPI4 with out of order CPU on 1,5GHz
is in par with Odroid C4 with in order CPU on 2GHz ?

Can anybody do some nice benchmarks

tkaiser
Guest
tkaiser

> Can anybody do some nice benchmarks

Why? Why not ‘use case first’ and skipping kitchen-sink benchmarks entirely?

The whole benchmark sh*t show is called ‘Marketing’ and as such Hardkernel has to participate. Running Unixbench these days is close to stupid since it’s mostly a compiler benchmark for single-threaded workloads/systems and you can’t compare different results. But since everybody does it, Hardkernel does it too. The mbw numbers are close to irrelevant if you’re interested in performance but higher numbers indicate that the overall system can cope with higher graphics and video resolutions / bit depths.

If your use case is not (un)compressing all day long or you plan to you use an SBC as some sort of server then the 7-zip scores are also close to useless to you.

So why looking at kitchen-sink benchmark results at all instead of defining use cases and looking whether the board in question fits or not?

Laurent
Guest
Laurent

> So why looking at kitchen-sink benchmark results at all instead of defining use cases and looking whether the board in question fits or not?

Wise words, Performance can’t be reduced to a small number of results (and what is frightening is that even deciders of technical companies don’t get it).

The problem is that you’d need someone to run those workloads on the various platforms you are considering. Or make sure those workloads somehow enter the pool of benchmarks in widespread use, in which case they will turn into marketing tools 🙂

willy
Guest
willy

Note that I found in the past that compiler performance directly follows the memory performance. And unsurprizingly my RPi4 at 2GHz is 1.5 times slower at this than the NanoPi-M4 or MacchiatoBin at the same frequencies, which show much higher memory performance. I haven’t benched my VIM3L but I’d expect a significant improvement there. However I agree that it’s only *one* use case and that it could equally be run directly!

Anthony
Guest
Anthony

$33 postage to the UK making this $88. That is insane. Is there anywhere with sensible postage costs?

Steve
Guest
Steve

You can order it from odroid.co.uk with standard Royal Mail postage.

maurer
Guest
maurer

yeah…sure….71.99€

Steve
Guest
Steve

Looking at ODroid site it’s US$50 excluding any taxes. Assuming you are in the EU you’ll add your local VAT to that (20% in the case of the UK) That takes it to US$60. Add on US$33 shipping (shipping shouldn’t be taxable) and you’re at US$93 – which is around GBP£75. You may have to pay a handling fee on top of this to cover the VAT payment from your courier company or post office.

Buying it from ODroid.co.uk you are paying £59 inc VAT (US$70) plus £4.28 postage – so you save about £10 by buying locally AND you are covered by an EU sale of goods guarantee – just (which you won’t be if you buy directly from ODroid)

More expensive than a Pi 4B – but offering different functionality. Still a pretty good buy, though I think you can get S905X3 boxes cased with on-board eMMC (of what quality though) and bundled PSUs for less (but with poorer cooling, less I/O potentially) .

Member

Sorry, can you please elaborate on EU sale of goods guarantee when buying from UK site? What happened to that Brexit thing you did?

I’m seriously interested, no sarcasm intended.

theguyuk
Guest
theguyuk

There are two youtube reviewers of tv boxes that do a spreadsheet of ranking of tested boxes.
tv box stop and chigz tech reviews. Help you sort weak from good.

tof
Guest
tof

Odroid C4 is at 71.99€ plus £4.28 postage on Odroid.co.uk… but you can’t buy it alone !
You’re forced to buy it with these two mandatory options (forced sales): Black Case (+7.19€) + 12V/1.5A PSU (+7.19€). Total at 86.36€ plus shipping.

PhilS
Guest
PhilS

They have now adjusted the site to allow more specific options, although despite Hardkernel recommending 12v/2a, Odoid UK are using 12v/1.5a

tkaiser
Guest
tkaiser

12V/2A is 20W for external USB consumers, 12V/1.5A only 14W. Should fit in situations where only 3 USB devices have to be powered by the C4?

PhilS
Guest
PhilS

Shipping costs are included for the purposes of VAT.
and Odroid UK only offers a 3 month warranty, so you would have to fight them should the board fail after that.

Rob Brown
Guest
Rob Brown

$22 to New Zealand. Also in Australia and New Zealand (and others I think) if vendors don’t collect taxes then it becomes a pain to import things. I’m going to have to pass on this.

manuti
Guest

And don’t forget Customs to add another pound to the bill.

emk2203
Guest
emk2203

When you take the effort to login or register, the costs go down to a very reasonable 14USD for shipping to Germany. The 33USD are the worst case. I ordered yesterday, so I should know.

David Willmore
Guest
David Willmore

Same rate for shipping to the US. Just did it.

Member

You will have to pay 19% separately to shipping company, right? Last time FeDex did this trick to me.

emk2203
Guest
emk2203

Yes. The 19% apply, what’s even worse is that I have to pick it up at the customs office or pay some more €€ to FedEx or DHL (I think they switched to DHL now). Overall, it’s still a good deal.

Dan
Guest
Dan

ARM vs. x86

The Celeron J4005 Intel NUC is 120 euros including shipping and taxes in Europe, on German Amazon for example. Why would you want to buy an ARM-based HTPC or SBC or whatever you want to call it compared to an x86 one? I’m seriously asking.

A few days ago I’ve asked a rather similar question, but then I asked why would you want to buy a “Chinese” PC vs. a “Western” one (https://www.cnx-software.com/2020/04/20/fanless-comet-lake-mini-pc-ships-with-intel-core-i7-quad-or-hexa-core-processor/#comment-572049). Now I’m like there aren’t many worthwhile competitors to NUCs, expect of course if you have very special needs.

https://stayhipp.com/wp-content/uploads/2018/10/Change-My-Mind.jpg

crashoverride
Guest
crashoverride

Lots of people use these boards for media. The C4 does [email protected] HDR. The J4005 does not. The C4 does HDMI CEC. The J4005 does not. When including RAM (4G), the C4 is less than half the cost of the NUC while offering superior media features.

There are other reasons, such as the ability to run Android, that are also a factor, so it depends entirely on your needs. There are justifications for both ARM and x86 as proven by the market.

Dan
Guest
Dan

There is the Android-x86 project to run Android on x86. Otherwise, good points.

back2future
Guest
back2future

Adds probably fast (general purpose) ADCs and other gpio on expansion header I/O, maybe half idling power compared to most (more capable) x64 platforms and more direct changes on cpu&memory speed from os level?

willy
Guest
willy

Another point is sometimes security, for deploy-and-forget use cases, which are common when you start to install an unattended box in your garage. It’s a bit less the case nowadays but for a long time it happened that you’d have tons of x86 shell code and exploits available and almost nothing available for other archs, by lack of interest and skills. For many years my reverse-proxy at home was running the famous remotely-rootable openssh 3.1 on a VAX, and I was saying that I was willing to offer the machine to whoever would root it 🙂 Needless to say that it never happened in 5 years or so!

Dan
Guest
Dan
Willy
Guest
Willy

The whole concept of security through obscurity is flawed when generalized. The original concept applies to hiding *implementation* details. When you disclose all of them and people are not skilled enough to attack the design it’s not security through obscurity as originally conceptualized.

The best example of this are the passwords and private keys you’re using every day: you stay protected only because someone else isn’t skilled enough to guess them or to factor a large integer. Here it’s not much different when a bug is known and code is available but nobody’s able to produce a working exploit.

ProDigit
Guest
ProDigit

3 reasons,
1- price. Smaller boards go from $30 (with 1gb of ram, which could be sufficient for some).
2- power consumption. The entire board (RAM, CPU, networking, emmc,…) can run within a 3 watt power envelope.
3- Size. A board has a 3 by 3 inch footprint.
4- bonus: stackability. Due to low price, and build, These boards can easily be stacked, into towers of these for some very reliable servers (if one board fails, another takes over).
I have a stack of 25 with cooling on a 60W USB hub power supply. With networking it uses a mere 85-95W. That’s 100 full arm cores clocked at 1,8-1,9 Ghz.

Jeroen
Guest

I will pass, not a fan of odroid anymore, had both the C1 and C2,the C1 a had broken cec design wich was never fixed or refunded, and the C2 was poorly build, didn’t live verry long.

Member
Ac Sen

I have the C1+ and even though Debian support is non existent(at least now), once you go the Ubuntu path, you’ll have a very stable system, mine is running pi-hole 24×7, and so far no issues at all.

rooted
Guest
rooted

I have three Odroid C2, one of them being a preproduction model and they all still function 100%.

I also have a C1 which indeed has broken CEC and a C1+ that still function fine as well.

David Willmore
Guest
David Willmore

HardKernel makes dev boards. If you wanted a turnkey STB, go buy one. The fix for CEC was soldering *one* resistor. They fixed it in the C1+ along with adding a bunch of enhancements and immediately phased out the C1 for the C1+.

Willy
Guest
Willy

They’re among the rare board makers who actually support their boards for a long time, and provide software updates and upgrades. Usually buying a board there is a good investment in my opinion, once you pass beyond the shipping hassle.

Damien
Guest
Damien

After having the c1 and c2 i will not be going for thos due to the lack of mainline support. Niether the c1 or c2 got a full feature set so am not going to was waste money on anymore amlogic powered stuff until proper effort by the vendor is made to kill its stale branches of linux

Member

“Dolby Vision and HDR10, HDR10+, HLG, and PRIME HDR video processing”

Hope ODROID has the required licenses in place, lest it turn out to be the fiasco the VIM3L was!

ProDigit
Guest
ProDigit

You can find Android TV boxes with this hardware (just no gpio pins) from $30-45 on eBay!

Peter
Guest
Peter

And then buy your TV box and probably have no manufacturer/supplier support or fixes for their devices not functioning properly. Of course some boxes have some community support but that soon fades after a year after new devices enter the market and it is rinse and repeat.

The amount of ewaste being generated by these one time cheap devices being churned out is just mind boggling.

domih
Guest
domih

I’m not a “DIY electronics maker” however I do like and use SBCs for systems that run 24×7 and where low power consumption is a factor. I’m currently working on a small Cassandra cluster of N2 to handle a large set of sensors input. I wanted to know how Pi4B and N2 would compare before choosing one or the other. Using the Cassandra stress tool, I got the following results:

Odroid N2
op rate : 360 op/s [insert: 360 op/s]
partition rate : 9,186 pk/s [insert: 9,186 pk/s]
row rate : 9,186 row/s [insert: 9,186 row/s] <<<<<
latency mean : 15.3 ms [insert: 15.3 ms]
latency median : 10.6 ms [insert: 10.6 ms]
latency 95th percentile : 41.3 ms [insert: 41.3 ms]
latency 99th percentile : 61.9 ms [insert: 61.9 ms]
latency 99.9th percentile : 127.8 ms [insert: 127.8 ms]
latency max : 1866.5 ms [insert: 1,866.5 ms]

Raspberry Pi 4B (with active cooling to eliminate thermal throttling!)
op rate : 114 op/s [insert: 114 op/s]
partition rate : 2,971 pk/s [insert: 2,971 pk/s]
row rate : 2,971 row/s [insert: 2,971 row/s] <<<<<
latency mean : 84.6 ms [insert: 84.6 ms]
latency median : 26.8 ms [insert: 26.8 ms]
latency 95th percentile : 136.8 ms [insert: 136.8 ms]
latency 99th percentile : 1176.5 ms [insert: 1,176.5 ms]
latency 99.9th percentile : 1436.5 ms [insert: 1,436.5 ms]
latency max : 1462.8 ms [insert: 1,462.8 ms]

In both cases DB was running on an SSD via USB3. The N2 at 9,186 row/s trounced the Pi 4B at 2,971 row/s.

So despite all the Pi 4B killing 3rd party OEMs "facts" and the benchmarks to support the "claims" coming from the Raspberry universe, always test what you are going to actually do with the hardware before settling on a particular model.

In addition, the fact that I had to install a $20 active heat sink on the Pi 4B to stop it to thermally throttle down when pushed to its limit makes the Pi 4B as expensive as the N2 with passive cooling.

I welcome the arrival of the C4!

I'll definitely try one when it appears on Ameridroid.

David Willmore
Guest
David Willmore

I’m curious to see an eMMC vs SSD test. eMMC is generally slower than SSD, but doesn’t have to take that extra jump over USBSATA, so may have some better small block performance. I ordered eMMC cards (for C4 and N2) this time. They’ll be the first eMMC I’ll have on an SBC. So, I’ll be in a position to do this test before long.

willy
Guest
willy

David, have a look at their page, close to the bottom, there are performance tests for read & write for a USB-attached SSD, eMMC and micro-SD. In short, at 4kB eMMC ~= USB. Above that, USB wins. micro-SD is roughly half the perf of eMMC.

David Willmore
Guest
David Willmore

Thanks. I’m curious if that hold for real world situations.

domih
Guest
domih

That’s a valid question. But there are other aspects.

I think it would hold for real world situations but even if it were not it does not matter to me because there is also the question of disk space.

As far as I can see a reasonable priced eMMC max size is 128GB. I need more than 128GB, with SSD again with reasonable prices I can push to 1TB or 2TB per node, more if I plug in multiple SSDs per node assembling them with LVM2.

Let me detail the disk space requirement story.

Cassandra provides extremely fast read and write, especially for immutable data, i.e. input from sensors does not change once recorded (right?) The engine speed makes it ideal to then perform heavy analysis and statistics, i.e. using things such as Apache Spark where the equivalent of a select… group by is performed in a distributed manner on each partition making it fast and efficient.

Using Cassandra you solve a lot of common DB requirements by simply denormalizing and duplicating the data. The fastest searches are based on the partition key, plus clustering keys if compound key.

Cassandra is NoSQL so kiss goodbye to indexes, triggers, transactions, joins, select… group by, unique values, referential integrity and so on. You can do these things, but in different manners that have nothing in common with what you get in MySQL, SQL Server, Oracle, etc.

So why would you use Cassandra if you lose all these things? Because a Cassandra cluster can spread over dozens, hundreds, thousands of nodes across data centers and “gladly” handle PB of data. Clustering and replication is handled by Cassandra, you don’t have to juggle with data sharding like for instance in Mongo DB or in SQL. You don’t care about backups, your data is on many nodes, replicated. When one node dies, you just replace it and Cassandra will sync the new node. You reach Cassandra limits only if your name is Apple or Netflix. Don’t worry about them, Cassandra is open source so they customize the code to bypass these limits.

Cassandra authorizes the use of indexes but it comes at a cost of multiple nodes access. Bad. Exclusively using partition and clustering keys allows to keep a linear increase of query time no matter the size of the data. With a normally used SQL DB, the server will basically explode under the weight when you’re handling humongous amount of data (i.e. the address tables become unmanageable.) I’m not even talking about concurrent usage. Even with a regular SQL DB you stop using joins if you have hundred or thousands of concurrent users (i.e. in a web app.) With Cassandra, you scale by adding nodes. Voilà!

With Cassandra, if you want to search rows using three different criteria (columns), one or two or three at a time, the best way to do it is to create three tables (duplicating the same data three times) where each column is the partition key and the two others being clustering key(s).

In short when using Cassandra, you do NOT care about saving disk space. The more nodes, the more memory, the more disk space, the better as long as the system answers at light speed and does not collapse when constant concurrent access is the rule.

Conclusion: the bet here is to think that the algorithms they use for core usage, handing thousands of nodes ALSO work adequately to solve the use of rather limited resources as an SBC. So far so good, i.e. on an N2 the DB Engine correctly and fully uses the 4 BIG cores while leaving the 2 little ones to other tasks. We’ll see how it goes. The idea is that if you can use cheap low power consuming SBCs to handle hundreds of millions rows or even a few billions (?) you save significant money compared to renting x86 nodes on the cloud. The same applies if your application is at the edge rather than on the cloud. My gut feeling is that the limit will be imposed by the relatively small amount of memory. To conclude, this study is basically downsizing the original idea of distributed and NoSQL where hundreds of lows cost PCs can replace expensive gigantic servers and as a matter of fact do what the latter can’t do because they collapse under their own weight.

tkaiser
Guest
tkaiser

> In both cases DB was running on an SSD via USB3

On the RPi 4 did you revert the VL805 firmware back to version 00013701? Otherwise random IO performance especially with small chunks is totally destroyed: https://www.cnx-software.com/2019/06/29/new-raspberry-pi-4-vli-firmware-lowers-temperature/#comment-564319

Mounter81
Guest
Mounter81

These SBC’s regularly missing the analogue audio port, and as far as I could figure out the few expansion options available to fill this are way too expensive. Any knows possibilities that are priced acceptably for these boards yet?

Errepunto
Guest
Errepunto

This costs less than 4$
https://www.hardkernel.com/shop/usb-audio-adapter/

(ok, it’s an old item, but you has hundreds of similar USB devices in amazon, ebay or aliexpress for similar cost)

David Willmore
Guest
David Willmore

I’d second that. The reason HK doesn’t sell USB/audio adapters is because they’re readily available everywhere and they all follow the same USB spec, so they don’t need custom drivers. The reason they sell specific USB/WiFi adapters is that those things don’t have a common spec and a different driver is needed for each one. They’d like to support what they sell but may not support every driver under the sun.

The audio I/O built into the Rpi boards is pretty rubbish if that’s our standard.

What are you doing with analog audio? If it’s hooking to a home audio setup, then analog audio is the last thing you want to use. HDMI is first choice. S/PDIF is second. Analog audio is a distant third. Not that this board has the first two options.

willy
Guest
willy

While I’d personally be fine in principle with USB-audio, some of these devices employ low-quality chips involving a class-D output for the DAC which results in lots of white noise and hissing at certain frequencies. It’s OK for listening to voice, but some music, especially classic, is awful through some of these. But for most use cases I’d still pick them.

David Willmore
Guest
David Willmore

True, but supporting audio over USB leaves the quality of the interface up to you. If it’s built in, then you’re stuck with what they put on the board. And for those of us who don’t need it, it’s extra junk we have to pay for that we don’t want. Like WiFi and BT on the Rpi boards. I’ve never turned it on and I never expect I will.

Willy
Guest
Willy

I realize I didn’t express myself clearly, I meant “I’m fine with adding a USB-audio adapter myself”, not about having it onboard 🙂 So we agree here.

PhilS
Guest
PhilS

I wonder if this one comes with the same pitiful warranty as the N2.

Once I add on the cost of the PSU and case it doesn’t look quite so good.

theguyuk
Guest
theguyuk

Unless Covid 19 ruins launch date this year, i wonder if the S905X4 will be pin compatible with S905X3 ?

theguyuk
Guest
theguyuk

Also will Odroid make something like NanoPi R2S with the S905X3/4 but include hdmi for a cheap signage player as possible use?

Gouwa
Guest

Yes, it’s pin to pin compatible, and the X4 with Google AV1 support.

David Willmore
Guest
David Willmore

Mine sould arrive in two days. Does anyone want any specific tests run?

tkaiser
Guest
tkaiser

An sbc-bench -c would be nice though results are pretty predictable due to Khadas VIM3L being more or less the same (the 5% cpufreq increase from 1.9 GHz to 2.0GHz most probably will result in 5% better numbers)

David Willmore
Guest
David Willmore

I had to disable the 0.1 load level check on the C4. It was hovering around 0.5 long term. I watched and there really wasn’t anything running.

C4 results: http://ix.io/2k66
RPi4 results: http://ix.io/2k65

I’m curious to know what you determine from that. The C4 had a few of these in the log:
[ 3918.110529] thermal cooling_device2: Failed to convert 2016000KHz for cpu 0 into a cdev state
Not sure what that means.

crashoverride
Guest
crashoverride

I did not catch that until now. The C4 (Cortex-A55) is ARMv8.2 The older PI4 (Cortex-A72) is only ARMv8(.0).

Willy
Guest
Willy

Yep, that was the reason I was impatient to get the VIM3L with its A55, I wanted to have a look at new atomic instructions that are not present in the A73 of the VIM3 😉

tkaiser
Guest
tkaiser

> C4 results: http://ix.io/2k66

Thank you!

* As you said there’s something going on generating a higher average load but without background CPU activity (confirmed by looking at the monitoring output). Load averages on Linux are mostly misinterpreted anyway and the same problem affects the similar Khadas VIM3L and also ODROID N2. A bit irritating that Hardkernel didn’t resolve that problem with Amlogic’s BSP kernel in the meantime since this hasn’t changed since 2018.

* your C4 is limited to 1900 MHz instead of the advertised 2 GHz and as such benchmark results vary. On your C4 the 7->ZIP MIPS score is 5220 while Hardkernel reported 5411 which is 5% higher – 2.0 GHz vs. 1.9 GHz – and also an indication for ‘benchmarking gone wrong’ since you never run a benchmark only once and then rely on the result.

* rather high GPU memory reservations (only 3.6GB available in Linux) which seems to be common amongst boards of the same family: ODROID N2 or Khadas VIM3L also ‘lack’ 1/10 of the physical RAM. Most probably an Amlogic BSP issue/feature.

David Willmore
Guest
David Willmore

Looking around on the wiki, I see that HK consideres 2.016GHz ‘overclocked’. I set the value in the boot.ini file and rebooted. Rerunning the tests.

https://wiki.odroid.com/odroid-c4/application_note/software/set_cpu_freq#tab__odroid-c43

I’m guessing that the kernel uses the 100MHz point when idle and that truely wouldn’t require much to get a fake load average.

tkaiser
Guest
tkaiser

> I’m guessing that the kernel uses the 100MHz point when idle

In case Hardkernel has set CONFIG_CPU_FREQ_STAT=y it should be easy to answer these questions by looking at the cpufreq statistics: find /sys -type f -name time_in_state | sort | grep 'cpufreq'

If the board really idles at 100MHz I would increase this to maybe 600 MHz (Armbian seems to set 500 MHz min and 1536 MHz max for the C4). With clockspeeds as low as 100 MHz and with certain cpufreq governors a lot of ‘real world’ tasks like accessing storage can be magnitudes slower than necessary.

David Willmore
Guest
David Willmore

From looking at that file, it seems to never spend time out of the max clock setting.

tkaiser
Guest
tkaiser

> From looking at that file, it seems to never spend time out of the max clock setting.

Usually Hardkernel ships with cpufreq governor performance which results in slightly higher idle consumption and temperatures (with the C4 though negligible but maybe not on the ‘overclock’ cpufreq any more).

Depending on the use case and how often/long the thing will be idle I would switch to a different governor but no idea which one since I never touched any of those newer Amlogic thingies.

David Willmore
Guest
David Willmore

And here’s the run with the max clock increased: http://ix.io/2kaS

Willy
Guest
Willy

These results are very good. The memory benchmarks show how A55 was improved vs older cores such as A53. Look at the access times, they’re 1.5 times smaller even in dual-read than the N2’s.

tkaiser
Guest
tkaiser

> These results are very good

I’m eagerly awaiting new insights wrt your “build farm” use case: http://wiki.ant-computing.com/Choosing_a_processor_for_a_build_farm

Will you update anytime soon with S922X and S905X3 or whatever stupid combination of letters and numbers the SoCs in question have?

David Willmore
Guest
David Willmore

Ugg, the GUI came back on. Here’s max clock increased and GUI off: http://ix.io/2kbW

tkaiser
Guest
tkaiser

> Here’s max clock increased and GUI off

GUI or not doesn’t really matter with this type of CPU since many years unless some moronic screen saver running on the CPU kicks in. A different story would be to entirely disable the GPU if possible since sometimes memory bandwidth for CPU tasks increases and as such some numbers get better with headless use cases.

Your new results are more or less the same as your previous ones I added to sbc-bench results.

IMO it would be interesting how the board performs with 5.4/mainline instead of Amlogic’s BSP kernel. In case you give it a try with Armbian please check quickly as 1st step performance with armbianmonitor -z. If the reported 7-ZIP MIPS are below 5400 then Armbian settings are not ready yet (it seems performance optimizations aren’t a priority over there since some time).

David Willmore
Guest
David Willmore

Trying. Made the mistake of updating it once installed and it wouldn’t reboot. Seems something isn’t quite right for the c4 port. I’ve reimaged the uSD and rebooted. I’ll have results shortly.

David Willmore
Guest
David Willmore

Here’s the armbianmonitor -z output:
https://paste.centos.org/view/0266b52c

Looks slower. It seems they’re running at 1.5GHz, but the time_in_state shows:
1908000 27532

I’m running the whole test anyway.

tkaiser
Guest
tkaiser

> Looks slower. It seems they’re running at 1.5GHz

First step would be to adjust /etc/default/cpufrequtils and setting MAX_SPEED="2016000" there. And then the boot.ini tweak would be necessary too to achieve ‘overclocking’ as Hardkernel calls it 🙂

But no idea whether boot.ini is there or not…

David Willmore
Guest
David Willmore

Here’s the full run: http://ix.io/2kcM

looks like Armbian doesn’t have the temp stuff set up in a way that your script can detect it. Assuming it’s even enabled.

tkaiser
Guest
tkaiser

> Here’s the full run

Thank you. More or less same numbers at 1.9 GHz with mainline and Amlogic’s BSP kernel 🙂

Wrt temperature readings: in Armbian usually /etc/armbianmonitor/datasources/soctemp is a symlink to the sysfs node in question. Seems to not exist here. Same with IRQ/SMP affinity settings that can greatly improve performance with some ‘real world’ use cases. Not that much has happened over at Armbian within the last 18 months at /usr/lib/armbian/armbian-hardware-*.

David Willmore
Guest
David Willmore

Looks like thermal reporting isn’t enabled yet.
/etc/armbianmonitor/datasources/soctemp -> /sys/devices/virtual/thermal/thermal_zone0/temp
[email protected]:~# ls -la /sys/devices/virtual/thermal/thermal_zone0/temp
-r–r–r– 1 root root 4096 Apr 27 16:50 /sys/devices/virtual/thermal/thermal_zone0/temp
[email protected]:~# cat /sys/devices/virtual/thermal/thermal_zone0/temp
cat: /sys/devices/virtual/thermal/thermal_zone0/temp: Invalid argument

tkaiser
Guest
tkaiser

Just out of curiosity: could you share the output from armbianmonitor -u (will upload system information to ix.io)?

David Willmore
Guest
David Willmore

First here’s the ouptut of the benchmark on a nightly ‘Focal’ version of Armbian with a 5.6.y kernel: http://ix.io/2kvA

Here’s the armbianmonitor -u output: http://ix.io/2kvF

Oh, great, one of your haters showed up to moronically downvote anything you say.

tkaiser
Guest
tkaiser

Thank you for the output. So armbianmonitor -u is still broken but nobody cares and everything runs on cpu0 on newly added boards in Armbian but also nobody cares.

> one of your haters showed up to moronically downvote anything you say.

And always at the same time the most stupid comments on this blog get upvoted so I guess it’s a fan of theclownuk.

theguyuk
Guest
theguyuk

Could be worse could be the server room bell boy who wrote the hated Orange Pi software, then told people to buy the boards , without declaring his paid interest. The same moron who got booted from Armbian, and now insults them like a spoilt antention seeker.

Willy
Guest
Willy

It’s interesting to see that both 5.4.x and 5.6.x show significantly lower memset performance (5.15 GB/s vs 6.3 GB/s for 4.9.x). So I think that the Odroid kernel features a specific DDR driver or just uses a device tree with different memory timings.

tkaiser
Guest
tkaiser

> 5.15 GB/s vs 6.3 GB/s for 4.9.x

Yeah, that’s a difference not explainable by the 5% CPU clockspeed mismatch between Armbian/mainline and Hardkernel/BSP (I removed Armbian’s limitation to 1.5GHz few days ago in nightly builds so that at least 1.9GHz are now possible).

> I think that the Odroid kernel features a specific DDR driver or just uses a device tree with different memory timings

Could also be just a mismatch between bootloader and kernel. Clocking DRAM very low by default, then expecting the kernel to increase this later which a BSP kernel does but mainline not. At least with Rockchip/RK3328 it was this way: https://github.com/armbian/build/issues/1744

tkaiser
Guest
tkaiser

> [ 3918.110529] thermal cooling_device2: Failed to convert 2016000KHz for cpu 0 into a cdev state
Not sure what that means.

That’s the reason your C4 is limited to 1.9 GHz instead of 2.0 GHz. My result interpretation is awaiting moderation…

willy
Guest
willy

If you have an enclosure with it, it might be good to run the test with the board enclosed to check if it throttles or not.

David Willmore
Guest
David Willmore

Did you mean a case for the Pi4 or the C4? I won’t have a case for the C4. I’ll do both of them bare on a table. I can try them with various amounts of airflow later–or conversely, I can put them in a small cardboard box.

Willy
Guest
Willy

I meant both, but especially the C4 *if* you had the case. Otherwise it’s no big deal. I can’t get my VIM3L to throttle while running at 1.9 GHz with a tiny heat sink inside a plastic enclosure, but I haven’t run advanced tests.

PhilS
Guest
PhilS

I’d like to know whether it falls over if all 4 USB ports are populated.

David Willmore
Guest
David Willmore

‘falls over’?

tkaiser
Guest
tkaiser

Maybe it’s about consumption of USB connected consumers? Per USB3 port devices would be allowed to draw 5V/950mA, Hardkernel uses one load switch capable of 2.4A per two ports and recommends the C4 to be powered with 12V/2A.

Since the board itself barely consumes more than 5W with a 12V/2A PSU it should be possible to connect 4 board powered USB3 consumers without brown outs.

tkaiser
Guest
tkaiser

BTW: Thanks to BayLibre’s Neil Armstrong there are OS images based on kernel 5.4.35 also available: https://dl.armbian.com/odroidc4/ – might be interesting to compare Amlogic BSP with mainline kernel.

Advertisements