12.07.2015 Views

ILOG CPLEX 11.0 User's Manual

ILOG CPLEX 11.0 User's Manual

ILOG CPLEX 11.0 User's Manual

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

optimization requires less synchronization between threads and thus offers betterperformance on average. Consequently, during development of an application, you may finddeterministic parallelism advantageous for the repeatable, invariant solution path and results,whereas after development, during application deployment, you may prefer opportunisticparallelism for its performance.To maintain determinism (that is, an implicit contract of repeatable, invariant search pathand results), <strong>ILOG</strong> <strong>CPLEX</strong> invokes deterministic parallelism by default for MIPoptimization, but when the threads parameter (Threads, CPX_PARAM_THREADS) is set to avalue strictly greater than one, opportunistic parallel MIP will be invoked. This highersetting implicitly specifies to <strong>ILOG</strong> <strong>CPLEX</strong> that the user is willing to accept opportunisticbehavior.In addition to the threads parameter, you can use the parallel mode parameter(ParallelMode, CPX_PARAM_PARALLELMODE) to control the invocation of opportunisticalgorithms. With its default setting of 0 (zero), only deterministic algorithms are used, unlessthe threads parameter is changed to a value strictly greater than one.To force <strong>ILOG</strong> <strong>CPLEX</strong> to use deterministic algorithms in all cases, set the parallel modeparameter to 1 (one).To allow <strong>ILOG</strong> <strong>CPLEX</strong> to use opportunistic algorithms in all situations, set the parallelmode parameter to -1 (minus one).The presence of a time limit, set by the time limit parameter (TiLim, CPX_PARAM_TILIM)for example, poses problems for reproducibility in any algorithm that is otherwisedeterministic, even in sequential rather than parallel mode. Subtle variations in runtime oncomputer architectures can lead to variation in the measurement of time. (Other limits, suchas node limits, are not subject to this variability.)Because time limits are so important in many applications, <strong>ILOG</strong> <strong>CPLEX</strong> will still attemptto use deterministic mode without regard to whether a time limit is in effect. Whilevariability will still be much lower than with the opportunistic setting, the user is advisedthat complete determinism within time limits can not be assured.Using Parallel Optimizers in the Interactive OptimizerIn the Interactive Optimizer, <strong>ILOG</strong> <strong>CPLEX</strong> invokes parallel optimization by defaultwhenever a deterministic algorithm is available. For mixed integer programming (MIP), thispolicy means the following sequence of commands invokes parallel deterministic MIPoptimization:1. Start the parallel <strong>CPLEX</strong> Interactive Optimizer with the command cplex at theoperating system prompt.2. Enter your problem object and populate it with data as usual.494 <strong>ILOG</strong> <strong>CPLEX</strong> <strong>11.0</strong> — USER’ S MANUAL

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!