Max performance for nx is nvpmodel -m2?

for AGX it was nvpmodel -m0; then jetson_clocks
in order to enable the max performance;
However for NX it seems
nvpmodel -m2
then
jetson_clocks --fan
right?
ref: Welcome — Jetson Linux<br/>Developer Guide 34.1 documentation

I would say it depends on your application/use-case. The different nvmmodels enable 2-6 cpu cores at different clock rates (the more cores the lower the clock rate).

When your application can use at lot of parallel threads it might yield better performance choosing more cores at a lower clock rate, while a single threaded application will run faster in 2core mode at highest clock rate.

1 Like

hello Andrey1984,

by default the maximum performance mode is setting to mode-id=0; it’s one of special case for NX that reduce the active cores and boost CPU frequency to 1900MHz.
dkreutz is correct, it depends-on your codes, if you’re having lots parallel threads it might yield better performance choosing more active cores.
thanks

2 Likes

What is a suggested way to enforce max performance on autoboot on NX device?
I tried creating rc.local with an extra supplementary script file, but it doesn’t seem to be working well.

cat /usr/bin/jetson_clocks.sh
#!/bin/sh
exec nvpmodel -m2 &&
exec /usr/bin/jetson_clocks --fan

 cat /etc/rc.local 
(sleep 60 && cd /usr/bin/jetson_clocks.sh )&
exit 0

sometimes it works; sometimes it doesn’t; sometimes it seems to work after reboot, but not after poweroff;

Upd: single line fo renabling just jetson_clocks on autostart

curl -s https://raw.githubusercontent.com/AndreV84/Jetson/master/autostart_jclcks |sudo bash

reference used:

@Andrey1984

You can create a systemd service to start jetson_clocks during system bootup. Please follow below steps:

  1. Create /etc/systemd/system/jetson-clocks.service file with following content

[Unit]
Description=Jetson Clocks
After=nvpmodel.service

[Service]
Type=oneshot
ExecStart=/bin/bash -c /usr/bin/jetson_clocks

[Install]
WantedBy=multi-user.target

  1. Create symlink in /etc/systemd/system/multi-user.target.wants/ directory.

sudo ln -sf /etc/systemd/system/jetson-clocks.service /etc/systemd/system/multi-user.target.wants/jetson-clocks.service

  1. Reboot system
  2. After reboot, make sure clocks are set to max using “jetson_clocks --show” command.
1 Like

I am running jetson nx and I tried this with
ExecStart=/bin/bash -c /usr/bin/jetson_clocks --fan
but the fans do not start.

nvidia@nxproto2:~$ systemctl status jetson_clocks.service 
● jetson_clocks.service - Jetson Clocks
   Loaded: loaded (/usr/lib/systemd/system/jetson_clocks.service; enabled; vendor preset: enabled)
   Active: inactive (dead) since Thu 2020-10-29 18:10:24 EET; 5min ago
  Process: 4730 ExecStart=/bin/bash -c /usr/bin/jetson_clocks --fan (code=exited, status=0/SUCCESS)
 Main PID: 4730 (code=exited, status=0/SUCCESS)

loka 29 18:10:24 nxproto2 systemd[1]: Starting Jetson Clocks...
loka 29 18:10:24 nxproto2 systemd[1]: Started Jetson Clocks.

The service claims that it was succesfull???

Hi ahti,

Please help to open a new topic for your issue. Thanks