Maximum power consumption bounds for Orin AGX

Hello,

I have seen that agx orin 32gb has different power modes, as documented by Jetson Orin NX Series and Jetson AGX Orin Series — Jetson Linux<br/>Developer Guide 34.1 documentation

The issue is that the power modes limit the global power usage and give the upper bound for the total power usage of the board, but what about the maximum power usage for the gpu and cpu?
Otherwise I can try to stress the cpu/gpu in each power mode and see the upper bounds, but it would be great to have it documented.

Thanks.

When i say maximum power usage for cpu/gpu i refer to the upper bound values for VDD_GPU_SOC and VDD_CPU_CV rails in the different power modes.

Please refer to below info in module data sheet.

JAOi Maximum Module Power: Up to 75W
JAO 64GB Maximum Module Power: Up to 60W
JAO 32GB Maximum Module Power: Up to 40W

So under MAXN for JAO 32gb, the maximum power delivery for the whole board is 40W? There isn’t a way to know the maximum for VDD_GPU_SOC and VDD_CPU_CV?

I have a 32GB JAO and it has a 50W mode instead of a 40W one by default. So it has 15W, 30W, 50W and MAXN.

These are some empirical results I took by executing gpu/cpu stress tests (independently, not stressing cpu and gpu at the same time):

stress test gpu:

MAXN MODE (mode 0): 
GPU: 40.4 W
CPU: 15.2 W

50W MODE: mode 3
GPU: 18.4 W
CPU: 6.0 W

30W MODE (it disables 4 cpu cores):  mode 2
GPU: 7.6W
CPU: 5.6W 

15W MODE (it disables 8 cpu cores): mode 1
GPU: 5.2W
CPU: 1.6W

I guess there’s no way to know the maximum, as the system can give more/less power depending of external variables, i.e temperature, current load etc…?

To answer my question, I guess there isn’t a way to get the maximum bounds for cpu and gpu power usage, as they depend on external conditions. Some measured maximum could be exceeded depending on the implementation as well as other details (current load, temperature and who knows what else).

I have a question, my jetson is 32gb but has 4 profiles, 15w, 30w, 50w, and maxn

for the maxn, is there a set cap for the board?

The cap value is for maxn mode.

I have a agx orin of 32gb and it’s using 65w

So it isn’t true that cap value is for maxn mode, because it is using 65w and it’s an agx orin 32gb, while given what you said it should go up to 40w

You can refer to below links for more detail info.

https://docs.nvidia.com/jetson/archives/r35.3.1/DeveloperGuide/text/SD/PlatformPowerAndPerformance/JetsonOrinNanoSeriesJetsonOrinNxSeriesAndJetsonAgxOrinSeries.html?#jetson-agx-orin-series

By default, the power limit of a 32gb agx orin is 45w? why curr1_limit is 81.9A? can i modify it?

In curr4_crit I have this limit: 3240mA which seems to be the current limit for Channel 4: SUMMATION ?
and voltage is 20V

The question here is based on the docs you provided, instantaneous power limit seems to be 45W for 32gb, but then, curr4_limit tells me it’s 65w (3240mA * 20V)?

Also, if channel 4 limit was 45w, which is the sum of VDD_GPU_SOC and VDD_CPU_CV, why the sum gives me 52W?

[ maybe there’s some explanation for the 81.9A number:
INA3221 ic provides an analog-digital-converter resolution of 13bit depth for an absolute 163.8mV (=0.1638V) on a step width of ~40µV for 1 step for the 2^13 steps (8192).
It seems the 8192 steps are for bidirectional measurements for the voltage drop on the shunt through currents, therefore ~40µV*4096=0.16384V and one (all?) shunts having a value of 0x7d0 micro-ohms (shunt-resistor-micro-ohms = <0x7d0>; 2000µΩ=0.002Ω), therefore the possible top current is defined to I=0.1638V/0.002Ω what’s about 81.92A. ]

That makes sense, at least for the curr1_critical, thank you very much.

Now I am wondering what’s up with the curr4_critical is showing me 3240mA which means that the power limit is 65W for the 32gb version, are some dev kits configured differently? or is my dev kit badly configured?
I will assume the limit is 65W for the MAXN profile, since it’s actually going beyond the 45W specified by the docs.
Also the power profiles of the board are the same as the 64GB version.

