We recently bumped the L4T version that is running on our Jetson AGX Orin 32GB from 35.4.1 to 36.4.4. In that process, we noticed our application ended up running at a lower framerate than what was previously the case. Looking further into the problem, we concluded that our GPU clock frequency is now being set lower than what was previously the case.
Running sudo jetson_clocks –show on the old 35.4.1 image, it outputs
SOC family:tegra234 Machine:Jetson AGX Orin for DSBOARD-AGX
Online CPUs: 0-5
cpu0: Online=1 Governor=performance MinFreq=1574400 MaxFreq=1574400 CurrentFreq=1574400 IdleStates: WFI=1 c7=1
cpu1: Online=1 Governor=performance MinFreq=1574400 MaxFreq=1574400 CurrentFreq=1574400 IdleStates: WFI=1 c7=1
cpu2: Online=1 Governor=performance MinFreq=1574400 MaxFreq=1574400 CurrentFreq=1574400 IdleStates: WFI=1 c7=1
cpu3: Online=1 Governor=performance MinFreq=1574400 MaxFreq=1574400 CurrentFreq=1574400 IdleStates: WFI=1 c7=1
cpu4: Online=1 Governor=performance MinFreq=1574400 MaxFreq=1574400 CurrentFreq=1574400 IdleStates: WFI=1 c7=1
cpu5: Online=1 Governor=performance MinFreq=1574400 MaxFreq=1574400 CurrentFreq=1574400 IdleStates: WFI=1 c7=1
cpu6: Online=0 Governor=performance MinFreq=1574400 MaxFreq=1574400 CurrentFreq=1574400 IdleStates: WFI=1 c7=1
cpu7: Online=0 Governor=performance MinFreq=1574400 MaxFreq=1574400 CurrentFreq=1574400 IdleStates: WFI=1 c7=1
GPU MinFreq=1300500000 MaxFreq=1300500000 CurrentFreq=1300500000
EMC MinFreq=204000000 MaxFreq=3199000000 CurrentFreq=3199000000 FreqOverride=1
DLA0_CORE: Online=1 MinFreq=0 MaxFreq=18446744073709551615 CurrentFreq=1600000000
DLA0_FALCON: Online=1 MinFreq=0 MaxFreq=18446744073709551615 CurrentFreq=844800000
DLA1_CORE: Online=1 MinFreq=0 MaxFreq=18446744073709551615 CurrentFreq=1600000000
DLA1_FALCON: Online=1 MinFreq=0 MaxFreq=18446744073709551615 CurrentFreq=844800000
PVA0_VPS0: Online=1 MinFreq=0 MaxFreq=18446744073709551615 CurrentFreq=1152000000
PVA0_AXI: Online=1 MinFreq=0 MaxFreq=18446744073709551615 CurrentFreq=832000000
FAN Dynamic Speed control=active hwmon4_pwm1=181
Whereas the newer 36.4.4 image outputs
SOC family:tegra234 Machine:AGX Orin for DSBOARD-AGX
Online CPUs: 0-7
cpu0: Online=1 Governor=performance MinFreq=729600 MaxFreq=2188800 CurrentFreq=2188800 IdleStates: WFI=1 c7=1
cpu1: Online=1 Governor=performance MinFreq=729600 MaxFreq=2188800 CurrentFreq=2188800 IdleStates: WFI=1 c7=1
cpu2: Online=1 Governor=performance MinFreq=729600 MaxFreq=2188800 CurrentFreq=2188800 IdleStates: WFI=1 c7=1
cpu3: Online=1 Governor=performance MinFreq=729600 MaxFreq=2188800 CurrentFreq=2188800 IdleStates: WFI=1 c7=1
cpu4: Online=1 Governor=schedutil MinFreq=729600 MaxFreq=2188800 CurrentFreq=2188800 IdleStates: WFI=1 c7=1
cpu5: Online=1 Governor=schedutil MinFreq=729600 MaxFreq=2188800 CurrentFreq=2035200 IdleStates: WFI=1 c7=1
cpu6: Online=1 Governor=schedutil MinFreq=729600 MaxFreq=2188800 CurrentFreq=1497600 IdleStates: WFI=1 c7=1
cpu7: Online=1 Governor=schedutil MinFreq=729600 MaxFreq=2188800 CurrentFreq=1497600 IdleStates: WFI=1 c7=1
GPU MinFreq=306000000 MaxFreq=930750000 CurrentFreq=612000000
Active GPU TPCs: 7
EMC MinFreq=204000000 MaxFreq=3199000000 CurrentFreq=3199000000 FreqOverride=0
DLA0_CORE: Online=1 MinFreq=0 MaxFreq=1408000000 CurrentFreq=1408000000
DLA0_FALCON: Online=1 MinFreq=0 MaxFreq=742400000 CurrentFreq=742400000
DLA1_CORE: Online=1 MinFreq=0 MaxFreq=1408000000 CurrentFreq=1408000000
DLA1_FALCON: Online=1 MinFreq=0 MaxFreq=742400000 CurrentFreq=742400000
PVA0_VPS0: Online=1 MinFreq=0 MaxFreq=1190400000 CurrentFreq=1190400000
PVA0_AXI: Online=1 MinFreq=0 MaxFreq=857600000 CurrentFreq=857600000
FAN Dynamic Speed Control=nvfancontrol hwmon5_pwm1=204
NV Power Mode: MAXN
We take particular note in comparing the lines (35.4.1):
GPU MinFreq=1300500000 MaxFreq=1300500000 CurrentFreq=1300500000
(36.4.4):
GPU MinFreq=306000000 MaxFreq=930750000 CurrentFreq=612000000
Looking at the technical specifications, it states that our 32GB AGX Orin, quite correctly, should go no higher than 930 MHz, and indeed we appear unable to overclock it. Our question then becomes: why were we previously seemingly able to overclock it to 1.3 GHz? Is there any method one can use to overclock it yet again? On our newer image, we have the power mode set to MAXN, but for the older version, there is no such power mode defined, and running nvpmodel -q returns NVPM WARN: power mode is not set!
Should it be of interest, here is the content of the two /etc/nv_boot_control.conf files
35.4.1:
TNSPEC 3701-501-0004-E.0-1-0-jetson-agx-orin-devkit-
COMPATIBLE_SPEC 3701--0004--1--jetson-agx-orin-devkit-
TEGRA_LEGACY_UPDATE false
TEGRA_BOOT_STORAGE mmcblk0
TEGRA_EMMC_ONLY false
TEGRA_CHIPID 0x23
TEGRA_OTA_BOOT_DEVICE /dev/mtdblock0
TEGRA_OTA_GPT_DEVICE /dev/mtdblock0
36.4.4:
TNSPEC 3701-500-0004-L.0-1-0-kcc-200-day-mmcblk0p1
COMPATIBLE_SPEC 3701--0004--1--kcc-200-day-
TEGRA_BOOT_STORAGE mmcblk0
TEGRA_CHIPID 0x23
TEGRA_OTA_BOOT_DEVICE /dev/mtdblock0
TEGRA_OTA_GPT_DEVICE /dev/mtdblock0