Hybrid Shared/Distributed Memory Parallelization (SPMD)
Single Program, Multiple Data (SPMD) is a parallelization technique in computing that is employed to achieve faster results by splitting the program into multiple subsets and running them simultaneously on multiple processors/machines.
SPMD typically implies running the same process or program on single or multiple
machines (nodes) with different input data for each individual task. In this
section, discussion about SPMD typically includes the application of Shared Memory Parallelization (SMP) in conjunction with the MPI-based
parallelization. Typically, this combination can be termed as Hybrid
Shared/Distributed Memory Parallelization, and it will henceforth be referred to as
SPMD.
Application | Version | Supported Platforms | MPI |
---|---|---|---|
OptiStruct SPMD | 2020.1 | Linux 64 bit | IBM Platform MPI 9.1.2 (formerly HP-MPI) or Intel MPI - Version 2018 Update 4 (recommended) |
Windows 64 bit | IBM Platform MPI 9.1.2 (formerly HP-MPI) or Intel MPI - 5.1.0.078 (recommended) |
Supported platforms and MPI versions for Hybrid Shared/Distributed Memory Parallelization (SPMD).
OptiStruct SPMD can be run on either a single node or
multiple nodes in a cluster depending upon the program and hardware
limitations/requirements. SPMD in OptiStruct is
implemented by the following MPI-based functionalities: