OC3 raised at current lower than critical

I flashed the latest jetson orin nano super release on my jetson orin nano 8GB dev kit, testing it I noticed that it were throttled due to over-current too often. Checking /sys/class/hwmon/hwmon3/oc*_event_cnt I discovered that there were only oc3 events and these events were causing the throttling. But plotting the current, voltage and checking /sys/bus/i2c/drivers/ina3221/1-0040/hwmon/hwmon<x>/curr1_input never showed anything wrong, not even spikes over curr1_crit or curr1_max. I also checked at a frequency higher than the refresh speed in nvidia power gui. The temperature also is always way below the limit.
What can it be? Is there another way to define the current limit other than via the ina3221 bus that maybe doesn’t coincide with it? Or other ways of triggering OC3?
The system is throttled around 13W, instead of 25W.
I’m using the official power supply, it supports 40W.

Hi sfacenda,

What’s the Jetpack version in use for the super mode on Orin Nano devkit?

Please note that OC throttling feature is designed to protect the module got damaged.

It may be caused from the sampling rate of the data in this node. Instant high power may occur in very small time slot so that it cannot be captured by INA3221 sensor.

Are you running some applications/stress test with high loading?
What’s your current power mode?

Hello,
l4t version is 36.4.3 and jetpack is 6.2.
The problem occours when running lvms with ollama, it’s maybe similar to what’s shown in this other thread, speaking of OC3. The current power mode is 25W, I also tested a custom one with lower CPU frequency and 2 offline CPU in order to maximize GPU power, with the same results.
I understand that the spikes might be shorter that the ina3221 sampling frequency but it looks very strange to me that the power is always lower than the critical current (half of it). How can I understand if there are super-fast (faster than the sampling speed) current spikes or not?
Just out of curiosity, what’s curr4_input about? It doesn’t have a label but when it goes higher (higher but in any case lower that curr4_crit) the oc3 event is triggered.
Let me now if other infos are needed, thanks in advantage for the support.

Also, how can I measure the amount of throttling? And also is there any flag or way to understand when is throttling on (other than wathing oc events and thermal)? I would like to have a way to know when throttling finishes.

They are detected by HW and we can only monitor the count instead of the value.

You can refer to Jetson Orin NX power management parameters - #13 by KevinFFF for details.

Normally, the OC throttling will happen shortly and recover soon. We would suggest creating a custom power mode configuration to reduce the occurrence of throttling. You should adjust them to get the balance between the power and the performance.

Thanks for the response and clarifications.
Testing now with this jetson ai labs tutorial, with VILA1.5-3b I’m getting less than one fps while almost three are expected (with live streaming and one token answers).
If I watch oc3_event_cnt I can see hundreds of events happening every second but I cannot see curr1_input going over 4000 not even for an instant, curr1_crit is 5040.
This happens in both 25W power mode and in a custom power mode that disables two CPU cores and sets a low clock speed for the other, in order to minimize power consumption and exploit the maximum GPU power available.
In keeps looking like the board enables throttling at the wrong current, significantly lowering the board capabilities.
This should be a normal workload for this board,