Actions

Running software that is incompatible with host

From ALICE Documentation

Revision as of 14:46, 17 April 2020 by Dijkbvan (talk | contribs) (Created page with "=== Running software that is incompatible with host === When running software provided through modules (see Modules), you may run into errors like: $ module swap cluster...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Running software that is incompatible with host

When running software provided through modules (see Modules), you may run into errors like:

 $ module swap cluster/golett
 The following have been reloaded with a version change:
 1) cluster/victini => cluster/golett
 $ module load Python/2.7.14-intel-2018a
 $ python
 Please verify that both the operating system and the processor support Intel(R)
 MOVBE, F16C, FMA, BMI, LZCNT and AVX2 instructions.

or errors like:

 $ module swap cluster/golett
 The following have been reloaded with a version change:
    1) cluster/victini => cluster/golett
 $ module load Python/2.7.14-foss-2018a
 $ python
 Illegal instruction

When we swap to a different cluster, the available modules change so they work for that cluster. That means that if the cluster and the login nodes have a different CPU architecture, software loaded using modules might not work. If you want to test software on the login nodes, make sure the cluster/victini module is loaded (with module swap cluster/victini, see Specifying the cluster on which to run), since the login nodes and victini have the same CPU architecture.

If modules are already loaded, and then we swap to a different cluster, all our modules will get reloaded. This means that all current modules will be unloaded and then loaded again, so they’ll work on the newly loaded cluster. Here’s an example of how that would look like:

 $ module load Python/2.7.14-intel-2018a
 $ module swap cluster/swalot
 Due to MODULEPATH changes, the following have been reloaded:
   1) GCCcore/6.4.0 5) Tcl/8.6.8-GCCcore-6.4.0 9)
   iccifort/2018.1.163-GCC-6.4.0-2.28 13) impi/2018.1.163-iccifort-2018.1.163-
   GCC-6.4.0-2.28 17) ncurses/6.0-GCCcore-6.4.0
 2) GMP/6.1.2-GCCcore-6.4.0 6) binutils/2.28-GCCcore-6.4.0 10) ifort
   /2018.1.163-GCC-6.4.0-2.28 14) intel/2018a
                18) zlib/1.2.11-GCCcore-6.4.0
 3) Python/2.7.14-intel-2018a 7) bzip2/1.0.6-GCCcore-6.4.0 11) iimpi
   /2018a 15) libffi/3.2.1-GCCcore-6.4.0
 4) SQLite/3.21.0-GCCcore-6.4.0 8) icc/2018.1.163-GCC-6.4.0-2.28 12) imkl
   /2018.1.163-iimpi-2018a 16) libreadline/7.0-GCCcore-6.4.0
 The following have been reloaded with a version change:
 1) cluster/victini => cluster/swalot

This might result in the same problems as mentioned above. When swapping to a different cluster, you can run module purge to unload all modules to avoid problems (see Purging all modules)