CPUs usage problem (Solved)

Hi,

I installed Jetpack 4.1 on my Xavier, and I was trying to install some software like OpenCV4 and Tensorflow.

I found there are 4 CPUs are off by running ./tegrastats.

Can anyone tell me why only 4 CPUs run and how to enable the rest?

nvidia@jetson-0423318034293:~$ ./tegrastats 
RAM 2405/15819MB (lfb 2794x4MB) CPU [3%@1190,3%@1190,18%@1190,83%@1190,off,off,off,off] EMC_FREQ 0% GR3D_FREQ 0% AO@35.5C GPU@34.5C Tboard@35C Tdiode@38C AUX@35C CPU@35.5C thermal@35.15C PMIC@100C GPU 311/311 CPU 778/778 SOC 1089/1089 CV 0/0 VDDRQ 155/155 SYS5V 1854/1854

Hi guodebby, the default power profile is MODE_15W with 4 of the CPU’s enabled. You can switch to the other profile presets using the nvpmodel utility:

$ sudo nvpmodel -q     # (query the current mode)
$ sudo nvpmodel -m 0   # (enable MAX-N)

Switching the nvpmodel persists after system reset. There’s a table of the presets available included in the L4T Documentation.

You can also disable the DFVS governor and peg the clocks at maximum frequency with the jetson_clocks.sh script:

$ sudo ~/jetson_clocks.sh

Hi,
Try to run nvpmodel commandline tool.
sudo nvpmodel -m 0

Regards

Hi dusty_nv, I am trying to stream 2 camera at 1080@60fps,for this purpose I need to change the power mode to 0 and able to stream without any issue but for this purpose Only 4 core at maximum CPU frequency solve my problems in jetson TX2 so, can you please tell me how to enable only 4 core at 2265.6 MHz CPU frequency in Xavier.
May be you also feel same if small increment in power solve problems then why we need to put board in highest power mode.

Thanks

The file /etc/nvpmodel.conf file contains, among other models, this definition:

< POWER_MODEL ID=5 NAME=MODE_30W_4CORE >
CPU_ONLINE CORE_0 1
CPU_ONLINE CORE_1 1
CPU_ONLINE CORE_2 1
CPU_ONLINE CORE_3 1
CPU_ONLINE CORE_4 0
CPU_ONLINE CORE_5 0
CPU_ONLINE CORE_6 0
CPU_ONLINE CORE_7 0
TPC_POWER_GATING TPC_PG_MASK 0
GPU_POWER_CONTROL_ENABLE GPU_PWR_CNTL_EN on
CPU_DENVER_0 MIN_FREQ 1200000
CPU_DENVER_0 MAX_FREQ 1780000
CPU_DENVER_1 MIN_FREQ 1200000
CPU_DENVER_1 MAX_FREQ 1780000
GPU MIN_FREQ 0
GPU MAX_FREQ 900000000
GPU_POWER_CONTROL_DISABLE GPU_PWR_CNTL_DIS auto
EMC MAX_FREQ 1600000000
DLA_CORE MAX_FREQ 1050000000
DLA_FALCON MAX_FREQ 630000000
PVA_VPS MAX_FREQ 760000000
PVA_CORE MAX_FREQ 532000000

So:

sudo nvpmodel -m 5

Except that limits the CPU speed to 1.78 GHz. You’ll need to edit up that frequency (similar to mode 0) if you need four cores at the given speed. If you don’t need the GPU at full speed, you could save some power perhaps by editing it down to compensate.

In general, you can generate your own profiles by editing the /etc/nvpmodel.conf and making up your own profile number (starting with 6.)

(Also note the default at the bottom: < PM_CONFIG DEFAULT=2 > )

Hi Snarky,
My ultimate goal is not 2 camera at 1080p@60 fps streaming, May be this mode 5 will solved my problem for now but my actual requirement is 6 camera 1080p@60 fps that time i don’t think so, that 1780 MHz will solve my problem. If I am able to run ONLY 4 core at 2265.6 MHz CPU frequency then may be this solved my problem in Xavier because i tested 6 camera 1080p@60fps in Jetson TX2 with MAX CPU Frequency.

Thanks for your valuable reply

Do this:

nvpmodel -m 0

It will run 8 cores at max speed.

However, what is taking so much time? 1080p at 60 Hz is not a lot of data these days, especially if you can set it up to go through the hardware pipeline. Are you doing something like color space conversion, or encoding, on the CPU, instead of using the vision processors or GPU?

Hi snarky,
I think you didn’t understand my requirement. I want to run ONLY 4 core at 2265.6 MHz(MAX) CPU frequency. Now I checked the L4T Documentation and able to know that there is no way to enable only 4 core at max frequency in Xavier, if User want to run CPU at MAX frequency they need to run nvmodel -m 0 (That will enable all 8 core at MAX CPU frequency).

If I misunderstood then please correct me.

Thanks

Yes there is; you create your own profile in /etc/nvpmodel.conf, and enable it with nvpmodel -m

I would suggest starting with the model id 0 (copy and paste that section, giving it the next number at the bottom), and disabling four of the CPUs in that copy of the model.