Jump to content

Amlogic still cheating with clockspeeds


tkaiser

Recommended Posts

TL;DR: the following is a simple summary of the issue:

 

  • Amlogic SoCs contain an own embedded microcontroller (Cortex-M3) used for controlling power and clocks
  • A proprietary and closed source firmware is loaded on the M3 at boot. This stuff is contained in the bl30.bin blob we have to include
  • This firmware controls the real clockspeeds, ignores what the cpufreq framework running in the Linux kernel wants and even reports back bogus clockspeeds (the kernel wants to set 1512 MHz, the M3 ignores this and sets 1416 MHz instead but the code returns faked 1512 MHz)
  • Various tests showed that this is not related to thermal protection but just to $something we currently don't understand and out of our control
  • Hardkernel are the only ones who managed to get a bl30.bin blob from Amlogic for their ODROID-C2 that does not cheat on us but honours the cpufreq framework, sets the wanted clockspeeds and also returns real and not faked cpufreq values. On all other Amlogic SBC situation is different

 

 

On 17.4.2018 at 3:35 PM, TonyMac32 said:

there is a thread here talking about that, the system is controlled via the trusted firmware, which is a closed source blob, and not always entirely honest

 

Talking about 'not entirely honest' when it's about bold lies is funny :)

 

It's some proprietary crap that controls DVFS on Amlogic SoCs (a bl30.bin BLOB loading some firmware on the embedded Cortex-M3 which controls DVFS/cpufreq on its own) and Hardkernel is the only vendor that got this BLOB from Amlogic in a way where the installation does not cheat on you. In case the BLOB does also DRAM initialization (most likely) it should be hard to exchange it between boards.

 

https://forum.armbian.com/topic/2138-armbian-for-amlogic-s912/?do=findComment&comment=43338 (S912 and S905X are both known to cheat on the Linux kernel. The cpufreq values are all faked. Most probably this does also apply to all S905 devices except ODROID-C2 since Hardkernel managed to get a fixed BLOB from Amlogic)

 

Link to comment
Share on other sites

On 17.4.2018 at 1:25 PM, JMCC said:

Cool. The main reason why I was asking is because I know that Hardkernel got to do real overclocking on the C2 up to 1.75 Ghz, and I haven't heard of anything like that for LePotato or Vim. So maybe that overclocking would also be possible in those other boards with Hardkernel's kernel.

Hardkernel either has access to the trusted firmware source for S905 or they have a custom blob generated from Amlogic with license to distribute that blob. For S905X, I have tested custom blobs that unlock the CPU frequency but I don't have license to distribute. S905X seem to be able to clock up to 1.68GHz but since Amlogic only guarantees chip to work correctly at 1.512GHz, I wouldn't bother trying to overclock since it's only a 10% boost for a lot more power and instability.

Edited by chwe
split from: https://forum.armbian.com/topic/6968-s905xwd-video-accelerationgpu-hw-multi-core-processing-support/
Link to comment
Share on other sites

3 hours ago, Da Xue said:

Hardkernel either has access to the trusted firmware source for S905 or they have a custom blob generated from Amlogic with license to distribute that blob. For S905X, I have tested custom blobs that unlock the CPU frequency but I don't have license to distribute. S905X seem to be able to clock up to 1.68GHz but since Amlogic only guarantees chip to work correctly at 1.512GHz, I wouldn't bother trying to overclock since it's only a 10% boost for a lot more power and instability.

Well, if it is at least *real* 1.512 GHz, and not a cheat, that would also be an improvement (stock amlogic blobs cheat with higher frequencies even without overclocking beyond 1.52, as it is proved here: 

 

)

Link to comment
Share on other sites

3 hours ago, Da Xue said:

For S905X, I have tested custom blobs that unlock the CPU frequency but I don't have license to distribute.

And how about S912, have you also been able to test it with a custom blob?

Link to comment
Share on other sites

40 minutes ago, JMCC said:

how about S912

 

This is an octa-core design made for TV boxes. IMO it's totally understandable that Amlogic does something equivalent to Intel's TurboBoost: reduce possible clockspeeds when all cores are in use. That way you end up with only 1.2 GHz when all 8 cores are busy. Given how DVFS works (increasing the VCore voltage a lot to provide laughable MHz boosts at the upper end of the DVFS scale) this is understandable both from a consumption and thermal point of view.

 

This is a TV box SoC made for clueless people (Android users who think 'higher number' is 'better number').

 

All that's necessary for S912 TV boxes to sell are some BS marketing numbers ('octa-core at 2GHz' confirmed by shitty tools like CPU-Z and Geekbench) and all that's necessary to let those S912 TV boxes work ok-ish is limiting the CPU cores to sane operational defaults. The way Amlogic implements it (controlling this stuff from a BLOB and let the kernel report only bogus numbers) allows for both.

 

