Using parallel optimizers in the Component Libraries

Describes parallel optimization in the Component Libraries.

When you use one of the Component Libraries, such as the Callable Library, follow these steps to invoke parallel optimization.

  1. Create your CPLEX environment and initialize a problem object in the usual way. See Initialize the CPLEX environment and Instantiate the problem as an object for details.
  2. Enter and populate your problem object in the usual way, as in Put data in the problem object.
  3. If you want to use an opportunistic parallel algorithm, set the parallel mode switch (ParallelMode, CPX_PARAM_PARALLELMODE) in your application. If you want to use deterministic mode with fewer than the maximum number of available threads, set both the parallel mode and the threads parameter in your application. See Determinism of results for background about this step.
  4. Call the parallel optimizer with the appropriate method or routine (identified from the table).
Table 1. Parallel optimizer methods and routines of the Component Libraries
Optimizer Concert IloCplex Method Callable Library
parallel MIP optimizer solve CPXmipopt
parallel barrier optimizer setParam(RootAlg, Barrier) and then solve CPXbaropt or CPXhybbaropt
concurrent optimizer setParam(RootAlg, Concurrent) and then solve

CPXsetintparam(env,

CPX_PARAM_LPMETHOD,

CPX_ALG_CONCURRENT)

and then CPXlpopt or CPXqpopt