use 6 CPU on TX2

Hi All,
By using the “jetson_clocks.sh” script or looking in the result of “dmesg” command, I can see 6 CPU.
But when I try to display CPU information with “cat /proc/cpuinfo” or run a command like “xz -6 -T 0” only 4 CPU are visible or used.

Do you have an idea why the 6 CPU can not be used?

Thanks for your help,

Pierre

----------------------------------Output of the “jetson_clocks.sh” and “cat /proc/cpuinfo” commands------
root@tegra-ubuntu:~# cat /tmp/cpuinfo.txt
SOC family:tegra186 Machine:quill
Online CPUs: 0,3-5
CPU Cluster Switching: Disabled
cpu0: Gonvernor=schedutil MinFreq=345600 MaxFreq=2035200 CurrentFreq=499200
cpu1: Gonvernor=schedutil MinFreq=345600 MaxFreq=2035200 CurrentFreq=1574400
cpu2: Gonvernor=schedutil MinFreq=345600 MaxFreq=2035200 CurrentFreq=1574400
cpu3: Gonvernor=schedutil MinFreq=345600 MaxFreq=2035200 CurrentFreq=345600
cpu4: Gonvernor=schedutil MinFreq=345600 MaxFreq=2035200 CurrentFreq=345600
cpu5: Gonvernor=schedutil MinFreq=345600 MaxFreq=2035200 CurrentFreq=345600
GPU MinFreq=114750000 MaxFreq=1134750000 CurrentFreq=114750000
EMC MinFreq=40800000 MaxFreq=1600000000 CurrentFreq=102000000 FreqOverride=0
Fan: speed=0
processor : 0
model name : ARMv8 Processor rev 3 (v8l)
BogoMIPS : 62.50
Features : fp asimd evtstrm aes pmull sha1 sha2 crc32
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x1
CPU part : 0xd07
CPU revision : 3

processor : 3
model name : ARMv8 Processor rev 3 (v8l)
BogoMIPS : 62.50
Features : fp asimd evtstrm aes pmull sha1 sha2 crc32
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x1
CPU part : 0xd07
CPU revision : 3

processor : 4
model name : ARMv8 Processor rev 3 (v8l)
BogoMIPS : 62.50
Features : fp asimd evtstrm aes pmull sha1 sha2 crc32
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x1
CPU part : 0xd07
CPU revision : 3

processor : 5
model name : ARMv8 Processor rev 3 (v8l)
BogoMIPS : 62.50
Features : fp asimd evtstrm aes pmull sha1 sha2 crc32
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x1
CPU part : 0xd07
CPU revision : 3

The TX2 has different modes it can run in for different power/performance trade-offs. You simply see the default. In particular, cores 2 and 3 1 and 2 are Denver cores which default to “off” unless you enable them.

The application “nvpmodel” is used to switch modes. To allow max performance, including the Denver cores:

sudo nvpmodel -m 0

Understand that there are a range of core clocks available (the DVFS tables), and that the “m 0” model does two things:

  • Enable all cores.
  • Set DVFS table limits to max possible range.

Do not mistake “max possible” for actually being at max. This is the job of “jetson_clocks.sh”. This file exists in the home directories of users “ubuntu” and “nvidia”. So you’d need to name it with the full path, e.g.:

sudo ~nvidia/jetson_clocks.sh

This would max out the actual clocks and fan. Had you not run “nvpmodel -m 0” prior to this, then the actual clock frequency would be lower because the max of the DVFS table would be reduced. This will also cause maximum power consumption. I’m not positive, but doing this in reverse order could imply not hitting the max clock since the DVFS table would max out at a lower value without at the moment of running jetson_clocks.sh.

You could set custom states and then use jetson_clocks.sh to store that. See:

sudo ~nvidia/jetson_clocks.sh -h