Since all Android TV box SoC vendors play the same game I wouldn't call this cheating any more. It's just what a specific market demands (clueless people looking at irrelevant numbers instead of what's important)

Link to comment
Share on other sites

S912 is a good platform if used correctly. Especially for servers based on Khadas VIM2 models (they have a number of unique functions to work as a server). A bunch of Khadas Vim2 (server) + VIM1 or vim2 Lite (as a workstation), very promising.

I am deeply indifferent (as a user), as it is organized in the hardware execution. I care about the end result. I compared the overclocked S905 (up to about 1.6) and the s912 without overclocking (both models were equipped with a good cooling system). The output, and if s912 uses all 8 cores at a lower frequency, it gives a significantly better result when compiling or soft processing video output than overclocked 4 cores s905. If you compare the video output to s905 and s912 without libMali and without hardware decoding (note - hardware decoding and libMali work, these are different things). s912 cope with the 720p output, s905 - not doing (pay attention, hardware decoding and libMali the comparison is not used, all the work is done on the CPU). If you add only hardware decoding (without libMali), s912 - without problems produces a full - screen video 4K, and s905 - screen video 1080p (output 4K on s905, in this mode I did not check, maybe the same thing will work). In my opinion, the only problem at the moment for full - screen video output on S9xxx is to include the possibility of Using amlogic hardware decoding in standard programs. I have already tested the intermediate solution, but there is no time to implement it all in the finished product (Armbian image).

 

1 hour ago, tkaiser said:

All that's necessary for S912 TV boxes to sell are some BS marketing numbers ('octa-core at 2GHz' confirmed by shitty tools like CPU-Z and Geekbench) and all that's necessary to let those S912 TV boxes work ok-ish is limiting the CPU cores to sane operational defaults. The way Amlogic implements it (controlling this stuff from a BLOB and let the kernel report only bogus numbers) allows for both.

 

I won't speak for all manufacturers (especially since most TV boxes in S912 is really a junk, which should not communicate), but there are normal manufacturers who give the correct information.

https://www.khadas.com/vim

Link to comment
Share on other sites

3 hours ago, tkaiser said:

That way you end up with only 1.2 GHz when all 8 cores are busy.

That makes perfect sense. But, looking at the numbers in the post I quote, single-threaded tests also show that results don't scale proportionally with claimed frequency. I would expect, at least, the CPU to be able to reach the announced max speed when only one core is used (as is the case with Intel Turbo Boost, that you mentioned).

 

3 hours ago, tkaiser said:

Since all Android TV box SoC vendors play the same game

I'm not so sure. Rockchip SoC's perform as expected. Now, if you compare two SoC's released about the same time, as S912 and RK3399, both claim to use big.LITTLE arch, to have Mali 8xx, and a maximum clock speed of 2 Ghz. Even the Amlogic can have more punch for a non-expert user, since it is octa vs. hexa core.  But the fact is that simply the "little" cluster of RK3399 is faster than the "big" of S912, not to mention when the two A72 come into play, and so many other advantages that Rockchip offers both in the hardware as well as in software support. Of course, that means that RK3399 TV boxes are about 30% more expensive than S912. But then, Rockchip offers a low-cost SoC (RK3328), again announcing its real specs, not cheating. I only hope that Rockchip's strategy of offering honesty and quality pays them off with good sales, and so the example spreads.

 

 

3 hours ago, balbes150 said:

S912 is a good platform if used correctly. Especially for servers based on Khadas VIM2 models

I totally agree with that. I bought a Vim2, in spite of not liking much Amlogic, because I think Khadas is doing a great job with their products. The good points of Vim2 are countless, and make the board go far beyond a simple TV box.

Link to comment
Share on other sites

3 hours ago, balbes150 said:

In my opinion, the only problem at the moment for full - screen video output on S9xxx is to include the possibility of Using amlogic hardware decoding in standard programs. I have already tested the intermediate solution, but there is no time to implement it all in the finished product (Armbian image).

Let's see if when I get my Vim2, I can lend you a hand with HW acceleration under Armbian.

Link to comment
Share on other sites

8 hours ago, JMCC said:

That makes perfect sense. But, looking at the numbers in the post I quote, single-threaded tests also show that results don't scale proportionally with claimed frequency. I would expect, at least, the CPU to be able to reach the announced max speed when only one core is used (as is the case with Intel Turbo Boost, that you mentioned).

 

I'm not so sure. Rockchip SoC's perform as expected. Now, if you compare two SoC's released about the same time, as S912 and RK3399, both claim to use big.LITTLE arch, to have Mali 8xx, and a maximum clock speed of 2 Ghz. Even the Amlogic can have more punch for a non-expert user, since it is octa vs. hexa core.  But the fact is that simply the "little" cluster of RK3399 is faster than the "big" of S912, not to mention when the two A72 come into play, and so many other advantages that Rockchip offers both in the hardware as well as in software support. Of course, that means that RK3399 TV boxes are about 30% more expensive than S912. But then, Rockchip offers a low-cost SoC (RK3328), again announcing its real specs, not cheating. I only hope that Rockchip's strategy of offering honesty and quality pays them off with good sales, and so the example spreads.

 

 

I totally agree with that. I bought a Vim2, in spite of not liking much Amlogic, because I think Khadas is doing a great job with their products. The good points of Vim2 are countless, and make the board go far beyond a simple TV box.

S912 and RK3399 are not direct competitors. RK3399 cost twice as much as the S912 and has many more capabilities than the S912. Really apples and oranges. No one has really invested in the A7x series outside of the cell phone market other than Rockchip.

Link to comment
Share on other sites

22 minutes ago, Da Xue said:

S912 and RK3399 are not direct competitors. RK3399 cost twice as much as the S912 and has many more capabilities than the S912. Really apples and oranges.

That's my point. But Amlogic advertises some false specs about his SoC, that may cheat an unexperienced user into thinking that they are comparable. On the other hand, RK3328 and S905's are indeed direct competitors, but in this case false advertising makes it seems like Amlogic's is way superior. That caused, for example, many of the early buyers of Odroid C2, who thought they had gotten a board with a SoC capable of 2.0Ghz, that surpassed all the competitors by far, get really disappointed when they knew they had been cheated and it actually topped way below those 2Ghz.

 

I'm not criticizing Amlogic for not making SoC's as powerful as RK3299. I'm critizicing them for lying about the specs, and then making closed source binaries that report false frequencies, in order to support that lie. If there was anyone from Amlogic reading this, I'd tell them that those things only harm them in the long run, and they are completely unnecessary.  I think their SoC's are good for the mid-low range they are really aiming: CPU speed is not bad, thermal management is more than decent,  power consumption is very low, GPU performs fairly well, and VPU video decoding capabilities are excellent. They can present their SoC's as they really are, and given the affordable price they are still very interesting options. I think publishing false specs harms everyone: vendors, users and developers.

Link to comment
Share on other sites

3 hours ago, JMCC said:

That's my point. But Amlogic advertises some false specs about his SoC, that may cheat an unexperienced user into thinking that they are comparable. On the other hand, RK3328 and S905's are indeed direct competitors, but in this case false advertising makes it seems like Amlogic's is way superior. That caused, for example, many of the early buyers of Odroid C2, who thought they had gotten a board with a SoC capable of 2.0Ghz, that surpassed all the competitors by far, get really disappointed when they knew they had been cheated and it actually topped way below those 2Ghz.

 

I'm not criticizing Amlogic for not making SoC's as powerful as RK3299. I'm critizicing them for lying about the specs, and then making closed source binaries that report false frequencies, in order to support that lie. If there was anyone from Amlogic reading this, I'd tell them that those things only harm them in the long run, and they are completely unnecessary.  I think their SoC's are good for the mid-low range they are really aiming: CPU speed is not bad, thermal management is more than decent,  power consumption is very low, GPU performs fairly well, and VPU video decoding capabilities are excellent. They can present their SoC's as they really are, and given the affordable price they are still very interesting options. I think publishing false specs harms everyone: vendors, users and developers.

To be honest if they drive the chip at higher voltages like 1.3V like the Allwinner H3, I think they can hit 2GHz. However, power consumption, heat, and reliability become concerns. I think they originally tested at 2GHz and made all the marketing materials but had to scale back to make power consumption and other factors look pretty. Amlogic is pretty ahead of the curve in low cost quad-core A53 SoCs. We just started getting competitor chips last year which means Amlogic is almost 2 years ahead of the curve with S905.

Link to comment
Share on other sites

8 hours ago, JMCC said:

I'm not criticizing Amlogic for not making SoC's as powerful as RK3299. I'm critizicing them for lying about the specs, and then making closed source binaries that report false frequencies, in order to support that lie

 

The challenge they face is getting TV boxes sold in millions. It doesn't matter what you think, it doesn't matter what I think or anyone else from those few thousand people using Amlogic based SBC. We are 100% irrelevant.

 

It's all about how the TV box market works: Totally clueless Android users focussing on BS numbers (more cores, more MHz, more DRAM, not knowing that almost everything that's important inside a TV box does NOT run on the CPU cores, software video decoding being the only exception). For their market CPU clockspeeds are totally irrelevant when it's about real world performance, they only serve as marketing criteria. If the S912 running with 8 cores at 1000 MHz (of course thermally throttled since TV boxes are usually piles of crap wrt thermal design) is able to decode a specific video codec at a specific resolution: mission accomplished).

 

