Jetson/TX1 Controlling Performance

Although Jetson TX1's L4T BSP has a built-in load governor enabled, through Linux  it's possible to manually control various core settings and clock frequencies, impacting power consumption and performance.

= Maximizing TX1 Performance =

Use the TX1 Governor Maximization script to enable maximum performance. Run 1 minute after boot to ensure any of the Ubuntu startup scripts don't interfere or override the settings during boot.

Below the steps are broken down to illustrate the different settings available for manual use:

1. Maximizing CPU/GPU
Run the script below as root to maximize the clock frequency limits of the CPU/GPU governor.

This section also keeps the 4 ARM Cortex-A57 cores always on.  sudo su echo userspace > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor echo userspace > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor echo userspace > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor echo userspace > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq cat /sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq cat /sys/devices/system/cpu/cpu2/cpufreq/scaling_max_freq > /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq cat /sys/devices/system/cpu/cpu3/cpufreq/scaling_max_freq > /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq echo 0 > /sys/devices/system/cpu/cpuquiet/tegra_cpuquiet/enable for file in /sys/devices/system/cpu/cpu*/online; do if [ `cat $file` -eq 0 ]; then echo 1 > $file fi done echo runnable > /sys/devices/system/cpu/cpuquiet/current_governor cat /sys/kernel/debug/clock/gpu_dvfs_t cat /sys/kernel/debug/clock/dvfs_table cat /sys/kernel/debug/clock/gbus/max > /sys/kernel/debug/clock/override.gbus/rate echo 1 > /sys/kernel/debug/clock/override.gbus/state

2. Disable CPU Idle
 for i in `ls /sys/devices/system/cpu/cpu*/cpuidle/state*/disable`; do echo 1 > $i; done

3. Maximize EMC (Memory Controller)
 cat /sys/kernel/debug/clock/override.emc/max > /sys/kernel/debug/clock/override.emc/rate echo 1 > /sys/kernel/debug/clock/override.emc/state

4. Controlling the Fan
 echo 255 > /sys/kernel/debug/tegra_fan/target_pwm

= Other Settings =

See the TK1 Performance page for settings and commands from Jetson TK1, many of them still relevant to TX1.

There are many cores not mentioned above, exposed through  and   that can be experimented with for impacts to power scaling.