X11 Forwarding and GUI Applications

Overview

Many applications on the supercomputer operate within a terminal environment, while others utilize a Graphical User Interface (GUI) for interaction, like Gaussian View, VMD, or even basic applications such as Firefox. X11 forwarding enables the use of GUI-based applications by transmitting the display to your local machine. If you are using a graphical application, you will need to employ one of the solutions provided below or an equivalent alternative.

X11 Forwarding

When accessing supercomputers via SSH, it's important to use an SSH client that supports X11 forwarding. For MacOS systems, xQuartz is the most commonly used solution, while MobaXterm is a popular choice for Windows. Additionally, Windows Subsystem for Linux (WSL) also supports X11 forwarding. To enable X11 forwarding with your SSH client, just add the "-X" flag to your SSH command.

ssh -X asurite@sol.asu.edu or ssh -X asurite@phx.asu.edu

Web Portal

Rather than using X11 forwarding, you can also connect to the supercomputer using an interactive virtual desktop form the web portal. This allows GUI applications to launch within a windowing system on the supercomputer as opposed to forwarding the GUI over SSH. Simply launch a desktop session from the web portal, and X11 will work automatically.

Advanced Graphics (OpenGL / WebGL)

Some applications require advanced graphical capabilities using OpenGL. The hardware within the supercomputers is server-grade hardware that does not natively support OpenGL. To address this, we need to load a module to emulate OpenGL in order to achieve decent, though not perfect, performance. This can be done by utilizing the Mesa3D libraries, which encompass open source implementations of OpenGL, OpenGL ES, Vulkan, and OpenCL.

module load mesa-22.0.2-gcc-11.2.0 gcc-11.2.0-gcc-11.2.0

Note: This only applies to your current terminal. If you are using the virtual desktop in the web portal, you will need to open a terminal, load the Mesa and GCC modules, and launch the GUI application from the same terminal.

For Example:

module load mesa-22.0.2-gcc-11.2.0 gcc-11.2.0-gcc-11.2.0 firefox

If using WebGL in Firefox, you may need to force WebGL support.

  1. In the address bar, type about:config (accept the risk and continue)

  2. In the list, search for webgl.force and double click "webgl.force-enable"

image-20230410-211422.png

 

Additional Help

We also offer a series of https://asurc.atlassian.net/wiki/pages/createpage.action?spaceKey=RC&title=%5E%5EEducational%20Opportunities%20and%20Workshops&linkCreation=true&fromPageId=1994883158.