That's the 'SoC in action' reality: No one cares about clockspeeds here, it's only about getting the job done. Then there's the 'SoC in benchmarks and reviews' reality: AnTuTu, Geekbench, CPU-Z. Here it's important to show nice numbers but again since these benchmarks are soooooo crappy clockspeeds still don't matter. It's important to show fake cpufreqs (which is easy to accomplish since those tools like Geekbench or CPU-Z are that crappy that they never check for real clockspeeds but simply show the highest cpufreq OPP defined. Even without any 'firmware' cheating this is how Amlogic boxes ended up showing 2 GHz, how Allwinner devices limited to 1152 MHz show up with 1536 MHz, how RK boxes limited to 1.3 GHz are shown as '1,5 GHz' and so on).

 

Their target audience (clueless Android consumers) doesn't understand or care about what's performance relevant so all those TV box SoC manufacturers have to do is to provide SoCs that perform somewhat ok-ish in reality (which is a tough job given the 'race to the bottom' principle their market is affected by since people buy as cheap as possible ignoring that quality has a price and that good heat dissipation would require a more expensive enclosure) and show high BS numbers those clueless people are interested in (MHz).

 

And that's what Amlogic is doing and what the market demands. Those BS tools like CPU-Z or Geekbench could easily test within a second how high the CPU cores really clock but they prefer to be part of the more general cheating game and show only BS numbers (while it is pretty easy to perform such a test). And now some Linux users who want to use SoCs made for Android toys as Linux servers are disappointed. But why should Amlogic care? They have to sell millions of Android toys and not please a few Linux guys like us. Especially since focusing on CPU clockspeeds is so stupid (see all this laughable whining by ODROID-C2 users who 'felt' their boards being slower after community discovered that clockspeeds above 1.5GHz are faked. Their C2 performed identical before and after this discovery, it was just that some overclocking morons had their feelings hurt).

Link to comment
Share on other sites

On 20.4.2018 at 6:29 AM, Da Xue said:

For S905X, I have tested custom blobs that unlock the CPU frequency but I don't have license to distribute.

Nobody likes to be treated unfair. Can you tell us if there is an official Blob that at least reports real frequency ?

Link to comment
Share on other sites

21 hours ago, balbes150 said:

there are normal manufacturers who give the correct information. https://www.khadas.com/vim

 

The Khadas guys know that S912 is limited to 1200 MHz when more than 3 cores are busy but of course they prefer to hide this information since their target audience can't cope with. Which is understandable given SBC users focused on CPU clockspeeds instead of CPU performance are not the smartest people.

