Jump to content

Rock64 CPU Overclock using cpufrequtils


AnythingIsFine

Recommended Posts

Hello,

 

I've followed the steps on the Rock64 Armbian download page to enable overclock on my Rock64 running Armbian Xenial 5.60 (rock64 4.4.124-rk3328), yet I can't seem to increase the CPU clock frequency.

I've also checked the Documentation-> Fine Tuning page where the same steps are listed.

 

Steps:
 

sed -i "s/MAX_SPEED=.*/MAX_SPEED=1510000/" /etc/default/cpufrequtils

systemctl restart cpufrequtils

 

I've checked the CPU frequency now and it looks like it's stuck at the default value.

 

Shouldn't the new CPU frequency now be listed as 1.51GHz by the below commands ?

 

rock64:~$ cpufreq-info -c 0
cpufrequtils 008: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to cpufreq@vger.kernel.org, please.
analyzing CPU 0:
  driver: cpufreq-dt
  CPUs which run at the same hardware frequency: 0 1 2 3
  CPUs which need to have their frequency coordinated by software: 0 1 2 3
  maximum transition latency: 68.0 us.
  hardware limits: 408 MHz - 1.30 GHz
  available frequency steps: 408 MHz, 600 MHz, 816 MHz, 1.01 GHz, 1.20 GHz, 1.30 GHz
  available cpufreq governors: conservative, ondemand, userspace, powersave, interactive, performance
  current policy: frequency should be within 600 MHz and 1.30 GHz.
                  The governor "ondemand" may decide which speed to use
                  within this range.
  current CPU frequency is 600 MHz.
  cpufreq stats: 408 MHz:0.00%, 600 MHz:94.66%, 816 MHz:0.00%, 1.01 GHz:0.00%, 1.20 GHz:0.00%, 1.30 GHz:5.34%  (285924)


 

pi@rock64:~$ sudo cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
408000 600000 816000 1008000 1200000 1296000
pi@rock64:~$ sudo cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
600000
pi@rock64:~$ sudo cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
1296000
pi@rock64:~$

 

 

I've found this post on the forum related to overclocking the Rock64, alas it does not specify the steps to increase the CPU frequency.

 

*** I am aware of the issues that CPU overclocking might bring, yet I am willing to test stability and share the results and I already have a heat sink and 5V fan in place.

*** I am using the official Rock64 PSU (5V DC at 3A).

 

Link to comment
Share on other sites

18 minutes ago, AnythingIsFine said:

Is it possible to update from Armbian Xenial to Bionic (kernel 4.4.162) or should I just re-flash the eMMC with Bionic ?


Possible, it might work, but it is not recommended.

Link to comment
Share on other sites

Hi, I'm using ARMBIAN 5.73 stable Ubuntu 18.04.2 LTS 4.4.174-rockchip64. It seems max clock for all cores is 1.51 GHz, however the output of cpufreq-info shows that 1.51 GHz is hardly used, despite CPU load at 100% (Plex media server transcoding), it sits for most of the time at 1.392 GHz.

Am I missing something? I tried also changing governor to "Performance", but this didn't help.

 

uname -a
Linux rock64 4.4.174-rockchip64 #6 SMP Sun Feb 10 10:43:16 CET 2019 aarch64 aarch64 aarch64 GNU/Linux

cat /sys/devices/system/cpu/cpu{0,1,2,3}/cpufreq/scaling_available_frequencies
408000 600000 816000 1008000 1200000 1296000 1392000 1512000
408000 600000 816000 1008000 1200000 1296000 1392000 1512000
408000 600000 816000 1008000 1200000 1296000 1392000 1512000
408000 600000 816000 1008000 1200000 1296000 1392000 1512000

cpufreq-info output:

Spoiler

christian@rock64:~$ cpufreq-info                                                                                                              
cpufrequtils 008: cpufreq-info (C) Dominik Brodowski 2004-2009
Per favore, comunicare errori e malfunzionamenti a cpufreq@vger.kernel.org.
analisi della CPU 0:
  modulo cpufreq-dt
  CPU che operano alla stessa frequenza hardware: 0 1 2 3
  CPU che è necessario siano coordinate dal software: 0 1 2 3
  latenza massima durante la transizione: 80.0 us.
  limiti hardware: 408 MHz - 1.51 GHz
  frequenze disponibili: 408 MHz, 600 MHz, 816 MHz, 1.01 GHz, 1.20 GHz, 1.30 GHz, 1.39 GHz, 1.51 GHz
  gestori disponibili: interactive, conservative, userspace, powersave, ondemand, performance
  gestore attuale: la frequenza deve mantenersi tra 600 MHz e 1.51 GHz.
                   Il gestore "interactive" può decidere quale velocità usare
                  in questo intervallo.
  la frequenza attuale della CPU è 1.39 GHz (ottenuta da una chiamata diretta all'hardware).
 statistiche cpufreq:408 MHz:0,12%, 600 MHz:10,68%, 816 MHz:0,08%, 1.01 GHz:0,38%, 1.20 GHz:0,27%, 1.30 GHz:0,02%, 1.39 GHz:88,38%, 1.51 GHz:0,06%  (2266)
analisi della CPU 1:
  modulo cpufreq-dt
  CPU che operano alla stessa frequenza hardware: 0 1 2 3
  CPU che è necessario siano coordinate dal software: 0 1 2 3
  latenza massima durante la transizione: 80.0 us.
  limiti hardware: 408 MHz - 1.51 GHz
  frequenze disponibili: 408 MHz, 600 MHz, 816 MHz, 1.01 GHz, 1.20 GHz, 1.30 GHz, 1.39 GHz, 1.51 GHz
  gestori disponibili: interactive, conservative, userspace, powersave, ondemand, performance
  gestore attuale: la frequenza deve mantenersi tra 600 MHz e 1.51 GHz.
                   Il gestore "interactive" può decidere quale velocità usare
                  in questo intervallo.
  la frequenza attuale della CPU è 1.39 GHz (ottenuta da una chiamata diretta all'hardware).
 statistiche cpufreq:408 MHz:0,12%, 600 MHz:10,68%, 816 MHz:0,08%, 1.01 GHz:0,38%, 1.20 GHz:0,27%, 1.30 GHz:0,02%, 1.39 GHz:88,38%, 1.51 GHz:0,06%  (2266)
analisi della CPU 2:
  modulo cpufreq-dt
  CPU che operano alla stessa frequenza hardware: 0 1 2 3
  CPU che è necessario siano coordinate dal software: 0 1 2 3
  latenza massima durante la transizione: 80.0 us.
  limiti hardware: 408 MHz - 1.51 GHz
  frequenze disponibili: 408 MHz, 600 MHz, 816 MHz, 1.01 GHz, 1.20 GHz, 1.30 GHz, 1.39 GHz, 1.51 GHz
  gestori disponibili: interactive, conservative, userspace, powersave, ondemand, performance
  gestore attuale: la frequenza deve mantenersi tra 600 MHz e 1.51 GHz.
                   Il gestore "interactive" può decidere quale velocità usare
                  in questo intervallo.
  la frequenza attuale della CPU è 1.39 GHz (ottenuta da una chiamata diretta all'hardware).
 statistiche cpufreq:408 MHz:0,12%, 600 MHz:10,68%, 816 MHz:0,08%, 1.01 GHz:0,38%, 1.20 GHz:0,27%, 1.30 GHz:0,02%, 1.39 GHz:88,38%, 1.51 GHz:0,06%  (2266)
analisi della CPU 3:
  modulo cpufreq-dt
  CPU che operano alla stessa frequenza hardware: 0 1 2 3
  CPU che è necessario siano coordinate dal software: 0 1 2 3
  latenza massima durante la transizione: 80.0 us.
  limiti hardware: 408 MHz - 1.51 GHz
  frequenze disponibili: 408 MHz, 600 MHz, 816 MHz, 1.01 GHz, 1.20 GHz, 1.30 GHz, 1.39 GHz, 1.51 GHz
  gestori disponibili: interactive, conservative, userspace, powersave, ondemand, performance
  gestore attuale: la frequenza deve mantenersi tra 600 MHz e 1.51 GHz.
                   Il gestore "interactive" può decidere quale velocità usare
                  in questo intervallo.
  la frequenza attuale della CPU è 1.39 GHz (ottenuta da una chiamata diretta all'hardware).
 statistiche cpufreq:408 MHz:0,12%, 600 MHz:10,68%, 816 MHz:0,08%, 1.01 GHz:0,38%, 1.20 GHz:0,27%, 1.30 GHz:0,02%, 1.39 GHz:88,38%, 1.51 GHz:0,06%  (2266)

 

CPU has heatsink and fan, temperature stays below 55 degrees C with 100% constant load.

Many thanks for your help.

 

Regards.

Christian

Edited by Christian_
added info
Link to comment
Share on other sites

I have a similar issue. My Rock64 doesn't seem to higher than 1296000Hz when 100% stressed using "stress -c 8 -t 60s &".

 

roy@rock64:~$ stress -c 8 -t 60s &
[1] 23003 stress: info: [23003] dispatching hogs: 8 cpu, 0 io, 0 vm, 0 hdd

roy@rock64:~$ cat /sys/devices/system/cpu/cpufreq/policy0/cpuinfo_max_freq
1512000
roy@rock64:~$ cat /sys/devices/system/cpu/cpufreq/policy0/cpuinfo_min_freq
408000
roy@rock64:~$ cat /sys/devices/system/cpu/cpufreq/policy0/cpuinfo_cur_freq
1296000

stress: info: [23003] successful run completed in 60s
[1]+  Done                    stress -c 8 -t 60s

 

Link to comment
Share on other sites

I've updated /etc/defaults/cpufrequtils accordingly:

# WARNING: this file will be replaced on board support package (linux-root-...)$
ENABLE=true
MIN_SPEED=408000
MAX_SPEED=1512000
GOVERNOR=ondemand

But no change. Still the CPU only goes up to 1296000Hz.

 

Update: now it works..! I had to restart the service:

sudo systemctl restart cpufrequtils

 

Link to comment
Share on other sites

I have just updated to the Armbian Buster legacy kernel 4.4.213-rockchip64  from kernel 4.4.192-rockchip64 using 'armbian-config' and noticed that the "/etc/default/cpufrequtils" is no longer present.

 

From what I saw, the "/etc/init.d/cpufrequtils" script which is still enabled at boot up is still configured to source the above mentioned file (line 58), otherwise the variables "GOVERNOR" is set o "ondemand" and "MIN_SPEED" and "MAX_SPEED" are set to 0 which translates to 408MHz and !.51GHz respectively.

From the script:

 

 24 # Which governor to use. Must be one of the governors listed in:
 25 #   cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
 26 #
 27 # and which limits to set. Both MIN_SPEED and MAX_SPEED must be values
 28 # listed in:
 29 #   cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
 30 # a value of 0 for any of the two variables will disabling the use of 
 31 # that limit variable.

 [...]

 57 if [ -f /etc/default/cpufrequtils ] ; then
 58     . /etc/default/cpufrequtils
 59 fi

 

Shouldn't the "/etc/default/cpufrequtils" be created automatically post kernel update?

 

P.S.

 

The documentation on the download page states using 'sed' to changed values which implies an existing file.

 

 

 

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