Shared Memory Parallelization (SMP) is a parallelization technique that incorporates the usage of multiple threads (or logical processors) in a node to solve problems. SMP involves the utilization of a Shared Memory paradigm wherein, multiple threads communicate with each other and use a single shared memory space.
Shared Memory Parallelization in OptiStruct does not require different executables or the installation of separate components for message passing. Message passing is typically required for communication between different nodes (SPMD-Hybrid). However, since SMP involves parallelization within a single node, additional MPI run times are not required.
Figure 1: Typical Computer Architecture Layout - An example Cluster with three Nodes.
The standard OptiStruct executable can be used for SMP runs. The OptiStruct script picks the required executable for the run, and simultaneously sets all the required environment variables. Therefore, it is recommended to use the Script instead of directly calling the executable. The SMP runs can be activated using the –cpu/-proc/-nproc/-ncpu/-nt/-nthread OptiStruct run options for the HWSolver Run Manager or the script via the Command Line.
To launch OptiStruct SMP runs, initially investigate the hardware availability for your run. If you have multiple nodes within a cluster, it is more efficient to take advantage of the OptiStruct SPMD–Hybrid capabilities, instead of only using OptiStruct SMP. OptiStruct SMP (non-hybrid) is typically useful for single node workstations with multiple logical processors. It leverages the parallelization capabilities of the multiple threads on the workstation. Note:
|