Hprc banner tamu.png

Difference between revisions of "SW:Modules"

From TAMU HPRC
Jump to: navigation, search
Line 56: Line 56:
 
         ABAQUS/6.13.5-linux-x86_64
 
         ABAQUS/6.13.5-linux-x86_64
 
         ABAQUS/6.14.2-linux-x86_64
 
         ABAQUS/6.14.2-linux-x86_64
 +
 +
 +
[[Category:Software]]

Revision as of 11:16, 11 January 2017

The Modules System

Introduction

The Modules system organizes the multitude of packages we have installed on our clusters so that they can be easily maintained and used. More specifically, Modules configure appropriately the execution environment of each package (and version).

Most non-OS software is organized by the Modules system. This includes all compilers and associated libraries. Each package has a corresponding modulefile or simply a module where the appropriate actions are specified (in a prescibed format) in setting up its execution environment.

Notify the help desk if you cannot locate the module appropriate for an application.

Module Commands

To find out what software packages are available under the Modules system use one of the following two commands:

[NetID@cluster ~]$ module spider [packageName]
[NetID@cluster ~]$ module avail [packageName] 

In order to use some software on our clusters, the module for the software must be loaded first. To load the module for a software package, use the following command:

[NetID@cluster ~]$ module load [packageName]

Note: The specification of packageName in the load command is case sensitive and it should include a specific version, although it is not necessary. No packages are preloaded by default.

To find out what packages/modules you have loaded on your current session, use the following command:

[NetID@cluster ~]$ module list

To remove one module from your current session, use the following command:

[NetID@cluster ~]$ module unload [packageName]

To remove ALL modules from your current session, use the following command:

[NetID@cluster ~]$ module purge

Note: It is very important to remove all modules when switching between software and compilers. Mixing modules and versions is NOT a good idea and can cause many problems.
Note: The abbreviation ml can be used instead of module, module load, or module list depending on the situation. This can be seen in the examples below.

Examples

The following example shows how to load, list, and remove modules using a specific software example (ABAQUS in this case):

[NetID@cluster ~]$ ml ABAQUS    # module abbreviated as ml
[NetID@cluster ~]$ ml           # module list abbreviated as ml

Currently Loaded Modules:
  1) ABAQUS/6.14.2-linux-x86_64

[NetID@cluster ~]$ ml purge     # module abbreviated as ml
[NetID@cluster ~]$ ml           # module list abbreviated as ml
No modules loaded

The following example shows the output of spider for a specific software example (ABAQUS in this case):

[NetID@cluster ~]$ ml spider ABAQUS

--------------------------------------------------------------------------------------------------------------------------
 ABAQUS:
--------------------------------------------------------------------------------------------------------------------------
    Description:
      Finite Element Analysis software for modeling, visualization and best-in-class implicit and explicit dynamics FEA.
      - Homepage: http://www.simulia.com/products/abaqus_fea.html 

     Versions:
        ABAQUS/6.12.1-linux-x86_64
        ABAQUS/6.13.5-linux-x86_64
        ABAQUS/6.14.2-linux-x86_64