hi,
在Devkit R38.2.1上,修改下面配置, 120W模式(最大限制1.386GHz)下GPU频率达到 1.574GHz
sudo tee /sys/class/devfreq/*/governor <<< performance
但是在devkit R38.2.0上,同样的配置,gpu频率是1.386GHz。
log.txt (8.2 KB)
hi,
在Devkit R38.2.1上,修改下面配置, 120W模式(最大限制1.386GHz)下GPU频率达到 1.574GHz
sudo tee /sys/class/devfreq/*/governor <<< performance
但是在devkit R38.2.0上,同样的配置,gpu频率是1.386GHz。
log.txt (8.2 KB)
Hi,
Does it work by executing $ sudo jetson_clocks? we would suggest use the script instead of manually setting device nodes.
hi, dane
我试了一下,sudo jetson_clocks,偶尔也会达到1.57GHz,可能跟采样有关。但是sudo jetson_clocks会把所有的频率设成最高,这不是我们想要的效果,因为功耗也上升了
我们的目的不是为了把所有的设备频率设成最大,只是为了验证之前的卡死的问题(怀疑跟devfreq一直调频有关,所以nv要求我们用上面的命令进行验证Desktop system crashed - #34 by WayneWWW)
所以这个问题还是需要分析一下的,我们需要精细的控制cpu,gpu的频率,功耗。
Hi,
In jetson_clocks, the hardware engines are set to maximum through the functions like:
do_igpu
do_emc
do_dla
do_pva
do_cvnas
Would suggest customize the script to keep the required engines.
那jetson_clocks就是通过设置minFreq和MaxFreq来设置性能的吧。为什么gpu的CurrentFreq比MaxFreq还大?比如下面的gpu的MaxFreq是1.56GHz,而CurrentFreq是1.69GHz
sudo jetson_clocks --show
SOC family:tegra264 Machine:NVIDIA Jetson AGX Thor Developer Kit
Online CPUs: 0-13, Offline CPUs:
cpu0: Governor=schedutil MinFreq=972000 MaxFreq=2601000 CurrentFreq=972000 IdleStates: WFI=1 cc7=1
cpu1: Governor=schedutil MinFreq=972000 MaxFreq=2601000 CurrentFreq=972000 IdleStates: WFI=1 cc7=1
cpu2: Governor=schedutil MinFreq=972000 MaxFreq=2601000 CurrentFreq=1674000 IdleStates: WFI=1 cc7=1
cpu3: Governor=schedutil MinFreq=972000 MaxFreq=2601000 CurrentFreq=1674000 IdleStates: WFI=1 cc7=1
cpu4: Governor=schedutil MinFreq=972000 MaxFreq=2601000 CurrentFreq=1674000 IdleStates: WFI=1 cc7=1
cpu5: Governor=schedutil MinFreq=972000 MaxFreq=2601000 CurrentFreq=1674000 IdleStates: WFI=1 cc7=1
cpu6: Governor=schedutil MinFreq=972000 MaxFreq=2601000 CurrentFreq=1728000 IdleStates: WFI=1 cc7=1
cpu7: Governor=schedutil MinFreq=972000 MaxFreq=2601000 CurrentFreq=1674000 IdleStates: WFI=1 cc7=1
cpu8: Governor=schedutil MinFreq=972000 MaxFreq=2601000 CurrentFreq=1728000 IdleStates: WFI=1 cc7=1
cpu9: Governor=schedutil MinFreq=972000 MaxFreq=2601000 CurrentFreq=972000 IdleStates: WFI=1 cc7=1
cpu10: Governor=schedutil MinFreq=972000 MaxFreq=2601000 CurrentFreq=972000 IdleStates: WFI=1 cc7=1
cpu11: Governor=schedutil MinFreq=972000 MaxFreq=2601000 CurrentFreq=1674000 IdleStates: WFI=1 cc7=1
cpu12: Governor=schedutil MinFreq=972000 MaxFreq=2601000 CurrentFreq=1674000 IdleStates: WFI=1 cc7=1
cpu13: Governor=schedutil MinFreq=972000 MaxFreq=2601000 CurrentFreq=1080000 IdleStates: WFI=1 cc7=1
gpu-gpc-0 MinFreq=314000000 MaxFreq=1386000000 CurrentFreq=1575000000
gpu-nvd-0 MinFreq=314000000 MaxFreq=1557000000 CurrentFreq=1692000000
EMC MinFreq=665600000 MaxFreq=4266000000 CurrentFreq=665600000 FreqOverride=0
PVA0_VPS0: Online=0 MinFreq=0 MaxFreq=1215000000 CurrentFreq=1215000000
PVA0_AXI: Online=0 MinFreq=0 MaxFreq=909000000 CurrentFreq=909000000
FAN Dynamic Speed Control=nvfancontrol hwmon1_pwm1=72
FAN Dynamic Speed Control=nvfancontrol hwmon1_pwm1_enable=1
NV Power Mode: 120W
Is this still an issue to support? Any result can be shared?
yes, it is a problem. if set performance mode, it should not reach 1.574GHz
It may be caused from that you have run jetson_clocks which will write the HW register to maximize the available clock frequencies. It causes the actual CurrentFreq being higher than MaxFreq configured for 120W power mode.
Have you tried to create the custom power mode configuration according to your use case?
i didn’t run jetson_clocks when found this problem.
now we use 120w and maxn mode. no custom power mode
Hi liuting11,
I have checked this with internal team.
If the GPU is runtime-suspended, the devfreq framework is unable to retrieve a valid clock frequency.
Users should ensure that the GPU is in runtime-active state before accessing cur_freq through devfreq.
We’ll have the fix in the upcoming JP7.1GA next month.