Recommended update for High Performance Computing - compiler selection and integration

Announcement ID: SUSE-RU-2017:2970-1
Rating: moderate
References:
Affected Products:
  • HPC Module 12
  • SUSE Linux Enterprise High Performance Computing 12 SP2
  • SUSE Linux Enterprise High Performance Computing 12 SP3
  • SUSE Linux Enterprise High Performance Computing 12 SP4
  • SUSE Linux Enterprise High Performance Computing 12 SP5
  • SUSE Linux Enterprise Server 12 SP2
  • SUSE Linux Enterprise Server 12 SP3
  • SUSE Linux Enterprise Server 12 SP4
  • SUSE Linux Enterprise Server 12 SP5
  • SUSE Linux Enterprise Server for SAP Applications 12 SP2
  • SUSE Linux Enterprise Server for SAP Applications 12 SP3
  • SUSE Linux Enterprise Server for SAP Applications 12 SP4
  • SUSE Linux Enterprise Server for SAP Applications 12 SP5

An update that has seven fixes can now be installed.

Description:

This adds or updates the compiler / library selection mechanism used for the SUSE HPC stack.

  • lua-lmod: LUA based environment modules system. Update to version 7.6. (FATE#324199 bsc#1066137)
  • Update to 7.6:
    1. Support for disable <collection_name>
    2. A marked default is honored even if it is hidden
    3. Support for depends_on() as a better way to handle module dependencies.
  • Lmod 7.5:
    1. Added -T, --trace option to report restore, load, unloads and spider.
    2. Report both global and version aliases with module --terse Add Global Aliases output to module avail if they exist.
    3. Support for isVisibleHook (Thanks @wpoely86!) to control whether a module is hidden or not.
    4. Support for "spider -o spider-json" to set the key "hidden" to true or false for each module.
    5. Setting LMOD_EXACT_MATCH=yes also turns off the display of (D) with avail.
    6. CMake "shell" added.
    7. Added feature that LMOD_TMOD_FIND_FIRST. A site can decide to force FIND_FIRST instead FIND_BEST for NV module layouts. Bug Fixes:
    8. Fix bug where Lmod would be unable to load a module where NV and NVV module layouts were mixed.
    9. Fix bug where LMOD_CASE_INDEPENDENT_SORTING=yes wasn't case independent when using avail hook.
  • Lmod 7.4:
    1. Using built-in luafilesystem if system version doesn't exist or < 1.6.2
    2. Support for setting LMOD_SYSHOST with configure.
    3. Sites or users can use italic instead of dim for hidden modules
    4. Detailed spider output reports all dependencies hidden or not.
    5. Support for fish shell
    6. Move almost all configuration variables from profile.in to bash.in and similarly for tcsh. Bug Fixes:
    7. Fixed bug that caused LMOD env vars to be lower cased.
    8. Fixed bug where tcsh/csh exit status was not returned.
    9. bash and zsh tab completions works when LMOD_REDIRECT is yes.
    10. Can now conflict with a version.
    11. Fixed bug with addto a:b:c
    12. Fixed bugs in computeHashSum, generating softwarePage.
  • Lmod 7.3:
    1. The isloaded() function has been repaired.
    2. Updated French, German and Spanish translations.
    3. Two error message related to missing modules are now available for translations.
  • Lmod 7.2.1:
    1. A test suite for testing the Lmod installation has been added. See https://github.com/rtmclay/Lmod_test_suite for details.
    2. Added support for localization of errors and warnings and messages.
    3. Language Translations complete: ES, Partial: FR, ZH, DE
    4. Introduced "errWarnMsgHook" to take advantage of the new message handling. Bug Fixes:
    5. Several bug fixes related to Spider Cache and LMOD_CACHED_LOADS=1
    6. Repaired zsh tab completion.
    7. Minimize the output of Lmod's BASH_ENV when debugging Bash shell scripts.
    8. Allow colons as well as spaces for the path used in the addto command.
    9. Handles module directories that are empty or bad symlink or a .version file only.
    10. Fix bug in module describe.
  • Lmod 7.1:
    1. The commands "module --show_hidden avail" and "module --show_hidden" list now show "hidden" modules with the (H) property. Also they are displayed as dim. This works better on black backgrounds.
    2. Added the command "module --config_json" to generate a json output of Lmod's configuration.
    3. Add support for env. var. LMOD_SITE_NAME to set a site's name. This is also a configure option. Bug Fixes:
    4. Hidden module now will not be marked as default.
    5. Now check permission of a directory before trying to open it.
    6. Lmod now does not pollute the configure time value of LD_LIBRARY_PATH and LD_PRELOAD into the users env.
    7. Lmod now handles illegal values of $TERM.
  • Lmod 7.0:
    1. This version support N/V/V. (e.g. fftw/64/3.3.4). Put a .version file in with the "64" directory to tell Lmod where the version starts.
    2. Marking a default in the MODULERC is now supported.
    3. User ~/.modulerc has priority over system MODULERC.
    4. System MODULERC has priority over marking a default in the module tree.
    5. Installed Modules can be hidden by "hide-version foo/3.2.1" in any modulerc file.
    6. The system spider cache has changed. Please update your scripts to build spiderT.lua instead of moduleT.lua
  • Lmod 6.6:
    1. Now uses the value of LD_PRELOAD and LD_LIBRARY_PATH found at configure time to run all TCL progams.
    2. Now uses a custom _module_dir function for tab completion in bash for module use path<TAB>. Thanks to Pieter Neerincx!
    3. Support for LMOD_FAMILY_<name>_VERSION added.
    4. If ~/.lmod.d/.cache/invalidated exists then the user cache file(s) are ignored. When generating a user cache file ~/.lmod.d/.cache/invalidated is deleted. Bug Fixes:
    5. Correctly merges spider cache location where there are multiple lmodrc.lua files.
    6. Remove leading and trailing blanks for names in setenv, pushenv, prepend_path, etc.
    7. ml now generates error for unknown argument that start with a double minus. (e.g. ml --vers)
    8. pushenv("name","") fixed when unloading module.
    9. Make sure to regularize MODULEPATH when ingesting it for the first time.
  • Add man page and other documentation (bsc#1032970)
  • Add profile files for bash and csh (bsc#1048964)
  • Prepare for SUSE default Settings (bsc#1053237)
  • ohpc: OpenHPC RPM macro compatibility package. Updated, moved macros to lua-lmod (bsc#1048964)
  • suse-hpc: Provides RPM macros for building SUSE HPC packages. (FATE#320596 bsc#1066135)
  • gnu-compilers-hpc: Provides HPC compatible setup of the gcc toolchain, modules files and RPM macros (FATE#321705 bsc#1066132)

Patch Instructions:

To install this SUSE update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
Alternatively you can run the command listed for your product:

  • HPC Module 12
    zypper in -t patch SUSE-SLE-Module-HPC-12-2017-1841=1

Package List:

  • HPC Module 12 (noarch)
    • gnu-compilers-hpc-macros-devel-1.3-4.1
    • gnu-compilers-hpc-devel-1.3-4.1
    • ohpc-1.3-4.3.1
    • gnu-compilers-hpc-1.3-4.1
    • lua-lmod-7.6.1-4.4.1
  • HPC Module 12 (aarch64 x86_64)
    • suse-hpc-0.1-2.1

References: