Red Hat Enterprise Linux 8

Red Hat Enterprise Linux 8 is the version of Linux offered at the department. The Red Hat Enterprise Linux (RHEL) base is the only Linux platform supported by UiO and it provides UiO and the department of mathematics a unified platform between computing nodes, the Abel Cluster, servers, and desktop clients.  

There are few major changes from previous versions of Linux provided by the department that will be user facing. First things first...

My interface doesn't work!

If after logging in you lack desktop icons, menus, window lists, or you simply get a grey screen and nothing more, please contact us. This is a hopefully rare but known issue, and it is something we have known resolutions to resolve.

Maxmize and minimise buttons are missing

Open the application "gnome-tweaks" and reenable them:

Gnome-tweaks before enabling maximise and minimise buttons


Where does my (Norwegian) keyboard have dead keys?

No dead keys on a keyboard allows one to type "x^2" or "in~$X$" without pressing space after "^" or "~". This is especially useful for people who write LaTeX. However, in RHEL8 the keyboard layout "Norsk (dead keys)" seems to be missing. The solution is to go to "Settings/Region -> Language/Input Sources", hit "+", and select "Norwegian Nynorsk" to be added. This is the same keyboard layout as the keyboard already has, but under that input language, you can now choose "Norwegian (no dead keys).

Module support

Module support (see also its own documentation page) allows for selective access to software. By default, your environment offers the software provided by Red Hat as a part of the default installation, but now you can easily switch to more specific tools as needed. This is accessed by loading "modules" via "module load" on the command line. Use "module avail" to see them all.

On RHEL8 the Department of Mathematics has moved from our self-developed module environment to fully utilising the High Performance Computing environment EasyBuild. This ensures a much greater range of available software and a massive increase in development tempo. EasyBuild through its toolchain design also ensures that current modules can be rebuilt for other platforms in the future.

This does however imply that there are some large changes from previous offerings at the department. For the following modules please note how the modules are built with a toolchain, typically either foss or fosscuda, where the latter implies that the module is expected to provide CUDA bindings.

Removal of python-ml

Under Red Hat Enterprise Linux 7 the department attempted to offer a unified machine learning module for several different python libraries. The idea was to have TensorFlow, PyTorch, Keras, Theano, SciKit-learn, and more bundled together into one massive environment.

This module became very handy for users, but it became a nightmare to maintain. Different versions of different libraries required different dependencies, so there was a substantial effort put into keeping the module functional – to the point of patching libraries manually.

With the adaptation of EasyBuild, this module is made obsolete by specific modules for each library, such as for TensorFlow (which now comes in more versions and with more versions of CUDA):

terjekv@ninhursaga:~$ module avail TensorFlow

---------- /opt/uio/modules/rhel8/easybuild/modules/lib -----------
   TensorFlow/2.1.0-fosscuda-2019b-Python-3.7.4  (D)

   D:  Default Module

Use "module spider" to find all possible modules.
Use "module keyword key1 key2 ..." to search for all possible
modules matching any of the "keys".

Renaming of Anaconda modules

Anaconda has changed name from python/anaconda* to anaconda/release, as such:

terjekv@ninhursaga:~$ module avail anaconda

---------- /opt/uio/modules/rhel8/easybuild/modules/lang ----------

Use "module spider" to find all possible modules.
Use "module keyword key1 key2 ..." to search for all possible
modules matching any of the "keys".

More extensive R support, but R is not loaded by default

We now have a number of versions of R depending on your needs, but please note that none of them are loaded by default (see below). The R builds now come with a lot of extensions (the default module has around 750 of them), but let us know if anything is missing.

terjekv@ninhursaga:~$ module avail 'R/3'

------- /opt/uio/modules/rhel8/easybuild/modules/lang -------
   R/3.6.0-foss-2019a        R/3.6.0-fosscuda-2019a
   R/3.6.1-fosscuda-2019b    R/3.6.2-foss-2019a (D)

   D:  Default Module

Use "module spider" to find all possible modules.
Use "module keyword key1 key2 ..." to search for all possible modules matching any of the "keys".

There is also an R-keras module both with and without CUDA.

terjekv@ninhursaga:~$ module avail 'R-keras'

------- /opt/uio/modules/rhel8/easybuild/modules/math -------
   R-keras/ (D) 

   D:  Default Module

Use "module spider" to find all possible modules.
Use "module keyword key1 key2 ..." to search for all possible modules matching any of the "keys".

There is also the option of loading R additional extensions to R, that for one reason or another is not part of the core R package, like bossMaps, rgdal, and rgeos. These packages rely on a very substantial set of dependencies so they require explicit loading:

module load R
module load rgdal
module load rgeos
module load bossMaps

However, as bossMaps depends on rgdal and rgeos, and they both depend on R, one can load bossMaps directly, and then start rstudio:

module load bossMaps

Some applications have been moved from modules to core packages

TexMaker, TexStudio, LyX, and several other packages have moved from modules to core packages akin to Firefox, Chrome, Atom, and so on. That means you should be able to use them directly from the menus. 

In the case of RStudio, even though it is available in the menus, you will want to load an R module first, and then start RStudio from that terminal (with the command rstudio) to get access to R.

No modules are loaded by default

The department no longer loads any modules by default. This may change going forward, but  for some users, our default module list caused a fair few issues. One option is to load modules via the modulerc-file in your home directory as explained in our user environment documentation, but we generally recommend against doing this. Loading modules on demand is much less likely to cause problems.

Official Documentation

Red Hat offers a pleatora of official documentation:

By Lucy Karpen, Terje Kvernes
Published Jan. 18, 2020 10:25 PM - Last modified Jan. 28, 2020 9:07 AM