login|Register
Forum > Debian
Post|
看217612|回51|Favorite
bronco 看全部
2015-11-19 19:10:28

quote:

barquerito replied at 2015-11-19 15:00
You learn something new every day!

:-)

While you can specify clockspeeds for all cores by adjusting cpu0 this won't help since it's about dvfs (dynamic voltage frequency scaling).

If you clock components higher they need more voltage to operate reliable. The more voltage you feed, the hotter the stuff gets. And this increase in temperature is not linear but you increase voltage a little and the whole thing gets hot a lot more. Since I'm an electric NOOB better read this as an explanation: https://olimex.wordpress.com/201 ... -way/#comment-20385

That's what dvfs is for: You define operating points with combinations of core voltage and clockspeeds that are known to work reliable. Less voltage: less heat, longer lifespan.

The fex files common on H3 based Orange Pis seem to define just 2 operating points: 1.53GHz @ 1.5V and 1.2GHz @ 1.3V. Since I don't own an H3 device I can not tell whether that means that if the H3 is clocked down to eg. 480 MHz it still operates at 1.3V or not (at 480 MHz it could also work reliable at a much lower voltage like 1.04V for example). This would be interesting to test since it might avoid thermal issues and increases lifespan.

But this cpufreq approach has a drawback. Compare with the 'race to idle' concept outlined here: http://linux-sunxi.org/Cpufreq#The_.22performance.22_governor

When my Orange Pi PC arrives I will dig a bit deeper. Currently I prepare an RPi-Monitor template for the H3 to be able to visualize relationships.
bronco 看全部
2015-11-19 19:24:46
Edited by bronco at 2015-11-19 19:35

Thx to loboris and whitebox! They provided a few benchmark numbers for different CPU/DRAM clockspeeds.

Prerequisits: [sudo apt-get] install sysbench p7zip-full mbw

sysbench --test=cpu --cpu-max-prime=20000 run --num-threads=4
7za b
mbw -t0 256
mbw -t1 256
mbw -t2 256

4 tests: The 1st and 2nd with 1.53 GHz cpufreq and DRAM clocked with 672 MHz, in the left row with heatsink and fan and without thermal throttling, in the 2nd row without a heatsink and with throttling occuring, in the 3rd and 4th row no throttling occured, one time with 1.2 GHz cpufreq and 600 MHz DRAM, the right row showing 1008 MHz cpufreq and 480 MHz DRAM:

code:

  1.                             1.53/672    1.53/672     1.2/600     1.0/480
  2. sysbench (less is better):    123.3       183.7       154.5       184.6
  3. 7-zip (more is better):        2774        1924        2125        1795
  4. mbw -t0 (more is better):       396         407         344         264
  5. mbw -t1 (more is better):       756         769         500         415
  6. mbw -t2 (more is better):       718         633         627         459


Since I don't want to use a fan with any 'energy efficient ARM device' it's already obvious how to adjust dfvs values and DRAM clockspeeds: maximum 1008/480 MHz with lower voltage. The sysbench results of the overclocked system (2nd row: 1.53 GHz CPU and 672 MHz DRAM) without heatsink and the one with sane values are the same. And since the sort of applications I use do not depend that much on memory bandwidth the decrese there is fine and worth the efforts (no heat issues any more)
phreon 看全部
2015-11-19 23:55:03

quote:

Since I don't want to use a fan with any 'energy efficient ARM device' i


A 12V CPU fan draws about .1 amp or 1.2 watts. If you plug it into the 5V pin on the OP PC you will draw .5 watts. For that .5 watts I have lowered my cpu temp 40 to 50 degrees F. You use an additional 1/2 watt but you gain stability and part longevity.
Just saying.
P
bronco 看全部
2015-11-20 00:11:20
Edited by bronco at 2015-11-20 00:14

quote:

phreon replied at 2015-11-19 23:55
You use an additional 1/2 watt but you gain stability and part longevity

Unfortunately you draw the wrong conclusions. Better heat dissipation does NOT lead to "part longevity" and if it's necessary to have a fan to increase stability then there's something really wrong.
The H3 doesn't overheat 'by design'. It's due to default settings on all Orange Pi OS images being 'broken by design'. Your devices run at insane high clockspeeds and voltages. This is what

  • negatively impacts the SoC's lifespan
  • corrupts data from time to time
  • leads to stability issues without active cooling
  • increases consumption needed
  • increases temperatures


By adding a fan you adjust symptoms but you don't solve the problem. The latter would mean: Accept that the H3 is an '1 GHz SoC', clock the DRAM with 480 MHz and the CPU cores with 1200 MHz max. And by defining additional operating points in the so called fex file the SoC will lower the voltage needed down to 0.96V when idle instead of 1.3V as it's now. You will lower both temperatures and consumption dramatically while loosing also a bit 'peak performance'. But who needs the latter? The H3 is an ultra-slow Cortex-A7 design. If you want something that's both fast and energy efficient you would've to choose Cortex-A72 or A35 these days. But driving an A7 design the way it is now on the H3 based Orange Pis is neither energy efficient nor performant.

bronco 看全部
2015-11-20 15:49:20
Edited by bronco at 2015-11-21 18:50

To get a clue why the H3 is so slow I compared with one popular older Allwinner SoC: The A20 used on Orange Pi and Orange Pi Mini.

The A20 has only 2 Cortex-A7 cores instead of 4. The clockspeeds used were conservative (960 MHz cpufreq, 432 MHz DRAM). In the left row loboris' setup with heatsink and fan (1.53GHz/672MHz), in the middle row a more sane approach (1008MHz/480MHz) contributed by whitebox and on the right the Banana Pi with A20:

code:

  1.                          H3 overclocked     H3         A20
  2. sysbench (less is better):    123.3       184.6        371
  3. 7-zip (more is better):        2774        1795        924
  4. mbw -t0 (more is better):       396         264        305
  5. mbw -t1 (more is better):       756         415        590
  6. mbw -t2 (more is better):       718         459        586


If you use the sysbench scores to get a rough 'per core' comparison

code:

  1. 123.3 * 1.536   = 189.388
  2. 184.6 * 1.008   = 186.076
  3. 371 / 2 * 0.960 = 178.080


Please remember: less is better, therefore the A7 cores in the H3 perform slower at the same clockspeed than compared to the A20. And if we have a look at the mbw scores maybe there we find the culprit. The A20's RAM config was 432 MHz while the H3's was 672 and 480 instead. Since we're talking about DDR RAM (Double data rate) I would believe on the H3 the multiplicated values are used. So in reality it's not 672/480 MHz but 336/240 MHz instead and the H3's memory controller really sucks)

But there might be another explanation for low memory throughput: It might make a difference which display settings have been used while testing and "headless vs. GUI": http://linux-sunxi.org/Optimizin ... ution_graphics_mode (to be confirmed -- I'm looking forward to give this a try when my Orange Pi PC arrives)

OrangePi En

Powered by Discuz! X3.4

homepage|Simple edition|Touch edition|PC