The Decomposition Algorithm

Parallel Execution

At each iteration of the decomposition method, the subproblem is solved over the reduced cost that is derived from the dual information that solving the master problem provides. As discussed in the section Overview: Decomposition Algorithm, the subproblem often has a block-diagonal structure that enables the solver to process each block independently.

The decomposition algorithm can be run in either a single-machine or a distributed computing environment. In single-machine mode, the computation is executed by multiple threads on a single computer. You can specify options for parallel execution in the PERFORMANCE statement, which is documented in the section PERFORMANCE Statement of Chapter 4: Shared Concepts and Topics. You can control the number of threads that are used by specifying the NTHREADS= option in the PERFORMANCE statement. In distributed mode, the computation is executed in a distributed computing environment. You can control the number of grid nodes (machines) that are used by specifying the NODES= option in the PERFORMANCE statement. The decomposition algorithm supports only the deterministic mode of the PARALLELMODE= option in the PERFORMANCE statement. The default mode of operation is single-machine mode, where the number of concurrent threads is based on the number of CPUs (cores) on the machine (subject to any system configuration limitations).

Note: The SAS High-Performance Optimization license is required to invoke the DECOMP option in distributed mode.