deterministic time limit

Deterministic time limit

Purpose

Deterministic time limit

API Parameter Name Name prior to V12.6.0
C CPXPARAM_DetTimeLimit CPX_PARAM_DETTILIM
C++ IloCplex::Param::DetTimeLimit DetTiLim (double)
Java IloCplex.Param.DetTimeLimit DetTiLim (double)
.NET Cplex.Param.DetTimeLimit DetTiLim (double)
OPL not available
Python parameters.dettimelimit dettimelimit
MATLAB Cplex.Param.dettimelimit dettimelimit
Interactive dettimelimit dettimelimit
Identifier 1127 1127

Description

Sets a time limit expressed in ticks, a unit to measure work done deterministically.

The length of a deterministic tick may vary by platform. Nevertheless, ticks are normally consistent measures for a given platform (combination of hardware and software) carrying the same load. In other words, the correspondence of ticks to clock time depends on the hardware, software, and the current load of the machine. For the same platform and same load, the ratio of ticks per second stays roughly constant, independent of the model solved. However, for very short optimization runs, the variation of this ratio is typically high.

CPLEX measures deterministic time only for work inside CPLEX. In other words, deterministic time does not include user algorithms implemented by means of callbacks. However, each application programming interface (API) of CPLEX offers routines or methods that access the deterministic clock and provide deterministic time stamps. In the APIs that support callbacks, you can use such deterministic time stamps in your application to mark time even from callbacks. For more detail about these deterministic time stamps, see the reference manual of the API that you use.

  • In the Callable Library (C API), see the documentation of CPXgetdettime and CPXgetcallbackinfo.
  • In the C++ API, see the documentation of IloCplex::CallbackI::getStartDetTime and IloCplex::CallbackI::getEndDetTime.
  • In the Java API, see the documentation of IloCplex.Callback.getStartDetTime and IloCplex.Callback.getEndDetTime.
  • In the .NET API, see the documentation of Cplex.ICallback.GetStartDetTime and GetEndDetTime.
  • In the Python API, see the documentation of Callback.get_start_dettime and Callback.get_end_dettime.
  • In the MATLAB connector, see the documentation of cplex.Solution.dettime.

At the end of optimization, the Interactive Optimizer displays the deterministic time spent to optimize the model as well as the ratio of ticks per second. For example, consider these lines, typical of output from the Interactive Optimizer:

MIP - Integer optimal solution:  Objective =  1.1580000000e+03
Solution time =    2.81 sec.  Iterations = 72793  Nodes = 2666
Deterministic time = 1996.47 ticks  (709.54 ticks/sec)

See also

For a nondeterministic time limit measured in seconds, see optimizer time limit in seconds (CPX_PARAM_TILIM, TiLim).

For more detail about use of time limits, see the topic Timing interface in the CPLEX User's Manual.

Value

Any nonnegative double value in deterministic ticks; default:1.0E+75