Blog

Open OnDemand Alternative to High-Performance Computing (HPC)

My experience with ThinLinc vs Open OnDemand: choosing the right HPC remote access solution

Oct, 16, 24
Written by: Jean Zagonel

As someone who works daily with ThinLinc and has had many discussions with users and sysadmins alike, I’ve often been asked about the difference between ThinLinc and Open OnDemand when it comes to graphical remote access for HPC. Both tools are widely used, but they serve different needs, and their real value shines when you understand how users and sysadmins interact with them. Let me share some personal insights from my experiences working with customers and understanding both platforms.

The user experience: ThinLinc—a familiar desktop

I remember one conversation I had with a researcher at an HPC center who was struggling with their previous solution for remote access. They needed to keep their environment open for long periods—sometimes days—but the system they were using didn’t support persistent sessions. This was a real pain because they had to restart their work every time they logged back in.

That’s where ThinLinc came in. I walked them through the typical ThinLinc workflow: you log in from your client (Windows, macOS, Linux, or even a browser), connect to the ThinLinc node, and voilà—there’s your remote Linux desktop, fully accessible. What really impressed this user was how persistent sessions felt like a natural extension of working on their local machine. You don’t need to think about how long you’ll need the session, you just keep it open—just like you would with your laptop at home.

Users have consistently told me that ThinLinc’s persistence is a game-changer for long-term projects. You can start a task, disconnect, and come back days later to find everything exactly as you left it. This approach feels more intuitive, especially since most of us don’t plan exactly how long we’ll need our desktop. We just use it as long as necessary.

Sysadmin perspective: the power behind ThinLinc

From a sysadmin’s standpoint, ThinLinc offers an efficient way to manage resources without overloading the compute nodes. I’ve seen this firsthand while working with clients who need to balance multiple users on a few powerful machines. ThinLinc helps by running the desktops on a login node, leaving the heavy lifting to the compute nodes when it’s needed—like for advanced simulations or heavy computations.

Another thing that’s often overlooked is ThinLinc’s open-source foundation. ThinLinc is about 80% open-source, with TigerVNC and noVNC playing a key role. In fact, Cendio, the company behind ThinLinc, is a major contributor to these technologies. This makes ThinLinc not just a powerful tool but also a highly adaptable one for any sysadmin familiar with Linux environments.

Architecture overview: ThinLinc vs Open OnDemand

Before diving into Open OnDemand, it’s important to understand how both tools fit within an HPC architecture. In ThinLinc, the architecture typically looks like this:

  • Client computer (Windows, macOS, Linux, or browser) -> ThinLinc Node (Login Node) -> Linux desktop, applications, and files -> Submit jobs -> Compute Nodes.

ThinLinc allows users to handle many of their tasks directly on the ThinLinc node, which can be more powerful than a standard desktop. For jobs requiring advanced computing, users can submit tasks to compute nodes from within the ThinLinc session.

In contrast, Open OnDemand follows a more transactional architecture:

  • Client computer (browser) -> Open OnDemand service -> Submit jobs -> Compute Nodes.

Open OnDemand users primarily run applications and submit jobs directly to the compute nodes through the web interface. It’s optimized for task-based workflows, where users open an application, run a job, and then close it out. This architecture is efficient for shorter, well-defined tasks but lacks the persistent desktop feature that ThinLinc offers.

The user experience: Open OnDemand—quick and transactional

Now let’s look at Open OnDemand. One of our customers at a university uses Open OnDemand almost exclusively for tools like Jupyter Notebooks and RStudio. Their workflow is more transactional—they log into the Open OnDemand portal, select the application they need, and start a job. Everything runs smoothly, and since the sessions aren’t persistent, they don’t need to worry about leaving things open for days.

Open OnDemand works perfectly for short, quick tasks where users know what they need in advance. The interface is easy to use, and within a few clicks, the job is up and running on the compute nodes. For many researchers, this is all they need—a quick, reliable way to submit jobs and get results.

Sysadmin perspective: efficiency with Open OnDemand

From a sysadmin perspective, Open OnDemand is an excellent way to simplify job submissions. No more complex command-line interactions—users can just select what they need through a web interface, and the system handles the rest. One thing worth noting is that Open OnDemand streams applications using noVNC, the same technology that powers ThinLinc’s browser-based access. So, in a sense, both tools benefit from the reliability and flexibility of noVNC.

However, the key difference is how resources are used. With Open OnDemand, every application runs directly on the compute nodes, which can sometimes feel less efficient, especially for lighter tasks. I’ve seen this in action at several HPC centers—some users feel the compute nodes are underutilized by tasks that could easily run on a login node or lighter resources.

Conclusion: my thoughts on the best approach

From my experience, the best solution is often a combination of both tools. ThinLinc is ideal for users who need persistent desktops and want to work over long periods without interruptions. Open OnDemand, on the other hand, is great for quick, transactional jobs that can be run and closed out in a short session. Together, they provide a flexible, scalable solution that meets different user needs and keeps HPC resources running efficiently.

Additionally, Open OnDemand can complement the ThinLinc node, serving as an alternative method to launch jobs from within the research desktop environment. Just like the GFX launcher or pre-determined Slurm shortcuts on the desktop, Open OnDemand offers another way to submit jobs to the compute nodes, making it a powerful addition to ThinLinc’s persistent desktop capabilities.