ProductsAbaqus/StandardAbaqus/Explicit Parallel processing support for Abaqus featuresThe following Abaqus/Standard features can be executed in parallel: analysis input preprocessing, the direct sparse solver, the iterative solver, and element operations. Analysis input preprocessing uses only MPI-based parallelization and will not be executed in parallel if only data checking is performed. For Abaqus/Explicit all of the computations other than those involving the analysis input preprocessor and the packager can be executed in parallel. Each of the features that are available for parallel execution has certain limitations, which are documented in detail; see Parallel execution in Abaqus/Standard and Parallel execution in Abaqus/Explicit. Parallel execution on computer clustersAbaqus can be executed in parallel on computer clusters by using MPI-based parallelization. For parallel execution on computer clusters, the list of machines or hosts is given with the mp_host_list environment file parameter. This parameter also defines the number of processors to be used on each host. Parallel execution using GPGPU hardwareThe direct solver in Abaqus/Standard can be executed in parallel on computers equipped with compute-capable GPGPU cards. Use with user subroutinesUser subroutines can be used when running jobs in parallel. In a distributed run, the entire model is decomposed into separate domains (partitions). Each domain is serviced by a separate MPI process. Abaqus provides well-defined synchronization points at which it is possible to exchange information across all MPI ranks, using the MPI communications facilities. All native MPI calls are supported, in both Fortran and C++. In addition, for cases of hybrid execution, user subroutines and any subroutines called by them must be thread safe. This precludes the use of common blocks, data statements, and save statements. To work around these limitations and for guidelines and techniques, see Ensuring thread safety. |