[ for the 3240mA (=3.24A*20V =~64.8W, before conversion towards cpu/gpu(/peripherals) rails(?) ):
There might be a different shunt (if so, possibly 0.05Ω and 1/25 of critical current of curr1-curr3 values). One can read these values (and set a limit (with ‘yes_I_know_what_I’m_doing’ foresight and care) for the instantaneous|average (over-)current limit).
Maybe You can provide the original .dtb file from the boot folder Your board is started with? (thx)
(btw. maybe it’s about Your release version, that’s Jetson Linux 35.3.1?) ]

Yes, the model reported by jetson_release is:
Model: Jetson AGX Orin - Jetpack 5.1.1 [L4T 35.3.1]
Hardware:

  • P-Number: p3701-0000
  • Module: NVIDIA Jetson AGX Orin
    i’ve also uploaded the dts file
    my_dtb.zip (62.5 KB)

[ Thanks for the dts, AFAI_see:
There are 2 main ina3221 root level ics and 3 sub-devices with another 9 sensor value channels (but none with 0.05Ω):

ina3221@40

  1. “VDD_GPU_SOC”, 0x7d0 (=0.002Ω)
  2. “VDD_CPU_CV”, 0x7d0 (=0.002Ω)
  3. “VIN_SYS_5V0”, summation-bypass, 0x7d0 (=0.002Ω)

ina3221@41

  1. “NC”
  2. “VDDQ_VDD2_1V8AO”, 0x7d0 (=0.002Ω)
  3. “NC”
    @40:
    _1. “VDD_5V”, 0x2710 (=0.01Ω)
    _2. “VDD_3V3”, 0x2710 (=0.01Ω)
    _3. “VDD_1V8”, 0x3e8 (=0.001Ω)
    @41:
    _4. “VDD_5V_AUD”, 0x3e8 (=0.001Ω)
    _5. “VDD_3V3_AUD”, 0x2710 (=0.01Ω)
    _6. “VDD_1V8_AUD”, 0x2710 (=0.01Ω)
    @42:
    _7. “VDD_3V3_GPS”, 0x2710 (=0.01Ω)
    _8. “VDD_3V3_NFC”, 0x2710 (=0.01Ω)
    _9. “VDD_3V3_GYRO”, 0x2710 (=0.01Ω)

It might be helpful reading ‘Jetson Orin Nano Series, Jetson Orin NX Series and Jetson AGX Orin Series — Jetson Linux Developer Guide documentation
(‘* Jetson AGX Orin 32GB Module’ is related to releases 35.1 (Aug. 22) and 35.2.1 (Jan. 23) (?))

Looking for the DVFS table for cpu/gpu with supply voltage to cores and enabled clock speed, ‘NVIDIA Jetson Orin Nano - Set Values Manually’ might be helpful.
Maybe You can provide output for the DVFS configuration with
cat /sys/kernel/debug/*_dvfs/dvfs_table and
cat /sys/kernel/debug/*_dvfs/rails?

About ‘Interface Power’ there’s a section ‘Chapter 5:’ in
Jetson Orin Nano Developer Kit Carrier Board
Specification
’ (pages 31-33),
(this is a temporary link only, it’s easier searching the title within a web search engine (above link is to Bing)). (thx) ]

available frequencies cpu:

bourram@agx11:~$ cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_available_frequencies
115200 192000 268800 345600 422400 499200 576000 652800 729600 806400 883200 960000 1036800 1113600 1190400 1267200 1344000 1420800 1497600 1574400 1651200 1728000 1804800 1881600 1958400 2035200 2112000 2188800 2201600 
115200 192000 268800 345600 422400 499200 576000 652800 729600 806400 883200 960000 1036800 1113600 1190400 1267200 1344000 1420800 1497600 1574400 1651200 1728000 1804800 1881600 1958400 2035200 2112000 2188800 2201600 
115200 192000 268800 345600 422400 499200 576000 652800 729600 806400 883200 960000 1036800 1113600 1190400 1267200 1344000 1420800 1497600 1574400 1651200 1728000 1804800 1881600 1958400 2035200 2112000 2188800 2201600 
115200 192000 268800 345600 422400 499200 576000 652800 729600 806400 883200 960000 1036800 1113600 1190400 1267200 1344000 1420800 1497600 1574400 1651200 1728000 1804800 1881600 1958400 2035200 2112000 2188800 2201600 
115200 192000 268800 345600 422400 499200 576000 652800 729600 806400 883200 960000 1036800 1113600 1190400 1267200 1344000 1420800 1497600 1574400 1651200 1728000 1804800 1881600 1958400 2035200 2112000 2188800 2201600 
115200 192000 268800 345600 422400 499200 576000 652800 729600 806400 883200 960000 1036800 1113600 1190400 1267200 1344000 1420800 1497600 1574400 1651200 1728000 1804800 1881600 1958400 2035200 2112000 2188800 2201600 
115200 192000 268800 345600 422400 499200 576000 652800 729600 806400 883200 960000 1036800 1113600 1190400 1267200 1344000 1420800 1497600 1574400 1651200 1728000 1804800 1881600 1958400 2035200 2112000 2188800 2201600 
115200 192000 268800 345600 422400 499200 576000 652800 729600 806400 883200 960000 1036800 1113600 1190400 1267200 1344000 1420800 1497600 1574400 1651200 1728000 1804800 1881600 1958400 2035200 2112000 2188800 2201600 
115200 192000 268800 345600 422400 499200 576000 652800 729600 806400 883200 960000 1036800 1113600 1190400 1267200 1344000 1420800 1497600 1574400 1651200 1728000 1804800 1881600 1958400 2035200 2112000 2188800 2201600 
115200 192000 268800 345600 422400 499200 576000 652800 729600 806400 883200 960000 1036800 1113600 1190400 1267200 1344000 1420800 1497600 1574400 1651200 1728000 1804800 1881600 1958400 2035200 2112000 2188800 2201600 
115200 192000 268800 345600 422400 499200 576000 652800 729600 806400 883200 960000 1036800 1113600 1190400 1267200 1344000 1420800 1497600 1574400 1651200 1728000 1804800 1881600 1958400 2035200 2112000 2188800 2201600 
115200 192000 268800 345600 422400 499200 576000 652800 729600 806400 883200 960000 1036800 1113600 1190400 1267200 1344000 1420800 1497600 1574400 1651200 1728000 1804800 1881600 1958400 2035200 2112000 2188800 2201600 

for gpu i have used the stress test and observed the frequency of the gpu, it’s 1.3 ghz in maxn mode (it corresponds to the 64gb version instead of the 32 one, Jetson Orin NX Series and Jetson AGX Orin Series — Jetson Linux<br/>Developer Guide 34.1 documentation look at the frequency tables for gpu in maxn mode for both 32gb and 64gb versions)

the last link you’ve provided is broken

everything points out to the 64gb version

I’ve had the idea to look at the S/N number in the box and compare it against the one reported by software, they do not match.

Okay, looking at the board s/n and the box s/n i could see it’s the 32gb version, so that’s confirmed.

So that’s solved, the next question is why gpu clocks, power modes, vdd_cpu_gpu_soc exceed the ones of the 32gb? Instantaneous power shouldn’t be more than 45W, but i’ve seen it go to 52W (even exceeding it)


[ Confirming the firmware that is loaded/utilized with booting is the suitable one for the 32GB version (and not 64GB version, if that’s a difficulty, Your dts file naming shows a different ID ‘p3701-0000’ compared to the model number on Your second photo(?), but maybe it’s only part of an ID number )?
(Its probably not a definition variation between numbers for TDP and ‘Maximum Module Power’?)
Maybe You can utilize an external power meter from wall power supply for verifying the measured results?
(btw. the previous last link is updated, but might be a temporary link)

(Another influence to power consumption might be within the relation of the voltage level for a cpu/gpu clock speed, that could differ with various firmwares, but me not being sure about that.
Maybe You can find a dvfs_table or rails (for DVFS, what’s more detailed, compared to the cpu’s scaling_available_frequencies) within /sys folder, that might be helpful for comparison between different Kernels or firmwares. (thx) ]