NERSC NX Service - X-Windows Acceleration at NERSC
Got A Question?
Check out the NX FAQ and Video Tutorials
Introduction
NX is a computer program that handles remote X Window System connections and it provides three benefits for NERSC users:
- SPEED: NX can greatly improve the performance of X Windows, allowing users with slow, high latency connections (e.g. on cell phone network, traveling in Africa) to use complex X Windows programs (such as rotating a plot in Matlab).
- SESSION: NX provides sessions that allow a user to disconnect from the session and reconnect to it at a later time while keeping the state of all running applications inside the session.
- DESKTOP: NX gives users a virtual desktop that's running at NERSC. You can customize the desktop according to your work requirement.

New NX Service
Comparing to the old NX service, the new NX has two significant changes:
- The new NX uses KDE as the default desktop. KDE provides a friendly and highly customizable user interface;
- The new NX server uses a load-balanced architecture. The service is built on two servers, providing extra user capacity.
Availability
NERSC has made NX available to all active users. If you can log in to a NERSC system you can connect via NX.
Step 1. Download Latest NX Player (YOU NEED THE LATEST NX PLAYER)
To use NX, you need to download the latest NX Player. Currently (April 2013) the latest version is 4.0.181, download links below:
Step 2. Download NX Configuration File
Please go to the NX Configuration File Download Page (login needed) to download the configuration file. After download, please unzip and put the .nxs on your Desktop.
Step 3. Open the NX Configuration File to Connect to the NX Server
If your NX Player is installed correctly, double-clicking the downloaded .nxs file will open up NX. Or right-click the .nxs file and "Open With" NX Player. Simply use your nim_username/password to login.
Step 4. Connect to NERSC Systems
After connecting to NERSC you will see the KDE window manager. Click the icon on the bottom-left corner, a menu will popup with a list of available NERSC systems. You might be asked to create a new keypair or provide a password for an existing keypair.
Keypair, SSH Agent and NX
The NX server acts as a gateway to all other NERSC systems. Users access other NERSC systems via SSH. SSH Agent is used to help simplify the authentication from the NX server to other NERSC systems so that you do not need to type a password each time a new connection is created. You can click on the "SSH Agent" menu to manage SSH Agent behaviors.
Generating a Keypair
SSH Agent requires a keypair to function. The first time you click an item on the "NERSC Systems" menu the keypair is created and installed. You need to provide a password to encrypt your private key. This password can be different from your NIM password. You can regenerate the keypair by selecting the "(Re)generate Key Pair" menu item from the "SSH Agent" Menu.
Loading the Keypair
SSH Agent can load a keypair into memory and use it as the authentication method to other NERSC systems. A keypair will be automatically loaded when a user tries to connect to a NERSC system via the menu. After the keypair is loaded it will remain active until it is removed, i.e., the user can login to any NERSC system without entering a password each time.
SSH Agent Credential Removal Policy
For security reasons the NX Server will remove the loaded keypair from the SSH Agent on any of the following occasions (meaning you will need to type the keypair password again next time you connect to a NERSC System):
- You suspend or terminate the current session;
- You are inactive for 30-minutes;
- 12 hours after the keypair is authenticated (12 hrs key lifetime).
Suspending or Terminating a NX Session
When you close the NX window (e.g., by clicking the "cross" button) a dialog box will appear providing the choice of either suspending or terminating the session.
- Suspending the session will preserve most running applications inside the session intact and allow you to reconnect to the session at a later time.
- Terminating the session will kill all the running applications inside the session and all unsaved work will be lost.
If you lose your connection to the NX server (e.g., if your internet connection is lost) NX will automatically suspend the session allowing you to reconnect to the same session while keeping the running applications intact.