Link to comment
Share on other sites

2 minutes ago, tkaiser said:

 

The Khadas guys know that S912 is limited to 1200 MHz when more than 3 cores are busy but of course they prefer to hide this information since their target audience can't cope with. Which is understandable given SBC users focused on CPU clockspeeds instead of CPU performance are not the smartest people.

Didn't know that. S912 can only do 1.2GHz with 4 cores? That seems a little overboard in terms of false advertising. I would expect at least 1.5GHz for all four cores of the fast cluster at all times.

Link to comment
Share on other sites

3 minutes ago, Da Xue said:

Didn't know that. S912 can only do 1.2GHz with 4 cores?

 

You should know since I discovered this here and we talked about this already wrt S905X. Here is the summary: https://www.cnx-software.com/2017/11/08/khadas-vim2-board-review-part-1-unboxing-and-dual-tuner-board/#comment-548918 

 

The 'Gouwa' guy in the comment thread is an official person from Khadas (not helping to further diagnose the issue and now also part of the Amlogic cheating game)

Link to comment
Share on other sites

And BTW: It really doesn't matter for the 'TV box use case' (which is the only one Amlogic has to care of) whether their SoCs are artificially limited to lower clockspeeds when more cores are busy or whether thermal throttling does the same anyway.

 

Their challenge is making products for absolutely clueless people. The products these SoCs end up in (cheap TV boxes) can't be designed with good heat dissipation since those clueless people who should buy the boxes will never understand that a warm or even hot enclosure is something good: https://www.cnx-software.com/2017/11/08/khadas-vim2-board-review-part-1-unboxing-and-dual-tuner-board/#comment-548927 -- a TV box with a good thermal design moving the heat efficiently out of the enclosure gets negative ratings and won't be bought since... clueless people being the target audience of these devices.

 

TL;DR: If you as Linux guy want to use Android toys as hardware you have to accept Android rules (cheap consumer crap being the design principle). It's easy to choose appropriate hardware for any job but then (not so) surprisingly you pay a lot more.

Link to comment
Share on other sites

16 minutes ago, tkaiser said:

It's easy to choose appropriate hardware for any job but then (not so) surprisingly you pay a lot more.

 

BTW: Not always: those people who are for whatever reasons fascinated by 'as much CPU cores as possible' and love octa-core SoCs for no reason should better have a look at NanoPi Fire3: http://www.friendlyarm.com/index.php?route=product/product&path=69&product_id=206

 

Less expensive and faster than any Amlogic stuff (see Willy Tarreau's reviews -- he's the one who also discovered Amlogic cheating on us wrt clockspeeds 2 years ago)

 

And can now a moderator please split all the 'Amlogic still cheating with clockspeeds' stuff into an own thread with that title? Thanks and sorry for hijacking the original thread.

Link to comment
Share on other sites

2 hours ago, tkaiser said:

And can now a moderator please split all the 'Amlogic still cheating with clockspeeds' stuff into an own thread with that title? Thanks and sorry for hijacking the original thread.

done, maybe your first hijack post should also be here.. but it somehow good in both threads.. 

 

For me an more interesting point is that RPi hides 'all the magic' behind threadX, but we have somehow a similar situation with Amlogic when they only provide blobs for hardware responses/interaction.

 

Part of me thinks that people who buy by  >GHz=better performance deserves it to get cheated on, but from my more serious side... It's not the right thing to cheat on your customers.. Remember the shitstorm apple got for the clockdown of their older iphones when the battery got bad? It's not that it is the false thing to avoid that you users got fooled by a bad battery, but it's completely wrong to not inform your users that this happens. If the s912 can only reach 2GHz in a single core mode, I'm fine but lie to the customer is a shot in your own knee. It needs a lot of time to rebuild your reputation, probably not that much an issue for the 'cheap as hell' tv box, but in case you want to be one of the 'premium' TV-Box SoCs it gets problematic.  They have a nice SoC for TV boxes with a VPU which seems to be powerful enough for a lot of this use cases. So no need for cheating. 

 

3 hours ago, tkaiser said:

The challenge they face is getting TV boxes sold in millions. It doesn't matter what you think, it doesn't matter what I think or anyone else from those few thousand people using Amlogic based SBC. We are 100% irrelevant.

99.9% irrelevant.. :lol: (assuming that 'few' is in the same range than the multiple of millions) [/smartass mode off]. IMO the main reason you should care about linux users is that you also get free development from experienced kernel developers. E.g. Allwinner could rebase their android kernel on a mainline kernel where a lot of their SoCs features are properly mainlined and then add their 'crap' to have an enhanced recent kernel... I'm somehow fascinated that the linux-sunxi community is so patient in mainlining their SoCs even when AW showed multiple times that they don't care (I know they stopped to actively avoid people from contributing by sharing parts of the documentation but they could do it better without that much effort).. 

 

