Skip to content
Snippets Groups Projects
environment-and-modules.md 2.69 KiB
Newer Older
  • Learn to ignore specific revisions
  • Lukáš Krupčík's avatar
    Lukáš Krupčík committed
    # Environment and Modules
    
    
    Lukáš Krupčík's avatar
    Lukáš Krupčík committed
    ## Shells on Clusters
    
    
    The table shows which shells are supported on the IT4Innovations clusters.
    
    Lukáš Krupčík's avatar
    Lukáš Krupčík committed
    
    | Cluster Name    | bash | tcsh | zsh | ksh |
    | --------------- | ---- | ---- | --- | --- |
    | Salomon Cluster | yes  | yes  | yes | yes |
    
    | Barbora Cluster | yes  | yes  | yes | yes |
    
    Lukáš Krupčík's avatar
    Lukáš Krupčík committed
    | DGX-2 Cluster   | yes  | no   | no  | no  |
    
    Lukáš Krupčík's avatar
    Lukáš Krupčík committed
    
    !!! info
    
        BASH is the default shell. Should you need a different shell, contact support@it4i.cz.
    
    Lukáš Krupčík's avatar
    Lukáš Krupčík committed
    
    
    Lukáš Krupčík's avatar
    Lukáš Krupčík committed
    ## Environment Customization
    
    
    After logging in, you may want to configure the environment. Write your preferred path definitions, aliases, functions, and module loads in the .bashrc file
    
    Lukáš Krupčík's avatar
    Lukáš Krupčík committed
    
    ```console
    # ./bashrc
    
    
    # users compilation path
    export MODULEPATH=${MODULEPATH}:/home/$USER/.local/easybuild/modules/all
    
    Lukáš Krupčík's avatar
    Lukáš Krupčík committed
    
    # User specific aliases and functions
    alias qs='qstat -a'
    
    
    # load default intel compilator !!! is not recommended !!!
    ml intel
    
    Lukáš Krupčík's avatar
    Lukáš Krupčík committed
    
    # Display information to standard output - only in interactive ssh session
    if [ -n "$SSH_TTY" ]
    then
    
    Lukáš Krupčík's avatar
    Lukáš Krupčík committed
    fi
    ```
    
    !!! note
    
        Do not run commands outputting to standard output (echo, module list, etc.) in .bashrc for non-interactive SSH sessions. It breaks the fundamental functionality (SCP, PBS) of your account. Take care for SSH session interactivity for such commands as stated in the previous example.
    
    Lukáš Krupčík's avatar
    Lukáš Krupčík committed
    
    ### Application Modules
    
    
    In order to configure your shell for running particular application on clusters, we use a Module package interface.
    
    Lukáš Krupčík's avatar
    Lukáš Krupčík committed
    
    
    David Hrbáč's avatar
    David Hrbáč committed
    Application modules on clusters are built using [EasyBuild][1]. The modules are divided into the following structure:
    
    
    Lukáš Krupčík's avatar
    Lukáš Krupčík committed
    ```
    
    Lukáš Krupčík's avatar
    Lukáš Krupčík committed
     base: Default module class
     bio: Bioinformatics, biology and biomedical
     cae: Computer Aided Engineering (incl. CFD)
     chem: Chemistry, Computational Chemistry and Quantum Chemistry
     compiler: Compilers
     data: Data management & processing tools
     debugger: Debuggers
     devel: Development tools
     geo: Earth Sciences
     ide: Integrated Development Environments (e.g. editors)
     lang: Languages and programming aids
     lib: General purpose libraries
     math: High-level mathematical software
     mpi: MPI stacks
     numlib: Numerical Libraries
     perf: Performance tools
     phys: Physics and physical systems simulations
     system: System utilities (e.g. highly depending on system OS and hardware)
     toolchain: EasyBuild toolchains
     tools: General purpose tools
     vis: Visualization, plotting, documentation and typesetting
    
    Lukáš Krupčík's avatar
    Lukáš Krupčík committed
    ```
    
    !!! note
        The modules set up the application paths, library paths and environment variables for running particular application.
    
    
    The modules may be loaded, unloaded, and switched according to momentary needs. For details, see [lmod][2].
    
    David Hrbáč's avatar
    David Hrbáč committed
    
    
    David Hrbáč's avatar
    David Hrbáč committed
    [1]: software/tools/easybuild.md
    
    David Hrbáč's avatar
    David Hrbáč committed
    [2]: software/modules/lmod.md