Windows client¶
Getting ready to request an account¶
Before requesting an account, you need to generate a pair of SSH keys. One popular way to do this on Windows is using the freely available PuTTY client which you can then also use to log on to the clusters, see the instructions for generating a key pair with PuTTY.
Another popular way is using the (also freely available) MobaXterm client, see the instructions for generating a key pair with MobaXterm.
Connecting to the cluster¶
Text-mode session using an SSH client¶
PuTTY is a simple-to-use and freely available GUI SSH client for Windows that is easy to set up.
Pageant can be used to manage active keys for PuTTY, WinSCP, FileZilla as well as the NX client for Windows so that you don’t need to enter the passphrase all the time. Pageant is part of the PuTTY distribution.
To establish network communication between your local machine and a compute node of a cluster you have to create an SSH tunnel using PuTTY . This is also useful to run client software on your Windows machine, e.g., ParaView or Jupyter notebooks that run on a compute node.
Transfer data using Secure FTP (SFTP) clients¶
Two GUI clients SFTP clients for Windows are recommended:
Display graphical programs¶
X server¶
You can install a so-called X server: Xming. X is the protocol that is used by most Linux applications to display graphics on a local or remote screen.
NX client¶
On the KU Leuven/UHasselt clusters it is also possible to use the NX Client to log on to the machine and run graphical programs. Instead of an X server, another piece of client software is required.
TurboVNC¶
The KU Leuven/UHasselt and UAntwerp clusters also offer support for visualization software through TurboVNC. VNC renders images on the cluster and transfers the resulting images to your client device.
- On the KU Leuven/UHasselt clusters, TurboVNC is supported on the visualization nodes.
- On the UAntwerp clusters, TurboVNC is supported on all regular login nodes (without OpenGL support) and on the visualization node of Leibniz (with OpenGL support through VirtualGL). See the page “Remote visualization @ UAntwerp” for instructions.
Alternatives¶
MobaXterm is a free and easy to use SSH client for Windows that has text-mode, a graphical file browser, an X server, an SSH agent, and more, all in one. No installation is required when using the Portable edition. See detailed instructions on how to setup MobaXterm.
If you install the free UNIX emulation layer Cygwin with the necessary packages, you can use the same OpenSSH client as on Linux systems and all pages about SSH and data transfer from the Linux client pages apply.
The Windows Subsystem for Linux can be an alternative if you are using Windows 10 build 1607 or later. The available Linux distributions have SSH clients, so you can refer to all pages about SSH and data transfer from the Linux client pages as well.
Programming tools¶
Warning
Although it is convenient to develop software on your local machine, you should bear in mind that the hardware architecture is likely to differ substantially from the VSC HPC hardware. Therefore it is recommended that performance optimizations are done on the target system.
Cygwin¶
By installing the UNIX emulation layer Cygwin with the appropriate packages you can mimic very well the VSC cluster environment (at least with the FOSS toolchain). Cygwin supports the GNU compilers and also contains packages for OpenMPI (look for “openmpi”) and some other popular libraries (FFTW, HDF5, …). As such it can turn your Windows PC in a computer that can be used to develop software for the cluster if you don’t rely on too many external libraries (which may be hard to install). This can come in handy if you sometimes need to work off-line. If you have a 64-bit Windows system (which most recent computers have), it is best to go for the 64-bit version of Cygwin. After all, the VSC-clusters are also running a 64-bit OS.
Windows Subsystem for Linux (LWS)¶
If you’re running Windows 10 build 1607 (Anniversary Edition) or later, you may consider running the “Windows Subsystem for Linux” that will give you a Ubuntu-like environment on Windows and allow you to install some Ubuntu packages. In build 1607 this is still considered experimental technology and we offer no support.
Microsoft Visual Studio¶
Microsoft Visual Studio can also be used to develop OpenMP or MPI programs. If you do not use any Microsoft-specific libraries but stick to plain C or C++, the programs can be recompiled on the VSC clusters. Microsoft is slow in implementing new standards though. In Visual Studio 2015, OpenMP support is still stuck at version 2.0 of the standard. An alternative is to get a license for the Intel compilers which plug into Visual Studio and give you the best of both worlds, the power of a full-blown IDE and compilers that support the latest technologies in the HPC world on Windows.
Eclipse¶
Eclipse is a popular multi-platform Integrated Development Environment (IDE) very well suited for code development on clusters.
- Read our Eclipse introduction to find out why you should consider using Eclipse if you develop code and how to get it.
- You can use Eclipse on the desktop as a remote editor for the cluster.
- You can use Eclipse on the desktop to access files in a subversion repository on the cluster.
- You can combine the remote editor feature with version control from Eclipse, but some care is needed, and here’s how to do it.
On Windows Eclipse relies by default on the Cygwin toolchain for its compilers and other utilities, so you need to install that too.
Version control¶
Information on tools for version control (git and subversion) is available on the Version control systems introduction page.
Information about using the TortoiseSVN Subversion client with the VSC systems.