IMO the 'next' generation of TV boxes will combine something like TV-box (with recording function) and cheap home NAS with acceptable performance. People don't want to have multiple devices for such tasks, so at least USB3 or a sort of pci is a must, that's where I see the H6 in front of the current Amlogic SoCs (despite the fact that their PCI implementation seems to be 'broken by design' and I don't know how well their VPU stuff performs). The RK3328 seems to be developed with this use-cases in mind and might perform well. Imagine an adroid TV-Box with something like OMV working in the backgroud which can be configured through the gui or browser... I'm sure.. people would buy it.. :D If you have all the graphics/decoding stuff on the GPU/VPU, the CPU should be fine to handle some server tasks in the background without affecting UI and their applications that much. 

Link to comment
Share on other sites

3 hours ago, tkaiser said:

It doesn't matter what you think, it doesn't matter what I think or anyone else from those few thousand people using Amlogic based SBC. We are 100% irrelevant.

I wouldn't say so. It is true in the short term, but in the mid/long term the company's reputation plays an important role.  And the minority of experts who have earned respect through their work and contributions (e.g. you guys Armbian core developers) have an important impact in forming that reputation: their contribution spreads from specialized blogs and forums to more public-oriented informational webpages, youtubers, etc.. Of course not the details, but the general idea of "Company X makes excellent products" or "Company Y cheats in their specs and their products don't perform as expected". I'm not saying that the experts' opinion is the only factor for creating public opinion, but there is no doubt that it is an important factor. And marketing departments in the companies know it (or at least they should). 

 

Plus, engineers and engineering students read these specialized sites, and no engineer likes their work to be cut to pieces with research that proves it to have false specs, GPL violations, etc.. So they will think twice before doing the same thing again (or at least they should).

 

Of course, there will always be customers that only care for getting the cheapest device available. And there will also be enterpreneurs who only aim to make a "kiss and run" company, to get immediate benefits and don't care whether it disappears in two years from now. But there is still a big market niche for customers who care about quality, and companies who want to do a good job. Let me give you an example: If you look at recent TV boxes in Aliexpress, gearbest, etc., you see that many vendors put a big sticker on top of their Rockchip models with the Rockchip logo, but they don't do the same with other SoC manufacturers. That has to be for a reason: they know that logo has some appeal because of the good reputation of the company.

 

So, bottom line: I think developers and advanced users can do a lot to promote fair play and quality products, although of course there will always be difficulties.

Link to comment
Share on other sites

22 minutes ago, chwe said:

If the s912 can only reach 2GHz in a single core mode, I'm fine but lie to the customer is a shot in your own knee. It needs a lot of time to rebuild your reputation, probably not that much an issue for the 'cheap as hell' tv box, but in case you want to be one of the 'premium' TV-Box SoCs it gets problematic

 

The S912 is limited to 1.5 GHz with single threaded loads and way less with multithreaded CPU loads. For the very simple reasons that the device category targets absolutely clueless users (why is this so hard to understand?!). The difference between the two boxes below is simply that the upper one is made for people who know how heat dissipation works (it's ok or even great when the surface gets warm since this means heat is transported out of the thing) and the lower is bought by clueless people who want boxes that stay cool since they're clueless:

Difference.jpg

 

Amlogic produces SoCs that are stuffed in those cheap plastic boxes. And since good heat dissipation is limited or impossible due to clueless consumers the 'thermal budget' dictates clockspeeds anyway (throttling!). And also only due to their customers being absolutely clueless they can't promote such facts but have to create the impression that there are many many CPU cores inside running at high frequencies.

 

Since you mentioned 'premium' TV-Box SoCs: That's for example Broadcom STB SoCs like the BCM7271. Which CPU cores? ARM? MIPS? How many? Which clockspeeds? Nobody knows for sure since those things are put into boxes that are not bought by clueless consumers who want to base their decision on BS numbers but are given to TV consumers by broadband providers 'for free'. Nobody cares about technical details since these things just work. There's no need to cheat on consumers since consumers do not have to decide. And it's a pretty new phenomenon that those premium STB SoCs have more than one or two CPU cores. Since video decoding on the CPU is plain BS anyway!

 

 

Link to comment
Share on other sites

1 hour ago, JMCC said:

in the mid/long term the company's reputation plays an important role.  And the minority of experts who have earned respect through their work and contributions (e.g. you guys Armbian core developers) have an important impact in forming that reputation: their contribution spreads from specialized blogs and forums to more public-oriented informational webpages, youtubers, etc.

 

LOL!

 

It's now 5 months that I discovered S912 cheating wrt CPU clockspeeds as every other Amlogic SoC. What's the impact? None.

  • Why should the average Amlogic consumer care? That's TV box manufacturers selling to clueless Android users that trust in BS numbers presented by CPU-Z. They see 2 GHz and are happy.
  • Why should Amlogic care? It's those consumers that they have to keep happy and they are happy when they can tell their neighbour that their TV box has 8 cores running at 2 GHz while the neighbour's has only 4 cores 'at 1.5 GHz'. CPU clockspeeds are BS for the use case anyway so everything those clueless people care about are irrelevant numbers.
  • Why should Amlogic SBC users care? Well, they are in fact the only ones affected but if they would care about performance and not clockspeeds they would've known anyway (since then you test the performance and not rely on BS numbers like clockspeeds). It's stupid to think something that's rated for 2 GHz is faster than something else that's rated for 1.5 GHz (but that's what all those disappointed ODROID-C2 users thought)

And all of this including vendor reputation is completely irrelevant for their market. That's not Linux geeks and blog readers but clueless TV box consumers searching for the cheapest box possible that has best looking specs (many many CPU cores, high clockspeeds and all the other irrelevant BS that's irrelevant for the 'TV box use case' anyway. How many of those consumers know that video decoding happens on the VPU and gaming is the GPU's task? Exactly: none)

 

And all vendors in this market behave the same. Even Rockchip (only a few Rockchip SoCs are 'open sourced' but the majority not and there the same funny stuff happens of course)

Link to comment
Share on other sites

4 minutes ago, tkaiser said:

only a few Rockchip SoCs are 'open sourced'

Their latest products are. Give them time, they are moving in the right direction, and if we support it then we are encouraging them and others to continue that way.

 

8 minutes ago, tkaiser said:

It's now 5 months that I discovered S912 cheating wrt CPU clockspeeds as every other Amlogic SoC. What's the impact? None.

But, for example, when the cheating was first discovered for the S905 by some other developer (his name started with "W", I can't remember), then Hardkernel got Amlogic to give them binaries that unlocked the real CPU freq. Seems like the case of S912 has not produced the same good results, for now. Yeah, I get it, it has to be frustrating to put all the work in the research and see it does not make any difference.  I'm sorry.

Link to comment
Share on other sites

1 hour ago, chwe said:

IMO the 'next' generation of TV boxes will combine something like TV-box (with recording function) and cheap home NAS with acceptable performance.

 

This already happens. RealTek RTD1295 and RTD1296 devices do exactly this. They run an Android for the media stuff and an embedded OpenWRT for NAS stuff. No idea how it's done on the NAS boxes based on these RealTek SoCs.

 

Which kernel version and u-boot do they use? How performant are these boxes? Nobody cares since all that's relevant are whether these boxes do what they're advertised for and then some BS numbers like count of CPU cores and their clockspeeds that keep clueless NAS and TV box consumers happy.

 

RTD1296 will be used on BPi W2 and OPi R2. No idea whether we'll ever see sources for 'firmware', bootloader and kernel. No idea why anyone want to run Linux on devices that need such crap. But it clearly is absolutely irrelevant for RealTek as long as they think about their target audience (clueless people once again) who simply don't give a sh*t about all that stuff as long as the box does what it's advertised for (that's playing movies, doing some gaming and serving as a performant NAS thingy).

Link to comment
Share on other sites

16 minutes ago, JMCC said:

But, for example, when the cheating was first discovered for the S905 by some other developer (his name started with "W", I can't remember), then Hardkernel got Amlogic to give them binaries that unlocked the real CPU freq

 

Only some 'MHz fanatics' were really concerned. Or to be more precise: people who do not understand the difference between performance and clockspeeds and who also do not understand the challenges to run chips at high clockspeeds (both consumption and heat increase a lot). Again: https://www.cnx-software.com/2016/08/28/amlogic-s905-and-s912-processors-appear-to-be-limited-to-1-5-ghz-not-2-ghz-as-advertised/#comment-530956 (there you can also read what happened then in detail to get more control over clockspeeds on C2)

 

If I'm concerned about performance I need a use case first and then I test for performance with this use case (and don't rely on theoretical clockspeeds since this is plain stupid). That's what both Willy Tarreau and @willmore did unlike those people who for whatever reasons bought an ODROID-C2 instead of an RPi 3 due to '2 GHz' vs. '1.2 GHz' (those people exist en masse). So it was pretty obvious once that happened that an A53 'clocked at 2 GHz' performing like one clocked at 1.5 GHz is just that: limited to 1.5 GHz. So what? This is on those devices always the result of consumption and thermal constraints so why bother?

 

Since I mentioned 'use case' and Raspberry Pi 3:

  1. If you need the performance for a use case called 'AES encryption' (VPN, full disk encryption, stuff like that) then looking at clockspeeds is what? Plain stupid as usual! Both ODROID-C2 regardless of being able to clock at 2 GHz or just 1.5 GHz performs as crappy as the RPi 3. They both do not support ARMv8 Crypto Extensions and perform magnitudes slower than any cheap NanoPi NEO2 or Orange Pi Zero Plus running at below 1 GHz CPU clockspeed: https://forum.armbian.com/topic/4583-rock64/?do=findComment&comment=37829
  2. RPi 3 is the SBC with the most screwed up DVFS/cpufreq/clockspeed situation. The problem should be well known since 2015: an awful lot of RPi suffer from underpowering and run then frequency capped (limited to 600 MHz). But just like in situations when throttling is happening the kernel has not the slightest idea at which clockspeed the CPU cores are running and reports bogus values like 900 MHz on RPi 2, 1200 MHz on RPI 3 and 1400 MHz on RPi 3+ while in reality being limited to 600 MHz. Is this 'cheating' or at least a problem? Not when your target audience is only absolutely clueless people (RPi users). They're happy to achieve top clockspeeds only in idle and being limited to 600 MHz once performance would be needed and even start to complain once they are made aware of the real problem (seriously: check this link, it's unbelievable)

 

Link to comment
Share on other sites

Injection molded housing: cheap as hell when you produce enough

Aluminium/metal housing: not that cheap

 

As a premium tv box SoC, you either make a SoC which has high decoding capabilities with low heat generation or you force the tv-box makers that they do it properly (means higher housing costs due to metal cases)..  IMO there's a market for such devices either implemented in the TV or as a standalone box in addition. 

 

For the buy as cheap as possible fraction, you're right they buy by the bigger the better.. But as on other fields, there's a 'premium sector' where people care about things work properly and things get updated for a longer therm.. The only reason I would ever buy an Iphone again is the fact that I get a phone which is updated at least for the next 2 to 3 years... If you don't want to be a premium SoC supplier, fine cheat your customers sell it to every shitty TV-Box maker which doesn't give a fuck about updates and make your bucks there.. 

 

1 hour ago, tkaiser said:

And all vendors in this market behave the same. Even Rockchip (only a few Rockchip SoCs are 'open sourced' but the majority not and there the same funny stuff happens of course)

I guess, and that's just a guess that also their closed source SoCs benefit from the expertise they have now inside the company how to do it properly.. They might or might not cheat you with the closed source ones (I've no clue). But at least their in-house knowledge is grown. Google may switch to fuchsia to solve this problem with the shitty 'phone get's no update' situation or make it harder to install the google app store, e.g only if the SoC and the installed kernel fulfills some requirements. And google showed it on other fields that they can be harsh when they decide that something has to change (e.g Symantec in case of https). Mess up with google is for sure not fun for an SoC maker which is focused on android devices and I think google will use this power more and more to solve some of the issues they have. 

1 hour ago, tkaiser said:

Which kernel version and u-boot do they use? How performant are these boxes? Nobody cares since all that's relevant are whether these boxes do what they're advertised for and then some BS numbers like count of CPU cores and their clockspeeds that keep clueless NAS and TV box consumers happy.

People start to care when they realize that their dick pic collection isn't save anymore cause there's a security hole which makes your data accessible for others [^1]...  :lol::lol:

It's clear to me that the average user doesn't care what works behind the scenes/ opensourceness (as a 'windows for my daily tasks' -user, I'm also not part of the 'Stallman Church'). But more and more people are concerned about their data and how save they are... Solutions like home cloud, own cloud (whatever cloud which is not hosted by google or dropbox ) may get more attention.

Premium users may not pay attention to 'stupid specs' as long as the thing works the way work as they expect but they care about other things. Otherwise nobody would buy an macbook pro anymore cause from specs the xiaomi mi pro notebook throws every macbook in the bin, except display resolution (16gb ram, Samsung SSD + second m2 slot, i7-8550U and NVIDIA GeForce MX150 2GB for ~1000$) and it also looks 'somehow similar': :rolleyes:

Spoiler

P9110359.jpg

 

But your apple macbook pro does the things you want and you don't care about maximum performance as long as it performs well on OSX. From a homecloud/nas/tv-box thingie in the higher price range you expect that it performs well for tv streaming, a little bit of BS gaming and that your dick pics are save. The easiest way to achieve this is by don't have your box open to the internet (which makes it shitty for a streaming box with integrated cloud thingie) or you have a your code peer reviewed by others who care about security... And I think the cheapest way to peer review your kernel code is to have it mainlined.  You need developers which code properly (higher costs) so that your PRs are accepted by the kernel maintainers but you get a peer review for free (lowers costs).

In the science world where I'm involved you've to possibilities to get your results published. You can either pay a fee to the journal so that they do the peer review process for you (normally ~2000-3000$ per article) or they do it for free but then every reader has to pay a fee to read your article (and those fees are horrible high around 5-10$ for read once or 50$ to get a pdf)..  Or you publish it in a low reputation publication where nobody will notice your results... Free open access journals with a good reputation barely exists (and mostly they're part of a series where you have to pay for all their other journals)... 

 

 

[^1]:

Spoiler

 

 

 

Edit: Maybe we should rename the topic again, moving it to General chit chat? Cause It's hijacked again for a lot of other stuff... :P 

Edited by chwe
Link to comment
Share on other sites

On 21.4.2018 at 3:59 PM, chwe said:

I guess, and that's just a guess that also their closed source SoCs benefit from the expertise they have now inside the company how to do it properly.. They might or might not cheat you with the closed source ones (I've no clue). But at least their in-house knowledge is grown.

 

Expertise? Knowledge? You were talking about Rockchip now but what should've changed? Still their target audience are absolutely clueless people who buy numbers. Rockchips' customers (TV box makers) have to advertise their boxes with BS numbers (1.5 GHz and stuff like that), those tools used for reviews (CPU-Z, Geekbench and so on) have to report these BS numbers too and how high the CPU cores clock in reality is something entirely different (and irrelevant anyway! Why does no one get this? These boxes all have crappy thermal design so why does anyone expect el cheapo SoCs performing great in shitty plastic boxes?)

 

Anyway: if you want to change something wrt Amlogic here (for whatever reason) you need to make some noise. The thread title here is absolutely useless (I proposed 'Amlogic cheating' for a reason) and it's rather useless to further discuss this stuff here. Hardkernel got some pressure by the 'MHz fanatics' who are too stupid to differentiate between performance and clockspeeds. If you want the same happen now with S912 you need to go to Khadas and annoy them about their flagship product Vim2 only running at 1.2 GHz when multi-threaded performance is needed.

Link to comment
Share on other sites

4 hours ago, tkaiser said:

If you want the same happen now with S912 you need to go to Khadas and annoy them about their flagship product Vim2 only running at 1.2 GHz when multi-threaded performance is needed.

 

In case anyone with access to the hardware (be it a Vim2 or any other S912 device) wants to help with checking the issue: http://forum.khadas.com/u/tkaiser/activity/replies

Link to comment
Share on other sites

5 hours ago, tkaiser said:

Expertise? Knowledge? You were talking about Rockchip now but what should've changed?

The code quality, at least their BSP kernel gets updates on a regular basis. I don't know if they cherry pick patches from upstream or if they merge more or less everything which doesn't have conflicts with their BSP code (I hope for the second, but I guess it's the first.. :P ). Don't get me wrong.. There are for sure a lot of shitty RK driven TV-boxes on the market, but at least, their kernel source would allow to produce a 'premium products' with a regularly updated system. And for the geeks, @JMCC has demonstrated that it should be possible do produce a tv-box based on linux with a decent quality. 

 

6 hours ago, tkaiser said:

and irrelevant anyway! Why does no one get this? These boxes all have crappy thermal design so why does anyone expect el cheapo SoCs performing great in shitty plastic boxes?

For me, it doesn't matter if the box throttles as long as it does it's job. I'm really not interested if my box runs at 1.8GHz or 1.2GHz or whatever the box runs. The box should report a correct clockspeed and it should perform well for the job it is advertised.. For a TV box this means all the codecs which are used (I've no clue what codecs are important for Kodi, Youtube and the famous streaming services). If you mix this with NAS/cloud ability, security updates are important too. A proper thermal design is important to the point that it performs well for the things the box is advertised for.. When people start to do other things with this box for which it is not advertised, nobody should complain that it doesn't work well (for a use case nobody advertise this box). 

There's a difference between reporting false cpu freq. and having a TV-box which throttles down when it's on a high CPU load but it performs well for the multimedia stuff it is advertised for. When they decide that they build a TV-box with attached NAS capability, the thermal design might be more important cause 'the NAS part' of your device needs a bit more CPU power than the TV-box part. 

Similar counts for my NAS (HC1 with OMV image). I trust that hardkernel is able to deliver a decent hardware, cause from the reviews I read they understand somehow what's important for this use-case, I trust you and the OMV devs that you and they care about appropriate settings in terms of security and performance and the price is good for what I expect from such a device (the NAS is used as part of a backup solution to be sure that in case my old notebook decides to don't work anymore I don't lose all my data or pay a lot of money for a data recovery). I don't have a SSD inside to get the maximum performance out of it, cause I simply don't care about max. performance. In case I need max. performance I might go for a ARM SoC with native SATA and a fast SSD but cause this is not my use-case, the HC1 with a WD-red seems to be a good solution for me. I might be wrong and get fooled in the future but that's with every product you buy.

 

6 hours ago, tkaiser said:

Anyway: if you want to change something wrt Amlogic here (for whatever reason) you need to make some noise. The thread title here is absolutely useless (I proposed 'Amlogic cheating' for a reason) and it's rather useless to further discuss this stuff here.

I'm not a native english speaker (therefore I might use unappropriated words for describing things), but in this case, I think I choose a title for which I can stand for. Communication in those days are driven by Buzzwords (e.g. fake-news, witch hunt etc.). For me, faulty describes the situation correct to my knowledge. If someone wants to call it cheating' or whatever word he uses, feel free. I might use your post as first one, so that you could decide how the thread is named. That said, it might be a wrong decision and I'm open to change that but I'll not change the topic name to cheating, that're not the words I stand for. 

 

From the 'specification parameters' visible on amlogics webpage the S912 is called a:

Quote

CPU:

Octa-core 64-bit ARM® Cortex™-A53

and the S905X is called a:

Quote

CPU:

Quad-core 64-bit ARM® Cortex™-A53

 

With no description about clockspeed (maybe to avoid a court case - no idea). In case they report wrong clockspeeds due to the blobs which are delivered by AMlogic it's IMO absolut okay to call them cheater or whatever word you want to use (IMO faulty describes it good too, but everyone should use the wording he's fine with). In case boards with AMlogic SoCs are advertised as 2GHz devices and can't deliver the 2GHz you should IMO blame the boardmaker for false advertising first, and if it's due to a faulty blob from AMlogic you can blame them too cause they're involved in the process which ends in that false specification. It's neither my field of expertise nor interest nor do I have a device to check what a *random S912/905X* reports as clockspeed and what's the real clockspeed. From what I see I can only say that there's no clockspeed specified on their weppage and I saw no official document which advertises their SoCs are capable for clockspeeds up to 2GHz. Doesn't mean that such a document doesn't exist or that their blob works correctly. I simply don't know and I've minor interest to figure it out cause my interest in AMlogic SBCs are minor at the moment.

I think in a buzzword driven world we should take care who we blame and be sure that they deserve it.

  • The blob delivers faulty clockspeeds to the kernel: Blame AMlocic and everyone is free to push them to 'do it right'.
  • Random S912/905X tv-box/ SBC doesn't deliver the clockspeed which is advertised and the blob works correct: blame the boardmaker for it
  • SBC doesn't deliver the advertised clockspeed and the blob works incorrect: blame both, AMlogic for an incorrect working blob and the boardmaker for not doing their job to check that their devices can deliver what they claim it can. 
Every one makes mistakes, some of them are driven by marketing, some of them are driven by "I didn' know it better", "didn't care about it", "though it's not relevant" etc. I'm fine with mistakes, I do a bunch of them, I've a problem if a company does mistakes and they know it better (in case their blob reports false clock speeds, I expect that their software engineers should know it better and therefore AMlogic deserves the blame for doing it wrong). But me, having no expertise, no device and minor interest is the wrong person doing that and cause I was in a good mood when I splitted those threads I decided to name it faulty and not cheating' (I might named it different in case I'm an owner of such a device, or being pissed off during the time I splitted the thread).
Link to comment
Share on other sites

9 hours ago, tkaiser said:

Why does no one get this? These boxes all have crappy thermal design so why does anyone expect el cheapo SoCs performing great in shitty plastic boxes?

Yes, we've gotten it! :) As a matter of fact, I was able to lay my hands on a S912 box about a month ago, opened it and noticed it had some kind of fuzzy cardboard in the inner side of the top cover. I realized it would do very little to improve thermal dissipation, and thought it was either a design flaw or a way to save money with a cheap material. But after your remarks, I realize that maybe it was there on purpose, to prevent the top cover from feeling hot when you touch it.

 

5 hours ago, tkaiser said:

In case anyone with access to the hardware (be it a Vim2 or any other S912 device) wants to help

I'll do it when I get my Vim2, G.w..

 

9 hours ago, tkaiser said:

If you want the same happen now with S912 you need to go to Khadas and annoy them about their flagship product Vim2

Good idea. I wouldn't say "annoy them", but at least "strongly express my concerns". I also put it in my to-do list after getting my device.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines