Difference between revisions of "NVIDIA Jetson Orin/JetPack 5.0.2/Performance Tuning/Set Values Manually"

From RidgeRun Developer Connection
Jump to: navigation, search
m
m
 
Line 27: Line 27:
 
cpu11
 
cpu11
 
</pre>
 
</pre>
 
  
 
Make sure to replace <cpu#> with one of the CPU devices available in your system, for instance, cpu4.
 
Make sure to replace <cpu#> with one of the CPU devices available in your system, for instance, cpu4.
 
  
 
===Check the state of a CPU===
 
===Check the state of a CPU===
Line 38: Line 36:
 
cat /sys/devices/system/cpu/<cpu#>/online
 
cat /sys/devices/system/cpu/<cpu#>/online
 
</syntaxhighlight>
 
</syntaxhighlight>
 
  
 
===Turn on a CPU===
 
===Turn on a CPU===
Line 46: Line 43:
 
sudo sh -c "echo 1 > /sys/devices/system/cpu/<cpu#>/online"
 
sudo sh -c "echo 1 > /sys/devices/system/cpu/<cpu#>/online"
 
</syntaxhighlight>
 
</syntaxhighlight>
 
  
 
===Turn off a CPU===
 
===Turn off a CPU===
Line 54: Line 50:
 
sudo sh -c "echo 0 > /sys/devices/system/cpu/<cpu#>/online"
 
sudo sh -c "echo 0 > /sys/devices/system/cpu/<cpu#>/online"
 
</syntaxhighlight>
 
</syntaxhighlight>
 
  
  
Line 71: Line 66:
 
sudo sh -c "echo 1 >  /sys/devices/17000000.ga10b/enable_3d_scaling"
 
sudo sh -c "echo 1 >  /sys/devices/17000000.ga10b/enable_3d_scaling"
 
</syntaxhighlight>
 
</syntaxhighlight>
 
  
 
==Change CPU Frequency==
 
==Change CPU Frequency==
Line 107: Line 101:
 
Where CPU_FREQ must be among the values in
 
Where CPU_FREQ must be among the values in
 
<code>/sys/devices/system/cpu/$CPU/cpufreq/scaling_available_frequencies</code>
 
<code>/sys/devices/system/cpu/$CPU/cpufreq/scaling_available_frequencies</code>
 
  
 
==Change GPU Frequency==
 
==Change GPU Frequency==

Latest revision as of 14:16, 17 August 2023



Previous: JetPack 5.0.2‎/Performance Tuning/Evaluating Performance Index Next: JetPack 5.0.2/Performance Tuning/Tuning Power


Nvidia-preferred-partner-badge-rgb-for-screen.png





This section provides information on how to manage the number of active CPUs and the CPU, GPU, and External Memory Controller frequencies.


Manage CPU State

The Orin will always boot from one CPU denominated the master CPU which cannot be turned off. All other CPUs can be turned off. The CPUs are listed in the directory /sys/devices/system/cpu/ of your Orin AGX, as shown in the following example:

nvidia@ubuntu:~$ ls -v /sys/devices/system/cpu | grep cpu[0-9]
cpu0
cpu1
cpu2
cpu3
cpu4
cpu5
cpu6
cpu7
cpu8
cpu9
cpu10
cpu11

Make sure to replace <cpu#> with one of the CPU devices available in your system, for instance, cpu4.

Check the state of a CPU

To check CPU state run the following command:

cat /sys/devices/system/cpu/<cpu#>/online

Turn on a CPU

Run the following command to turn on a slave CPU:

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

Turn off a CPU

Run the following command to turn a slave CPU off:

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


3D Frequency Scaling

Frequency scaling allows the Tegra to change the CPU frequency according to the load in order to reduce power consumption, 3D frequency scaling is enabled by default.

Disable

To disable 3D frequency scaling run the following command:

sudo sh -c "echo 0 >  /sys/devices/17000000.ga10b/enable_3d_scaling"

Enable

To enable 3D frequency scaling run the following command:

sudo sh -c "echo 1 >  /sys/devices/17000000.ga10b/enable_3d_scaling"

Change CPU Frequency

To print the CPU lower boundary, upper boundary, and current frequency run the following commands:

CPU=cpu1 #The number can be changed
cat /sys/devices/system/cpu/$CPU/cpufreq/cpuinfo_min_freq
cat /sys/devices/system/cpu/$CPU/cpufreq/cpuinfo_max_freq
cat /sys/devices/system/cpu/$CPU/cpufreq/cpuinfo_cur_freq

To change the CPU upper boundary run the following command:

CPU_FREQ=115200
CPU=cpu1 #The number can be changed
sudo sh -c "echo $CPU_FREQ > /sys/devices/system/cpu/$CPU/cpufreq/scaling_max_freq"

To change the CPU lower boundary run the following command:

CPU_FREQ=2265600
CPU=cpu1 #The number can be changed
sudo sh -c "echo $CPU_FREQ > /sys/devices/system/cpu/$CPU/cpufreq/scaling_min_freq"

To set the static CPU frequency run the following commands:

CPU_FREQ=2265600
CPU=cpu1 #The number can be changed
sudo sh -c "echo $CPU_FREQ > /sys/devices/system/cpu/$CPU/cpufreq/scaling_min_freq"
sudo sh -c "echo $CPU_FREQ > /sys/devices/system/cpu/$CPU/cpufreq/scaling_max_freq"

Where CPU_FREQ must be among the values in /sys/devices/system/cpu/$CPU/cpufreq/scaling_available_frequencies

Change GPU Frequency

To print the GPU lower boundary, upper boundary, and current frequency run the following commands:

cat /sys/devices/17000000.ga10b/devfreq/17000000.ga10b/min_freq
cat /sys/devices/17000000.ga10b/devfreq/17000000.ga10b/max_freq
cat /sys/devices/17000000.ga10b/devfreq/17000000.ga10b/cur_freq

To change the GPU upper boundary run the following command:

GPU_FREQ=675750000
sudo sh -c "echo $GPU_FREQ > /sys/devices/17000000.ga10b/devfreq/17000000.ga10b/max_freq"

To change the GPU lower boundary run the following command:

GPU_FREQ=114750000
sudo sh -c "echo $GPU_FREQ > /sys/devices/17000000.ga10b/devfreq/17000000.ga10b/min_freq"

To set the static GPU frequency run the following command:

GPU_FREQ=675750000
sudo sh -c "echo $GPU_FREQ > /sys/devices/17000000.ga10b/devfreq/17000000.ga10b/min_freq"
sudo sh -c "echo $GPU_FREQ > /sys/devices/17000000.ga10b/devfreq/17000000.ga10b/max_freq"

Where GPU_FREQ is the value available in: /sys/devices/17000000.ga10b/devfreq/17000000.ga10b/available_frequencies

Change Memory Frequency

sudo sh -c "echo 1 > /sys/kernel/debug/bpmp/debug/clk/emc/mrq_rate_locked"
sudo sh -c "echo 1 > /sys/kernel/debug/bpmp/debug/clk/emc/state"
sudo sh -c "echo 665600000 > /sys/kernel/debug/bpmp/debug/clk/emc/rate"

To print the EMC lower boundary, upper boundary, and current frequency run the following commands:

sudo cat /sys/kernel/debug/bpmp/debug/clk/emc/min_rate
sudo cat /sys/kernel/debug/bpmp/debug/clk/emc/max_rate
sudo cat /sys/kernel/debug/bpmp/debug/clk/emc/rate

To change the EMC upper boundary run the following command:

EMC_FREQ=2133000000
sudo sh -c "echo $EMC_FREQ > /sys/kernel/debug/bpmp/debug/clk/emc/max_rate"

To change the EMC lower boundary run the following command:

EMC_FREQ=204000000
sudo sh -c "echo $EMC_FREQ > /sys/kernel/debug/bpmp/debug/clk/emc/min_rate"

To set static EMC frequency run the following commands:

EMC_FREQ=2133000000
sudo sh -c "echo 1 > /sys/kernel/debug/bpmp/debug/clk/emc/mrq_rate_locked"
sudo sh -c "echo 1 > /sys/kernel/debug/bpmp/debug/clk/emc/state"
sudo sh -c "echo $EMC_FREQ > /sys/kernel/debug/bpmp/debug/clk/emc/rate"

Where EMC_FREQ in kHz is the value available in: /sys/kernel/debug/bpmp/debug/emc/tables/regular/



Previous: JetPack 5.0.2‎/Performance Tuning/Evaluating Performance Index Next: JetPack 5.0.2/Performance Tuning/Tuning Power