Configure DGX so it does not go into power standby mode

First of I’m not a developer. I don’t know anything about Linux or Ubuntu. I had this thing handed to me and told to make it work.

We have a DGX Spark5 with firmware version 5.36_OACUM018 and Linux Kernel 6.17.0-1021-nvidia. GNOME version is 46.

The DGX device keeps going into sleep mode whether a screen and keyboard is connected or not.

It also does not allow connections until a user has logged in locally.

I ran the following cmd in CLI but it does not seem to make any difference.

sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target

The following test showed cmd was successful.

systemctl is-enabled sleep.target suspend.target hibernate.target hybrid-sleep.target

However, it is not working.
What else can I try?

PS.

I did not run the initial setup on this device.

Thank you.

Hi @eduard.inggs, two separate things are going on here, and masking the systemd sleep targets fixes neither (it was also reported ineffective/non-persistent in the earlier headless-suspend thread).

1. The suspend is triggered by GNOME at the login screen, not by systemd. When nobody is logged in, the GDM greeter’s own power profile applies and it defaults to automatic suspend after ~20 min. Fix it for the gdm user:

bash

sudo -u gdm dbus-run-session gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-type 'nothing'
sudo -u gdm dbus-run-session gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-timeout 0

Then do the same for your own account: log in, Settings → Power → Automatic Suspend → Off (or run the same gsettings set ... sleep-inactive-ac-type 'nothing' without sudo -u gdm).

2. “No connections until a user logs in locally”, if the Spark is on Wi-Fi, this is the known user-scoped connection issue. Whoever ran initial setup created the Wi-Fi profile tied to their account, so NetworkManager only brings it up after login and drops it when the greeter session idles out. Make it system-wide:

bash

nmcli connection show                # find the exact connection name
sudo nmcli connection modify "YOUR_WIFI_SSID" connection.permissions ""
sudo nmcli connection modify "YOUR_WIFI_SSID" connection.autoconnect yes

Also disable Wi-Fi powersave, create /etc/NetworkManager/conf.d/wifi-powersave-off.conf with:

[connection]
wifi.powersave = 2

then sudo systemctl restart NetworkManager. (Best fix of all: use wired Ethernet wired units don’t hit this.)

This exact combination was root-caused in Nvidia DGX Spark automatically suspends when running headless.

3. If after these fixes the machine stays reachable over SSH but the monitor won’t wake that’s a different, known issue (HDMI deep sleep, listed in the User Guide Known Issues). Workarounds in DGX Spark HDMI display stops working: xset dpms force on over SSH, disable blanking (gsettings set org.gnome.desktop.session idle-delay 0), or use USB-C→DisplayPort instead of HDMI.

To verify: leave it idle a few hours, then check uptime over SSH and journalctl -b | grep -i suspend you should see no new suspend entries.

I think you are supposed to copy after this bit 😄

Making some tests with my local knowledge base of solved posts using the spark to help address forum threads left without replies. Still under development.

It’s definitely a worthy goal - there are a lot of duplicated posts (I don’t think this forum software is at all good at search). It did make me chuckle though.

There’s ofc a lot of AI in this forum. Sometimes I find myself clicking the AI Summarize button, and each time I do I’m reminded of this comic 😄

Exactly, the same problem is happening on open source projects, too many open PR’s and not a lot of human time available to review them. The feasible approach is classifying the existing PR’s that are low hanging fruits for AI and let it craft an analysis for you to review. And you need to curate the knowledge base with actual human output and verified resolution. And another thing: some of the users will just point the agent to the reply and ask them to execute the tests or fixes.

In the forums the target is: old (1 week or more) unanswered posts with answers already found on other posts and NVIDIA official documentation. In the best case we can get some feedback from the user and proceed from there.

I think NVIDIA tried this before, but turned it off.

The annoying part is if you do ask a question and the answer is, have your agent fix it…

Thank you Raphael! This really saved med me. I’m a total noob with Linux.

you’re welcome