Graphics Processing Unit (GPU)

A Graphics Processing Unit (GPU) is a system which can be used to improve the performance of computationally intensive engineering applications. GPU Computing is a process which uses the GPU to execute computational intensive sections of the application and the rest of the code runs on the CPU.


GPU can be used to accelerate the sparse direct equation solver through the NVIDIA CUDA programming model. GPU computing is implemented by off-loading most of the computation intensive work to the GPU and concurrently overlapping the communication and data transfer between the CPU cores and the GPU.


  1. GPU computing is available for:
    1. Linear static analysis (using MUMPS, BCS, or PCG solvers) and optimization.
    2. Nonlinear static and Nonlinear Transient analysis (using MUMPS or PCG solvers).
    3. Eigenvalue analysis (using AMSES or Lanczos eigensolvers).
    4. Direct Frequency Response analysis (using MUMPS solver).
  2. GPU computing is available on Linux and Windows platforms.
  3. GPU can be used along with SMP and DDM in the same run for MUMPS and PCG solvers.
  4. For eigenvalue analysis/modal frequency/modal transient response analysis, OptiStruct GPU is recommended for any of the following cases:
    • Eigenvalue analysis on blocky structures, for example bricks, cubes, cylinders, and so on, and/or,
    • Eigenvalue analysis which requests a large number of modes, for example, over 10000 modes. Similarly, GPU can also be used to run Modal Frequency Response Analysis, wherein the modal extraction step requests a large number of modes.
  5. NVIDIA Kepler, Maxwell, Pascal, and Volta architecture-based Tesla and Quadro graphic cards are supported. Recommended cards are listed in the table in the support section below.

Commands to Activate GPU

Command option -gpu is used to activate OptiStruct GPU. The -gpuid run option can be used to pick the desired graphic card for computation when multiple cards are present. Additionally, for the PCG iterative solver, multiple GPU cards can be used simultaneously for the run. This can be accomplished by using -ngpu run option. Currently, a maximum of 8 GPU cards can be used for the parallel GPU run with models running the PCG solver.
Note: This is currently supported only for linear static or nonlinear static analysis with PCG solver, and it is intended for large models which are unable to be run on a single GPU card, due to hardware limitations (like, Memory). Compatible drivers for the graphics card will need to be installed by the user prior to launching OptiStruct GPU using the option -gpu.
Command Line Option Value Action
-gpu Activates GPU computing
-ngpu N Specifies the number of GPU cards to be used for the run.

Default = 1 and Maximum = 8.

-gpuid N Integer: Optional, selects the GPU card

Default = 1

Note: I/O usually accounts for an appreciable percentage of the total solution time in OptiStruct for an out-of-core or min-core run. This cannot be addressed or improved through GPU computing. Therefore, -core in (at least -core out) is recommended when the memory in system is large enough.

OptiStruct, currently only supports a maximum of 8 graphics cards in a specific solution (via -ngpu#). Refer to the Altair HyperWorks 2024 Solvers Unit Draw page for OptiStruct GPU licensing information.

Recommended GPU Computing Processor List

Double precision (fp64) operations are required by OptiStruct to obtain sufficient accuracy for simulations. A NVIDIA graphic card with higher peak fp64 performance dedicated for engineering solutions and high-performance computing is more suitable for OptiStruct GPU acceleration. The following table lists the recommended graphic boards for use with the Altair Mechanical Solver suite of applications for high-powered GPU computing.
Manufacturer and Model Graphics Card Driver Version

(minimum or higher)






Linux (64-bit): 440.33

Windows (64-bit): 441.22





Linux (64-bit): 440.33

Windows (64-bit): 441.22

Note: The most recent vendor/manufacturer drivers should be used and all driver support for these cards should be addressed to the appropriate manufacturer of the graphic board.