When I compared the performance Amlogic S905 and Rockchip RK3368 processors last year, I noticed Amlogic S905 single thread performance not being much faster than the one of Rockchip RK3368, despite the former allegedly clocked at 2.0 GHz against the latter 1.2 GHz. But early this month one member (koschi) on ODROID forums started a thread entitled “No performance difference between 1.5, 1.75 & 2GHz” about ODROID-C2 board.

The first post link to Ant-computing website about choosing a processor for a build farm, and one of the tables comparing various ARM and x86 processors with the claim that Amlogic S905 was listed to 1.536 GHz, because “the device claims to run at 2.016 GHz but the kernel silently ignores frequencies above 1.536 GHz!”

So koschi did his own tests with 7z and sysbench, using cpufreq-set -u $FREQ to set a fixed frequency between test, and could confirm the issue:



7z b, total MIPS kHZ MIPS 100000 221 250000 605 500000 1252 1000000 2488 1296000 3182 1536000 3705 1752000 3691 2016000 3682 avg. of 3 x sysbench --num-threads=4 --test=cpu run kHZ seconds @4threads seconds @1threads 1 2 3 4 5 6 7 8 9 10 11 12 13 7z b , total MIPS kHZ MIPS 100000 221 250000 605 500000 1252 1000000 2488 1296000 3182 1536000 3705 1752000 3691 2016000 3682 avg . of 3 x sysbench -- num - threads = 4 -- test = cpu run kHZ seconds @ 4threads seconds @ 1threads



So it looks like Amlogic is cheating with the frequencies, and anything above 1.536 GHz does not change the results… There has been many comments in the thread with others confirming the issue. Hardkernel investigated the issue, and the answer while truthful is disappointing:

Please don’t waste your valuable time.

All the Coretex-A53 based Amlogic SoCs have the same issue. S905, S905 Rev-C(S905H), S905X and even S912.

The kernel clock frequency 1.75 and 2Ghz do not exist in the BL3x blobs.

It must be Amlogic’s fault. But we should detect it earlier in our internal development stage. Really sorry about that mistake. We’ve been modifying/testing the BL3x code to find a maximum feasible/stable clocks like 1.53Ghz, 1.58Ghz, 1.61Ghz, 1.65Ghz, 1.68Ghz, 1.71Ghz, etc for a couple of weeks.

But 1.65Ghz seems to be the maximum one due to some power and heat issues. We will run the burnA53 on Ubuntu and the Stress app on Android with 10 set of C2 boards in this weekend (for 48 hours stability test) to make sure it.

Once we will have a test result, we will report it on this thread with update package for further sampling test in early next week. If we disable two cores, the SoC can run up to 1.75Ghz probably. But we need further stability test too.

And yes. I fully agree most people don’t like this approach. Anyway, we know well 1.65Ghz or 1.75Ghz is still very far from the 2Ghz. So we will change the C2 specification in our home page next week as per the test result.

And we must consider some compensation for C2 users. But we need to check what we can do first. Please accept my sincere apologies for the mistake and kindly understand our situation.

The only good news is that the limit might not be 1.5 GHz, and possibly closer to 1.7 GHz, with the final number pending Hardkernel burn-in test results. That issue will not only affect ODROID boards, but also any other devices based on Amlogic S905, S905X, and S912 processors.

Thanks to Tim for the tip.