-
Notifications
You must be signed in to change notification settings - Fork 0
INI Section MPI Install
This section is used for installing MPI imeplemtations that will be tested. It has both fields and plugin modules.
Note that many of the fields in the MPI Install section are actually fairly specific to source-based MPI implementations, and may someday move into a specific module (e.g., "OMPI").
This field is identical to prepend_path except that the value is appended to path-like environment variables (as opposed to prepending them).
A comma-delimited list of "bitness" values for the MPI installation. The bitness values are mainly used for searching for specific results in the MTT database. Accepted values are:
- 32
- 64
Most MPI installations will only have one bitness, but some platforms support multi-build scenarios/packages where a single MPI implementation may actually support multiple bitness values simultaneously (which is why a comma-delimited list is acceptable). The default value for this field is to call the '''&get_mpi_install_bitness()''' funclet (if this field is not specified, the default value will be used), which attempts to determine the bitness(es) of the MPI automatically by running some tests on libmpi. The value can be overridden for cross-compilation purposes, or cases where '''&get_mpi_install_bitness()''' is unable to determine the correct bitness of the MPI installation.
This field indicates the name of the compiler and is mainly used for categorizing results in the MTT database. Any values are valid, but it is most helpful when a convention is used so that searches can be queried uniformly within the database results. Common names include:
- absoft
- gnu
- intel
- pathscale
- pgi
- sun
NOTE: This field is fairly specific to source-based MPI installations, and may someday be moved to a module.
This field represents the version of the compiler. It is usually obtained by a funclet (to ensure that the version is correct and up-to-date), although hard-coding is also fine.
NOTE: This field is fairly specific to source-based MPI installations, and may someday be moved to a module.
The value of this field is passed to the back-end configure process.
NOTE: This field is fairly specific to source-based MPI installations, and may someday be moved to a module.
Similar to bitness, this field is a comma-delimited value indicating the endian(s) of the MPI installation. Accepted values are:
- little
- big
The default value of this field is '''&get_mpi_install_endian()'''.
If set, the value a comma-delimited list of names of environment modules (see the environment modules project on SourceForge) to load before installing this MPI. The module(s) will be unloaded when the install phase section has completed. This value will also "carry through" to Test Build and Test Run sections, meaning that when this MPI install is used with test builds or runs, the module(s) will be loaded before the phase section and unloaded after the phase section.
The value of this field is passed to the "make all" command in the MPI install module.
NOTE: This field is fairly specific to source-based MPI installations, and may someday be moved to a module.
This field is a logical indicating whether "make check" should be run in the MPI install module or not. Valid values are:
- 0 (no)
- 1 (yes)
NOTE: This field is fairly specific to source-based MPI installations, and may someday be moved to a module.
A logical value (0 or 1) indicating whether to keep separate streams of stdout and stderr or merge them together into one stream for reporting purposes.
The name of the module used to build the MPI implementation.
A comma-delimited list of MPI Get sections that this MPI Install section is eligible to install.
Similar to setenv, prepend a path-like environment variable with the value of this field. The original environment variable value is restored after the phase section has completed. This value is also "carried forward" like env_module.
The value of this field is similar in form to setenv: the first token is the environment variable, the remaining tokens are assumed to be the value. For example:
prepend_path = PATH /path/to/some/compiler
This will prepend the value "/path/to/some/compiler" to the PATH environment variable.
The prepend_path field can be specified multiple times in a single section to prepend multiple environment variables.
A logical value (0 or 1) indicating whether the stdout of the installation should be saved if the install succeeds.
Similar to env_module, set an environment variable before executing this phase section. This value is also "carried forward" like env_module.
The value of this field is broken into two parts: the first token is the environment variable name; the second is the value of that environment variable. For example:
setenv = MyVariable a quick brown fox
This translates into setting the ''!MyVariable'' environment variable to the value "a quick brown fox".
The setenv field can be specified multiple times in a single section to set multiple environment variables.
This field represents how many lines of stderr output from the MPI install module to save in the report / database. Values can be:
- Negative: indicating that all lines of stderr should be saved (warning: this can be EXTREMELY expensive in terms of disk space, both on the MTT client and in the back-end database server! Unless you are absoultely sure that you will not have large amounts of output, the use of this value is strongly discouraged!)
- 0: indicating that no lines of stderr should be saved
- Positive: indicating that the final N lines of stderr should be saved
Same as sterr_save_lines but applied to the stdout generated by the MPI install module.
Similar to setenv, unset an environment variable before executing this phase section. The original environment variable value is restored after the phase section has completed. This value is also "carried forward" like env_module.
The value of this field is the name of the environment variable to unset.
The unsetenv field can be specified multiple times in a single section to unset multiple environment variables.
The value of this field indicates whether a VPATH build should be used to build the MPI. Valid values are:
- absolute, indicating that an absolute path to "configure" should be used
- relative, indicating that a relative path to "configure" should be used
NOTE: This field is fairly specific to source-based MPI installations, and may someday be moved to a module.
The OMPI module is used to install Open MPI from source tarballs.
Arguments to pass to "make all". These arguments typically include "-j 8", or the like, to speed up the building of Open MPI.
The name of the compiler used. It's a string and can be any value, but by convention (and for easing searching in MTT results), the following names are typically used:
- absoft
- gnu
- intel
- pathscale
- pgi
- sun
The version of the compiler used. It is usually the result of a funclet that will dynamically go obtain the version of the compiler. For example:
ompi_compiler_version = &gcc_get_version()
This field specifies whether to run "make check" or not. It defaults to "0".
This field specifies whether to run "autogen.pl" (or "autogen.sh" -- whichever is in the tarball under test) or not. It defaults to "0".