3.4.1 Using the ABAQUS environment settings

Products: ABAQUS/Standard  ABAQUS/Explicit  

Reference

Overview

The ABAQUS environment settings allow you to control various aspects of an ABAQUS job's execution. For example, you can

  • “Tune” ABAQUS to improve its performance by changing memory-related parameters.

  • Control where and how scratch files are written.

  • Provide default values for job parameters that would otherwise have to be given on the command line.

Many other aspects of a job's execution can be configured through the environment settings. Some of these are discussed in this section; others, which are mainly of interest to the ABAQUS site manager, are discussed in detail in the ABAQUS Installation and Licensing Guide.

Environment settings hierarchy

ABAQUS environment settings are processed in the following order:

  1. The host-level environment settings. These settings are applied to all ABAQUS jobs run on the designated computer.

  2. The user-level environment settings. These settings are applied to all ABAQUS jobs run in your account.

    For ABAQUS to locate the environment file in your home directory on Windows platforms, the full path to your home directory must be specified using the HOME environment variable or a combination of the HOMEDRIVE and HOMEPATH environment variables.

  3. The job-level environment settings. These settings are applied to only the designated ABAQUS job.

Environment settings can be specified more than once. The last value processed will be the one used for the setting if it is defined at more than one level or if it is given twice at the same level.

ABAQUS environment settings are set using special files in specific directories. The host-level settings are set in the site directory in the abaqus account directory. You can change these settings by creating an environment file, abaqus_v6.env, in your home directory and/or the current directory. Settings in the home directory file will be applied to all jobs that you run. Settings in the current directory file will be applied only to jobs run from the current directory.

Syntax

The entries given in the environment file must be given using Python language syntax. Entries take the form:

