Graphical applications on Pawsey supercomputers are typically based on the X Window System (also known as X11, or shortened to simply X): http://www.x.org. Typical examples of these applications are debuggers and profilers. Here we explain how to use the X forwarding option of SSH to view and control these applications remotely.
Although X can be used remotely without SSH, it is insecure and blocked by most firewalls. SSH X forwarding fixes both these issues and also sets automatically the DISPLAY environment variable.
As an alternative to X over SSH, you can use the higher performance VNC over SSH, which performs faster for long distance connections. See the separate documentation for details.
Never use the login nodes for memory-intensive or cpu-intensive activities. For these, you should always use the compute nodes.
Preparation for MacOS
Current MacOS operating systems do not have the X windows system. Install the XQuartz package to allow for SSH with X forwarding on macOS systems: http://www.xquartz.org/
After installing XQuartz, you may also need to indicate the path where the "xauth: program is. For this, you need to edit the file ~/.ssh/config and add the location path under "Host *" entry. Typically:
For Linux, MacOS and Windows (MobaXterm), open a local terminal window (as explained in Logging in with SSH) and execute ssh with the X forwarding option "-X":
Some sites recommend using the "-Y" flag instead. While this can fix some compatibility issues, the "-X" flag is more secure.
You can test this option by running the "xclock" command on Zeus:
and the graphical clock running on Zeus should appear in your screen:
X forwarding over SSH does not perform well over long distances. The user can try to improve performance over long distances with SSH compression.This can be activated by using the "-C" option in the ssh command line:
As an alternative to the command line option, you can add the following line to ~/.ssh/config
(SSH compression will not make too much difference for short distances.)
A better alternative to improve performance over long distances is the usage of VNC over SSH, but it requires more effort to set up. (See Use graphical (GUI) Programs with VNC over SSH).