diff --git a/software/applications/amber.rst b/software/applications/amber.rst index d98ef01..351e695 100644 --- a/software/applications/amber.rst +++ b/software/applications/amber.rst @@ -12,12 +12,11 @@ On Bede, AMBER is made available through the :ref:`HECBioSim Project `__. diff --git a/software/applications/gromacs.rst b/software/applications/gromacs.rst index 400f869..c0afc98 100644 --- a/software/applications/gromacs.rst +++ b/software/applications/gromacs.rst @@ -17,10 +17,8 @@ On Bede, GROMACS is made available through the :ref:`HECBioSim Project `__. diff --git a/software/applications/namd.rst b/software/applications/namd.rst index 82bf3d0..96b37f2 100644 --- a/software/applications/namd.rst +++ b/software/applications/namd.rst @@ -13,11 +13,12 @@ On Bede, NAMD is made available through the :ref:`HECBioSim Project `__. diff --git a/software/applications/openmm.rst b/software/applications/openmm.rst index 0168325..a8739fe 100644 --- a/software/applications/openmm.rst +++ b/software/applications/openmm.rst @@ -14,6 +14,7 @@ On Bede, OpenMM is made available through the :ref:`HECBioSim Project `__ to isolate your python environment(s) from the system-wide environment. This will allow you to install your own python dependencies via pip. diff --git a/software/applications/pytorch.rst b/software/applications/pytorch.rst index 0f026b3..7e5302c 100644 --- a/software/applications/pytorch.rst +++ b/software/applications/pytorch.rst @@ -56,7 +56,7 @@ Installation via the upstream Conda channel is not currently possible, due to th .. note:: The :ref:`Open-CE` distribution of PyTorch does not include IBM technologies such as DDL or LMS, which were previously available via :ref:`WMLCE`. - WMLCE is not supported on RHEL 8. + WMLCE is no longer supported. Further Information diff --git a/software/applications/rust.rst b/software/applications/rust.rst index 3b8f2c7..3768002 100644 --- a/software/applications/rust.rst +++ b/software/applications/rust.rst @@ -6,7 +6,7 @@ Rust The `Rust Programming Language `__ is a general purpose programming language designed for performance and safety. More information on features of the Rust programming language can be found on the `rustlang.org website `__. -On Bede, Rust is available without the need to load any software modules under RHEL 8. +On Bede, Rust is available without the need to load any software modules. The central installation includes: @@ -21,12 +21,7 @@ To find the version of rust currently available, run: rustc --version -.. note:: - - Rust is not centrally installed on RHEL 7 images. - - -If you require a different version of ``rustc`` than provided by the RHEL 8 Bede image, it should be possible to install locally into your ``/users`` directory, the ``/project`` or ``/nobackup`` file stores to avoid filling your users directory. +If you require a different version of ``rustc`` than provided by default on Bede, it should be possible to install locally into your ``/users`` directory, the ``/project`` or ``/nobackup`` file stores to avoid filling your users directory. These methods have not been tested on Bede. This should be possible via :ref:`Spack` via the `rust spack package `__ which provides the rust programming language toolchain. diff --git a/software/applications/tensorflow.rst b/software/applications/tensorflow.rst index eba6ffb..93491e0 100644 --- a/software/applications/tensorflow.rst +++ b/software/applications/tensorflow.rst @@ -52,7 +52,7 @@ For example, to verify that TensorFlow is available and print the version: .. note:: The :ref:`Open-CE` distribution of TensorFlow does not include IBM technologies such as DDL or LMS, which were previously available via :ref:`WMLCE`. - WMLCE is not supported on RHEL 8. + WMLCE is no longer supported. Further Information ~~~~~~~~~~~~~~~~~~~ diff --git a/software/applications/wmlce.rst b/software/applications/wmlce.rst index 8c0eb9e..a3c31bd 100644 --- a/software/applications/wmlce.rst +++ b/software/applications/wmlce.rst @@ -6,8 +6,9 @@ IBM WMLCE (End of Life) .. warning:: WMLCE was archived by IBM on 2020-11-10 and is no longer updated, maintained or supported. + It is no longer available on bede due to the migration away from RHEL 7. - It has been replaced by :ref:`Open Cognitiive Environment (Open-CE) `, a community driven software distribution for machine learning. + It has been replaced by :ref:`Open Cognitive Environment (Open-CE) `, a community driven software distribution for machine learning. Open-CE does not not support all features of WMLCE. @@ -15,13 +16,6 @@ IBM WMLCE (End of Life) Alternatively, consider moving to upstream sources for python packages such as :ref:`Tensorflow ` or :ref:`PyTorch` where available. -.. warning:: - - WMLCE 1.7 only supported RHEL 7.6 and 7.7. - It is unsupported on RHEL 8, and may not behave correctly once the RHEL 8 migration has completed. - - Consider migrating to :ref:`Open Cognitiive Environment (Open-CE) `. - `IBM WMLCE `__ was the *Watson Machine Learning Community Edition* - a software distribution for machine learning which included IBM technology previews such as `Large Model Support for TensorFlow `__. WMLCE is also known as PowerAI. @@ -117,7 +111,7 @@ On Bede, this command is ``bede-ddlrun``. For example: .. warning:: - IBM DDL is not supported on RHEL 8 and will likely error on use. + IBM DDL is no longer supported and will likely error on use. Consider migrating away from DDL via :ref:`Open-CE` and regular ``bede-mpirun`` diff --git a/software/compilers/gcc.rst b/software/compilers/gcc.rst index da23bc1..8f2cb9f 100644 --- a/software/compilers/gcc.rst +++ b/software/compilers/gcc.rst @@ -10,23 +10,14 @@ offload support: .. code-block:: bash + module load gcc/12.2 module load gcc/10.2.0 module load gcc/8.4.0 -The version of GCC which is distributed with RHEL is also packaged as the ``gcc/native`` module. -On RHEL 7 nodes, this is GCC ``4.8.5``. -On RHEL 8 nodes, this is GCC ``8.5.0``. +The version of GCC which is distributed with RHEL is also packaged as the ``gcc/native`` module, providing GCC ``8.5.0``. This does not include CUDA offload support. .. code-block:: bash - # The GCC version provided by this module is RHEL specific. module load gcc/native -.. note:: - Note that the default GCC provided by Red Hat Enterprise Linux 7 (4.8.5) - is quite old, will not optimise for the POWER9 processor (either use - POWER8 tuning options or use a later compiler), and does not have - CUDA/GPU offload support compiled in. The module ``gcc/native`` has been - provided to point to this copy of GCC. - For further information please see the `GCC online documentation `__. diff --git a/software/compilers/ibmxl.rst b/software/compilers/ibmxl.rst index 06b483e..3448311 100644 --- a/software/compilers/ibmxl.rst +++ b/software/compilers/ibmxl.rst @@ -1,15 +1,10 @@ IBM XL ------ -The `IBM XL C and C++ compiler family `__ and `IBM XL Fortran compiler family `__ are available on Bede. - -On RHEL 7, the IBM compilers are part of the default environment. - -On RHEL 8, the IBM compilers are provided by the ``xl`` module family: +The `IBM XL C and C++ compiler family `__ and `IBM XL Fortran compiler family `__ are available on Bede, provided by the ``xl`` module family: .. code-block:: bash - # RHEL 8 Only module load xl module load xl/16.1.1 diff --git a/software/compilers/nvcc.rst b/software/compilers/nvcc.rst index 7906c47..6ec5651 100644 --- a/software/compilers/nvcc.rst +++ b/software/compilers/nvcc.rst @@ -7,18 +7,15 @@ CUDA and NVCC Unlike other compiler modules, the cuda modules do not set ``CC`` or ``CXX`` environment variables. This is because ``nvcc`` can be used to compile device CUDA code in conjunction with a range of host compilers, such as GCC or LLVM clang. - .. code-block:: bash module load cuda - # RHEL 8 only + module load cuda/12.0.1 module load cuda/11.5.1 module load cuda/11.4.1 module load cuda/11.3.1 module load cuda/11.2.2 - - # RHEL 7 or RHEL 8 module load cuda/10.2.89 module load cuda/10.1.243 @@ -45,6 +42,10 @@ CUDA ``>= 11.0`` also accepts * ``c++17`` +CUDA ``>= 12.0`` also accepts + +* ``c++20`` + The default C++ dialect depends on the host compiler, with ``nvcc`` matching the default dialect by the host c++ compiler. .. code-block:: bash @@ -198,7 +199,7 @@ e.g. to use ``xlc++`` as the host compiler for the default CUDA module: .. code-block:: bash - module load xl # RHEL 8 only + module load xl module load cuda nvcc -ccbin $(which xlc++) --std=c++11 -o main main.cu diff --git a/software/compilers/nvhpc.rst b/software/compilers/nvhpc.rst index fe1ca7b..7abd09b 100644 --- a/software/compilers/nvhpc.rst +++ b/software/compilers/nvhpc.rst @@ -14,9 +14,8 @@ This module also provides the `NCCL `__ or open a `Pull Request `__ on GitHub. diff --git a/software/libraries/blas-lapack.rst b/software/libraries/blas-lapack.rst index 0bef279..8bf41e8 100644 --- a/software/libraries/blas-lapack.rst +++ b/software/libraries/blas-lapack.rst @@ -20,6 +20,6 @@ Or for OpenBLAS: .. code-block:: bash - module load gcc openblas/6.2 + module load gcc openblas/0.3.10 $CC -o myprog myprog.c $N8CIR_LINALG_CFLAGS diff --git a/software/libraries/boost.rst b/software/libraries/boost.rst index aaabc38..c8fffa7 100644 --- a/software/libraries/boost.rst +++ b/software/libraries/boost.rst @@ -8,4 +8,5 @@ A centrally-installed version is available via the modules system, which can be .. code-block:: bash module load boost + module load boost/1.81.0 module load boost/1.74.0 diff --git a/software/libraries/mpi.rst b/software/libraries/mpi.rst index 04f3d73..af134f9 100644 --- a/software/libraries/mpi.rst +++ b/software/libraries/mpi.rst @@ -31,8 +31,6 @@ MVAPICH2 is provided by the `mvapich2` module(s): .. code-block:: bash - module load mvapich2 - module load mvapich2/2.3.5 module load mvapich2/2.3.5-2 .. note:: @@ -41,15 +39,12 @@ MVAPICH2 is provided by the `mvapich2` module(s): For codes that require these features, we currently recommend using the ``mvapich2`` module. -.. note:: - - The ``mvapich2/2.3.5-2`` module should be used rather than ``mvapich2/2.3.5``, which is only provided to support existing projects which depend on it. - - Under RHEL 8, the ``mvapich2/2.3.5`` module is removed. - - We also offer the ``mvapich2-gdr/2.3.6`` module. This is a version of MVAPICH2 that is specifically designed for machines like Bede, providing optimised communications directly between GPUs - even when housed in different compute nodes. Unlike the ``openmpi`` and ``mvapich2`` modules, ``mvapich2-gdr`` does not adapt itself to the currently loaded compiler and CUDA modules. This version of the software was built using GCC 8.4.1 and CUDA 11.3. +.. code-block:: bash + + module load mvapich2-gdr/2.3.6 gcc/8.4.0 cuda/11.3.1 + Further information can be found on the `MVAPICH2-GDR `__ pages. diff --git a/software/libraries/plumed.rst b/software/libraries/plumed.rst index 7b71e7b..2a0cce2 100644 --- a/software/libraries/plumed.rst +++ b/software/libraries/plumed.rst @@ -19,11 +19,13 @@ On Bede, PLUMED is made available through the :ref:`HECBioSim Project `__. diff --git a/software/tools/index.rst b/software/tools/index.rst index 04bc007..b9ed73f 100644 --- a/software/tools/index.rst +++ b/software/tools/index.rst @@ -3,7 +3,7 @@ Tools ================ -These pages list developer tools available on bessemer and / or instructions on how to install and use tools which are not centrally installed. +These pages list developer tools available on Bede and / or instructions on how to install and use tools which are not centrally installed. If you notice any omissions, errors or have any suggested changes to the documentation please create an `Issue `__ or open a `Pull Request `__ on GitHub. diff --git a/software/tools/make.rst b/software/tools/make.rst index 112609d..2d77206 100644 --- a/software/tools/make.rst +++ b/software/tools/make.rst @@ -8,7 +8,7 @@ Make Make gets its knowledge of how to build your program from a file called the makefile, which lists each of the non-source files and how to compute it from other files. When you write a program, you should write a makefile for it, so that it is possible to use Make to build and install the program. -On Bede, ``make 3.82`` is provided by default (``4.2`` under RHEL8). +On Bede, ``make 4.2`` is provided by default. A more recent version of ``make``, is provided by the ``make`` family of modules. .. code-block:: bash diff --git a/software/tools/nsight-compute.rst b/software/tools/nsight-compute.rst index 919f035..c8acb1d 100644 --- a/software/tools/nsight-compute.rst +++ b/software/tools/nsight-compute.rst @@ -13,19 +13,19 @@ You should use a versions of ``ncu`` that is at least as new as the CUDA toolkit .. code-block:: bash - module load nsight-compute/2022.1.0 # provides nsys 2022.1.0 - module load nsight-compute/2020.2.1 # provides nsys 2020.2.1 - - # RHEL 7 only - module load nvhpc/20.9 # provides nsys 2020.1.0 - - # RHEL 8 only - module load cuda/11.5.1 # provides nsys 2021.3.1 - module load cuda/11.4.1 # provides nsys 2021.2.1 - module load cuda/11.3.1 # provides nsys 2021.1.1 - module load cuda/11.2.2 # provides nsys 2020.3.1 - module load nvhpc/22.1 # provides nsys 2021.3.0 - module load nvhpc/21.5 # provides nsys 2021.1.0 + module load nsight-compute/2022.4.1 # provides ncu 2022.4.1 + module load nsight-compute/2022.1.0 # provides ncu 2022.1.0 + module load nsight-compute/2020.2.1 # provides ncu 2020.2.1 + + module load cuda/12.0.1 # provides ncu 2022.4.1 + module load cuda/11.5.1 # provides ncu 2021.3.1 + module load cuda/11.4.1 # provides ncu 2021.2.1 + module load cuda/11.3.1 # provides ncu 2021.1.1 + module load cuda/11.2.2 # provides ncu 2020.3.1 + + module load nvhpc/23.1 # provides ncu 2022.4.0 + module load nvhpc/22.1 # provides ncu 2021.3.0 + module load nvhpc/21.5 # provides ncu 2021.1.0 Consider compiling your CUDA application using ``nvcc`` with ``-lineinfo`` or ``--generate-line-info`` to generate line-level profile information. diff --git a/software/tools/nsight-systems.rst b/software/tools/nsight-systems.rst index 126ebd9..f48e1a9 100644 --- a/software/tools/nsight-systems.rst +++ b/software/tools/nsight-systems.rst @@ -14,17 +14,17 @@ You should use a versions of ``nsys`` that is at least as new as the CUDA toolki .. code-block:: bash + module load nsight-systems/2023.1.1 # provides nsys 2023.1.1 module load nsight-systems/2022.1.1 # provides nsys 2022.1.1 module load nsight-systems/2020.3.1 # provides nsys 2020.3.1 - # RHEL 7 only - module load nvhpc/20.9 # provides nsys 2020.3.1 - - # RHEL 8 only + module load cuda/12.0.1 # provides nsys 2022.4.2 module load cuda/11.5.1 # provides nsys 2021.3.3 module load cuda/11.4.1 # provides nsys 2021.2.4 module load cuda/11.3.1 # provides nsys 2021.1.3 module load cuda/11.2.2 # provides nsys 2020.4.3 + + module load nvhpc/23.1 # provides nsys 2022.5.1 module load nvhpc/22.1 # provides nsys 2021.5.1 module load nvhpc/21.5 # provides nsys 2021.2.1 diff --git a/software/tools/singularity.rst b/software/tools/singularity.rst index a091ffd..52252b8 100644 --- a/software/tools/singularity.rst +++ b/software/tools/singularity.rst @@ -13,13 +13,10 @@ Container platforms allow users to create and use container images, which are se As Bede is a Power 9 Architecture (``ppc64le``) machine, containers created on more common ``x86_64`` machines may not be compatible. -Under RHEL 8, Singularity is provided in the default environment, and can be used without loading any modules. +Singularity-ce is provided by default, and can be used without loading any modules. -Under RHEL 7, singularity is provided by a module: +.. code-block::bash -.. code-block:: bash - - module load singularity - module load singularity/3.6.4 + singularity --version For more information on how to use singularity, please see the `Singularity Documentation `__.