While the most common way to interact with a computing cluster such as Strelka is through the command line and batch scripts, from time to time it is useful to run programs that have a GUI (e.g., Stata, MATLAB, etc.), such as when something needs to be visualized or when it's easier to proceed through an analysis interactively. In addition, using certain programs graphically can be easier for users who might be less comfortable working in a Linux command-line environment, while still providing the greater resources available on the cluster.
It is possible to run GUI applications on both Windows and Mac systems, as well as through any web browser.
Mac and Windows
On Windows and Mac systems, displaying graphics from a remote system requires X11 forwarding, which essentially sends the graphics from the remote system back to your local system in order to actually render them. Because this relies largely on software to render the graphics, graphical performance usually will be degraded compared with running the same application locally, but the actual analyses and processing happen on the server and will often be more performant than a local system.
In order to support X11 graphical applications on a Mac, download and install XQuartz. Note that this will necessitate a reboot. Following installation, XQuartz will launch automatically when needed.
The second requirement is to enable X11 to be forwarded over SSH. This is accomplished by using the -Y flag when connecting to Strelka via SSH:
ssh -Y email@example.com
On Windows, there are two primary options to support X11, depending on the program used to connect to Strelka (PuTTY or MobaXterm).
PuTTY users should download and install XMing, and then configure PuTTY to connect the two:
MobaXterm comes with a built-in X11 server and automatically launches it when connecting via SSH. Nothing further needs to be done to support GUI applications.
Connecting to a compute node
In general, users must connect to a compute node to run applications or code; it is not generally permitted to run any application, including those requiring a GUI, from the login/head node. When creating an interactive session, users must specify the --x11 flag to enable graphics to display, as shown in this example:
Regardless of which operating system and program is used to connect to Strelka, the best way to test whether X11 forwarding is working on your local system is to launch a graphical application, the simplest of which is xclock, which displays a basic clock face.