From Clockwork GameShell
Jump to navigation Jump to search

Core Modules

Model CPU Microarchitecture Frequency Cores GPU RAM
A-0401 ARM64-bit Quad-core Cortex-A53 1.8GHz 4 Mali-T720 1GB LPDDR3
A-0402 ARM64-bit Quad-core Cortex-A53 1.8GHz 4 Mali-T720 2GB LPDDR3
A-0602 ARM64-bit Dual-core Cortex-A72
ARM64-bit Quad-core Cortex-A53
6 Mali-T864 2GB LPDDR3
A-0604 ARM64-bit Dual-core Cortex-A72
ARM64-bit Quad-core Cortex-A53
6 Mali-T864 4GB LPDDR3
RPI-CM3 ARM64-bit Quad-Core Cortex-A53
(Raspberry PI CM3+ LITE)
1.2GHz 4 VideoCore 4 1GB LPDDR3

DevTerm A-06 core CPU frequency scaling

from yong on the clockwork forums

The DevTerm A-06 core modules have 6 processor cores, arranged in ARM big.LITTLE 3 heterogeneous computing architecture, combining relatively battery-saving and slower processor ( LITTLE : #0, #1, #2, #3 ) cores with relatively more powerful and power-hungry ( big : #4, #5) ones. You could have to option to turn on or off any core at any time according to your own computing needs.

For example, the command to turn on core #5 is:

   sudo sh -c "echo 1 > /sys/devices/system/cpu/cpu5/online"

the command to turn off core #0 is:

   sudo sh -c "echo 0 > /sys/devices/system/cpu/cpu0/online"

The result could be verified with htop command.

In addition, user could simply use a tool called cpupower-gui to configure core frequency and CPU scheduling governor: performance, powersave, or schedutil and conservative. While powersave mode aggressively keeps CPU cores running at the lowest frequency, the performance mode always run in highest frequency. schedutil and conservative will automatically adjust CPU frequency according to application requirement, to achieve the balance between power-saving and performance. That means, if you like, under extreme situations, the A-06 core module could be run either with only one LITTLE core at 408MHz, or with all six cores at 1416MHz. There is ample room in between for fine-tuning and dynamic controls. e.g. Android users love schedutil mode for its efficiency, for details about scaling and different scaling governors, please refer to:

Similarly, A-06 GPU frequency and scheduling could be configured by setting: /sys/devices/platform/ff9a0000.gpu/devfreq/ff9a0000.gpu/

By default, the A-06 core modules are set to run on 4 cores, with conservative scaling governor, at 408-1000MHz.

You could play with these frequency scaling parameters according to your specific application needs. For example, with these following commands, the A-06 core could achieve potentially better power management than CM3.

   echo schedutil > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor
   echo 800000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
   echo 800000 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq
   echo 0 > /sys/devices/system/cpu/cpu2/online
   echo 0 > /sys/devices/system/cpu/cpu3/online
   echo simple_ondemand > /sys/devices/platform/ff9a0000.gpu/devfreq/ff9a0000.gpu/governor
   echo 400000000 > /sys/devices/platform/ff9a0000.gpu/devfreq/ff9a0000.gpu/max_freq