parameter=value
The following is a brief overview of the Python syntax rules:
  • The parameter must always have a value. The value can be any valid Python constant or expression.

  • A string value must be enclosed in a pair of double or single quotes.

  • Comments are preceded by a number sign (#). All characters following a number sign on a line are ignored. Number signs within a quoted string are part of the string, not the beginning of a comment.

  • Blank lines are ignored.

  • Embedded single quotes do not require special handling if they are placed within a double quoted string. For example, "my value's" is translated as my value's. The same holds true for double quotes embedded in a single quoted string. Quotes of the same type as the enclosing quotes can be embedded if they are prefixed by the backslash (\) character.

  • Triple quoted (""") strings can span more than one line, and no special treatment of quotes within the string is necessary. Entries take the form:

    parameter="""
    multi-line
    value
    """

  • Lists must be enclosed in parentheses (( )) or square brackets ([ ]). Individual items in the list are separated by commas. If the list is enclosed in parentheses and contains only one value, a comma has to follow the value. String list items must be enclosed in quotes. Entries take the form:

    parameter=(value1, value2, value3)

Troubleshooting

Problems caused by faulty environment settings can be diagnosed by using the command

abaqus information=environment
This command prints all of the current environment settings.

Command line default parameters

The following parameters provide default values for various settings that would otherwise have to be specified on the command line (see Execution procedure for ABAQUS/Standard and ABAQUS/Explicit, Section 3.2.2). Values given on the command line override values specified in the environment files.

cpus

Number of processors to use if parallel processing is available. The default is 1.

domains

The number of parallel domains in ABAQUS/Explicit. If the value is greater than 1, the domain decomposition will be performed regardless of the values of the parallel and cpus parameters. However, if parallel=domain, the value of cpus must be evenly divisible into the value of domains. If this parameter is not set, the number of domains defaults to the number of processors used during the analysis run if parallel=domain or to 1 if parallel=loop.

explicit_precision

The default precision version of ABAQUS/Explicit to run if you do not specify the precision version on the abaqus command line. Possible values are SINGLE_PRECISION or DOUBLE_PRECISION. The default is SINGLE_PRECISION.

parallel

The default parallel method in ABAQUS/Explicit if you do not specify the parallel method on the abaqus command line. Possible values are DOMAIN or LOOP; the default value is DOMAIN.

pre_memory

Maximum amount of memory that can be allocated by the analysis input file processor. The default value is 256 megabytes. The value of this parameter must be greater than 8 megabytes, less than 16 gigabytes on platforms that support 64-bit memory addressing, and less than 3 gigabytes on platforms that support 32-bit memory addressing.

run_mode

Default run mode (interactive, background, or batch) if you do not specify the run mode on the abaqus command line. The default for abaqus analysis is "background", while the default for abaqus viewer is "interactive".

scratch

Directory to be used for scratch files. This directory must exist (i.e., it will not be created by ABAQUS) and must have write permission assigned. On UNIX platforms the default value is the value of the $TMPDIR environment variable or /tmp if $TMPDIR is not defined. On Windows platforms the default value is the value of the %TEMP% environment variable or \TEMP if this variable is not defined. During the analysis a subdirectory will be created under this directory to hold the analysis scratch files. The name of the subdirectory is constructed from your user name, the job id, and the job's process identifier. The subdirectory and its contents are deleted upon completion of the analysis.

standard_parallel

The default parallel execution mode in ABAQUS/Standard if you do not specify the parallel mode on the abaqus command line. If this parameter is set equal to ALL, both the element operations and the solver will run in parallel. If this parameter is set equal to SOLVER, only the solver will run in parallel. The default parallel execution mode is ALL for analyses that use only the MPI-based iterative solver; otherwise, the default is SOLVER.

System resource parameters

The following environment file variables can be set after the code has been installed to change the resources used by ABAQUS and, therefore, to improve system performance. The variables can be defined as the number of 64-bit words, the number of bytes, or the number of megabytes. More detailed information about changing the system resources used by ABAQUS is given in Managing memory and disk use in ABAQUS, Section 3.5.1.

pre_memory

Maximum amount of memory that can be allocated by the analysis input file processor. The default value is 256 megabytes. The value of this parameter must be greater than 8 megabytes, less than 16 gigabytes on platforms that support 64-bit memory addressing, and less than 3 gigabytes on platforms that support 32-bit memory addressing.

standard_memory

Maximum amount of memory that can be allocated by ABAQUS/Standard. The default is 256 megabytes.

standard_memory_policy

Memory use policy for ABAQUS/Standard. The possible settings are MINIMUM, MODERATE, and MAXIMUM. The default is MODERATE.

System customization parameters

The following is a discussion of some additional environment file parameters that are commonly used. A complete listing of parameters can be found in the ABAQUS Installation and Licensing Guide.

ask_delete

If this parameter is set equal to OFF, you will not be asked whether old job files of the same file name should be deleted; the files will be deleted automatically. The default value is ON.

auto_calculate

If this parameter is set equal to ON, the postprocessing calculator will be launched automatically at the end of an analysis if the execution procedure detects that output database file conversion is necessary. If this parameter is set to OFF, the postprocessing calculator will not run at the end of an analysis even if the execution procedure detects that it is necessary. The default value is ON.

auto_convert

If this parameter is set equal to ON and an ABAQUS/Explicit analysis is run in parallel with parallel=domain, the convert=select, convert=state, and convert=odb options will be run automatically at the end of the analysis. The default value is ON.

mp_host_list

List of host machine names to be used for an MPI-based parallel ABAQUS analysis, including the number of processors to be used on each machine; for example,

mp_host_list=[['maple',1],['pine',1],['oak',2]]
indicates that, if the number of cpus specified for the analysis is 4, the analysis will use one processor on a machine called maple, one processor on a machine called pine, and two processors on a machine called oak. The total number of processors defined in the host list has to be greater than or equal to the number of cpus specified for the analysis. The list determines the MPI rank assignment (i.e., process 0 will run on maple, process 1 on pine, etc.), and hosts can be repeated. If the host list is not defined, ABAQUS will run on the local system. When using a supported queuing system, this parameter does not need to be defined. If it is defined, it will get overridden by the queuing environment.

mp_mode

If this parameter is set equal to MPI, the MPI-based parallelization method will be used when applicable. Set mp_mode=THREADS to use the thread-based parallelization method. The default is MPI on all platforms except Windows, which supports only THREADS mode.

odb_output_by_default

If this parameter is set equal to ON, output database output will be generated automatically. If this parameter is set equal to OFF, output database request keywords must be placed in an input file to obtain output database output. The default value is ON.

average_by_section

This parameter is used only for an ABAQUS/Standard analysis. If this parameter is set equal to OFF, the averaging regions for output written to the data (.dat) file and results (.fil) file are based on the structure of the elements. If this parameter is set equal to ON, the averaging regions also take into account underlying values of element properties and material constants. In problems with many section and/or material definitions the default value of OFF will, in general, give much better performance than the nondefault value of ON. See Output to the data and results files, Section 4.1.2, for further details on the averaging scheme.

Scratch file management parameters

In some cases the size of a particular ABAQUS/Standard scratch file may exceed the space available on an individual disk, or it may exceed a file size or file system limit for a given machine. Alternatively, large frequency extraction jobs run with the parallel Lanczos solver may benefit from using multiple file systems. Therefore, the following parameters can be used to split the more substantial ABAQUS/Standard scratch files into separate files either on the same disk or on different disks (refer to Managing memory and disk use in ABAQUS, Section 3.5.1, for details).

split_xxx

List of file sizes to be used in splitting a sparse solver file specified by xxx, which can be set to fct, opr, sdb, sol, lnz, eig, or scr. The units for the size of a given file can be specified following the file size. The available units are b (bytes), mb (megabytes), and w (words). If the units are not specified for a file size, the size is assumed to be in words. If no sizes are specified with split_xxx, the maximum file size allowed on the platform in question will be used.

spill_list_xxx

List of directories to be used for pieces of a sparse solver file specified by xxx, which can be set to fct, opr, sdb, sol, lnz, eig, or scr. If no directories are specified with spill_list_xxx, the scratch directory will be used for all the sparse solver files. This parameter is used in conjunction with split_xxx.

lanczos_scratch

List of additional directories to be used for the parallel Lanczos solver. If no directories are specified with the lanczos_scratch parameter, all scratch files will be written to the scratch directory for all Lanczos intervals. If the number of Lanczos intervals exceeds the number of directories provided, the additional scratch files will be written to the scratch directory. The lanczos_scratch parameter cannot be used in conjunction with the spill_list_xxx or the split_xxx parameters.

Environment file examples

Example environment files that use some of the previously discussed parameters are shown below. A sample environment file, named abaqusinc.env, is included in the site subdirectory of the release to show the options used at ABAQUS, Inc.

UNIX environment file:

ask_delete=OFF
# The following parameter causes the scratch files to 
# be written to /tmp.
scratch="/tmp"

Windows environment file:

ask_delete=OFF
# The following parameter causes the scratch files to 
# be written to the tmp directory on c:.
scratch="c:/tmp"