internal methods for clocks and timing issues
Definition in file clock.h.
#include "scip/def.h"
#include "scip/type_retcode.h"
#include "scip/type_set.h"
#include "scip/type_clock.h"
Go to the source code of this file.
Functions | |
SCIP_RETCODE | SCIPclockCreate (SCIP_CLOCK **clck, SCIP_CLOCKTYPE clocktype) |
void | SCIPclockFree (SCIP_CLOCK **clck) |
void | SCIPclockInit (SCIP_CLOCK *clck, SCIP_CLOCKTYPE clocktype) |
void | SCIPclockReset (SCIP_CLOCK *clck) |
void | SCIPclockEnable (SCIP_CLOCK *clck) |
void | SCIPclockDisable (SCIP_CLOCK *clck) |
void | SCIPclockEnableOrDisable (SCIP_CLOCK *clck, SCIP_Bool enable) |
void | SCIPclockSetType (SCIP_CLOCK *clck, SCIP_CLOCKTYPE clocktype) |
void | SCIPclockStart (SCIP_CLOCK *clck, SCIP_SET *set) |
void | SCIPclockStop (SCIP_CLOCK *clck, SCIP_SET *set) |
SCIP_Bool | SCIPclockIsRunning (SCIP_CLOCK *clck) |
SCIP_Real | SCIPclockGetTime (SCIP_CLOCK *clck) |
SCIP_Real | SCIPclockGetLastTime (SCIP_CLOCK *clck) |
void | SCIPclockSetTime (SCIP_CLOCK *clck, SCIP_Real sec) |
SCIP_Real | SCIPclockGetTimeOfDay (void) |
SCIP_RETCODE SCIPclockCreate | ( | SCIP_CLOCK ** | clck, |
SCIP_CLOCKTYPE | clocktype ) |
creates a clock and initializes it
clck | pointer to clock timer |
clocktype | type of clock |
Definition at line 170 of file clock.c.
References assert(), BMSallocMemory, NULL, SCIP_ALLOC, SCIP_OKAY, and SCIPclockInit().
Referenced by doBendersCreate(), doBenderscutCreate(), doBranchruleCreate(), doComprCreate(), doConflicthdlrCreate(), doConshdlrCreate(), doCutselCreate(), doEventhdlrCreate(), doHeurCreate(), doNodeselCreate(), doPresolCreate(), doPricerCreate(), doPropCreate(), doReaderCreate(), doRelaxCreate(), doScipCreate(), doSepaCreate(), SCIPconflictCreate(), SCIPcreateClock(), SCIPcreateCPUClock(), SCIPcreateWallClock(), SCIPcutpoolCreate(), SCIPexprhdlrCreate(), SCIPnlpiCreate(), SCIPpricestoreCreate(), SCIPreaderRead(), SCIPreoptCreate(), and SCIPstatCreate().
void SCIPclockFree | ( | SCIP_CLOCK ** | clck | ) |
frees a clock
clck | pointer to clock timer |
Definition at line 185 of file clock.c.
References assert(), BMSfreeMemory, and NULL.
Referenced by SCIPbenderscutFree(), SCIPbendersFree(), SCIPbranchruleFree(), SCIPcomprFree(), SCIPconflictFree(), SCIPconflicthdlrFree(), SCIPconshdlrFree(), SCIPcutpoolFree(), SCIPcutselFree(), SCIPeventhdlrFree(), SCIPexprhdlrFree(), SCIPfree(), SCIPfreeClock(), SCIPheurFree(), SCIPnlpiFree(), SCIPnodeselFree(), SCIPpresolFree(), SCIPpricerFree(), SCIPpricestoreFree(), SCIPpropFree(), SCIPreaderFree(), SCIPreaderRead(), SCIPrelaxFree(), SCIPreoptFree(), SCIPsepaFree(), and SCIPstatFree().
void SCIPclockInit | ( | SCIP_CLOCK * | clck, |
SCIP_CLOCKTYPE | clocktype ) |
initializes and resets a clock
clck | clock timer |
clocktype | type of clock |
Definition at line 195 of file clock.c.
References assert(), SCIP_Clock::enabled, SCIP_Clock::lasttime, NULL, SCIPclockSetType(), SCIPdebugMessage, and TRUE.
Referenced by SCIPclockCreate().
void SCIPclockReset | ( | SCIP_CLOCK * | clck | ) |
completely stop the clock and reset the clock's counter to zero
clck | clock timer |
Definition at line 209 of file clock.c.
References assert(), SCIP_Clock::clocktype, SCIP_Clock::cpuclock, SCIP_Clock::data, SCIP_Clock::nruns, NULL, SCIP_CLOCKTYPE_CPU, SCIP_CLOCKTYPE_DEFAULT, SCIP_CLOCKTYPE_WALL, SCIPABORT, SCIPdebugMessage, SCIPerrorMessage, SCIP_WallClock::sec, SCIP_WallClock::usec, SCIP_Clock::usedefault, SCIP_CPUClock::user, and SCIP_Clock::wallclock.
Referenced by clockSetType(), SCIPbenderscutInit(), SCIPbendersInit(), SCIPbranchruleInit(), SCIPclockDisable(), SCIPclockSetType(), SCIPcomprInit(), SCIPconflicthdlrInit(), SCIPconshdlrInit(), SCIPcutselInit(), SCIPeventhdlrInit(), SCIPexprhdlrInit(), SCIPheurInit(), SCIPnlpiInit(), SCIPnlpiMergeStatistics(), SCIPnodeselInit(), SCIPpresolInit(), SCIPpricerInit(), SCIPpropInit(), SCIPreaderResetReadingTime(), SCIPrelaxInit(), SCIPresetClock(), SCIPsepaInit(), and SCIPstatReset().
void SCIPclockEnable | ( | SCIP_CLOCK * | clck | ) |
enables the clock
clck | clock timer |
Definition at line 235 of file clock.c.
References assert(), SCIP_Clock::clocktype, SCIP_Clock::enabled, NULL, SCIPdebugMessage, TRUE, and SCIP_Clock::usedefault.
Referenced by SCIPclockEnableOrDisable().
void SCIPclockDisable | ( | SCIP_CLOCK * | clck | ) |
disables and resets the clock
clck | clock timer |
Definition at line 247 of file clock.c.
References assert(), SCIP_Clock::clocktype, SCIP_Clock::enabled, FALSE, NULL, SCIPclockReset(), SCIPdebugMessage, and SCIP_Clock::usedefault.
Referenced by SCIPclockEnableOrDisable().
void SCIPclockEnableOrDisable | ( | SCIP_CLOCK * | clck, |
SCIP_Bool | enable ) |
enables or disables clck
, depending on the value of the flag
clck | the clock to be disabled/enabled |
enable | should the clock be enabled? |
Definition at line 260 of file clock.c.
References assert(), NULL, SCIP_Bool, SCIPclockDisable(), and SCIPclockEnable().
Referenced by SCIPbendersEnableOrDisableClocks(), SCIPbranchruleEnableOrDisableClocks(), SCIPconflictEnableOrDisableClocks(), SCIPconflicthdlrEnableOrDisableClocks(), SCIPconshdlrEnableOrDisableClocks(), SCIPcutselEnableOrDisableClocks(), SCIPeventhdlrEnableOrDisableClocks(), SCIPheurEnableOrDisableClocks(), SCIPnodeselEnableOrDisableClocks(), SCIPpresolEnableOrDisableClocks(), SCIPpricerEnableOrDisableClocks(), SCIPpropEnableOrDisableClocks(), SCIPreaderEnableOrDisableClocks(), SCIPrelaxEnableOrDisableClocks(), SCIPsepaEnableOrDisableClocks(), SCIPsetClockEnabled(), and SCIPstatEnableOrDisableStatClocks().
void SCIPclockSetType | ( | SCIP_CLOCK * | clck, |
SCIP_CLOCKTYPE | clocktype ) |
sets the type of the clock, overriding the default clock type, and resets the clock
clck | clock timer |
clocktype | type of clock |
Definition at line 274 of file clock.c.
References assert(), SCIP_Clock::clocktype, NULL, SCIP_CLOCKTYPE_DEFAULT, SCIPclockReset(), SCIPdebugMessage, and SCIP_Clock::usedefault.
Referenced by SCIPclockInit().
void SCIPclockStart | ( | SCIP_CLOCK * | clck, |
SCIP_SET * | set ) |
starts measurement of time in the given clock, update the clock's type if it is bound to the default type
starts measurement of time in the given clock
clck | clock timer |
set | global SCIP settings |
Definition at line 290 of file clock.c.
References assert(), SCIP_Clock::clocktype, clockUpdateDefaultType(), cputime2sec(), SCIP_Clock::enabled, SCIP_Clock::nruns, NULL, SCIP_CLOCKTYPE_CPU, SCIP_CLOCKTYPE_DEFAULT, SCIP_CLOCKTYPE_WALL, SCIPABORT, SCIPdebugMessage, SCIPerrorMessage, and walltime2sec().
Referenced by addCurrentSolution(), addNode(), conflictAddConflictCons(), conflictAnalyzeBoundexceedingLP(), conflictAnalyzeInfeasibleLP(), conflictAnalyzeLP(), doCopy(), doScipCreate(), lpBarrier(), lpDualSimplex(), lpLexDualSimplex(), lpPrimalSimplex(), nlpSolve(), nodeRepropagate(), performStrongbranchWithPropagation(), presolve(), SCIPbenderscutExec(), SCIPbenderscutExit(), SCIPbenderscutExitsol(), SCIPbenderscutInit(), SCIPbenderscutInitsol(), SCIPbendersExec(), SCIPbendersExit(), SCIPbendersExitpre(), SCIPbendersExitsol(), SCIPbendersInit(), SCIPbendersInitpre(), SCIPbendersInitsol(), SCIPbranchruleExecExternSol(), SCIPbranchruleExecLPSol(), SCIPbranchruleExecPseudoSol(), SCIPbranchruleExit(), SCIPbranchruleExitsol(), SCIPbranchruleInit(), SCIPbranchruleInitsol(), SCIPcolGetStrongbranch(), SCIPcolGetStrongbranches(), SCIPcomprExec(), SCIPcomprExit(), SCIPcomprInit(), SCIPconflictAnalyze(), SCIPconflictAnalyzePseudo(), SCIPconflictAnalyzeStrongbranch(), SCIPconflicthdlrExec(), SCIPconflicthdlrExit(), SCIPconflicthdlrExitsol(), SCIPconflicthdlrInit(), SCIPconflicthdlrInitsol(), SCIPconshdlrCheck(), SCIPconshdlrEnforceLPSol(), SCIPconshdlrEnforcePseudoSol(), SCIPconshdlrEnforceRelaxSol(), SCIPconshdlrExit(), SCIPconshdlrExitpre(), SCIPconshdlrExitsol(), SCIPconshdlrInit(), SCIPconshdlrInitLP(), SCIPconshdlrInitpre(), SCIPconshdlrInitsol(), SCIPconshdlrPresolve(), SCIPconshdlrPropagate(), SCIPconshdlrSeparateLP(), SCIPconshdlrSeparateSol(), SCIPconsResolvePropagation(), SCIPcutpoolSeparate(), SCIPcutselExit(), SCIPcutselExitsol(), SCIPcutselInit(), SCIPcutselInitsol(), SCIPcutselsSelect(), SCIPeventhdlrExec(), SCIPeventhdlrExit(), SCIPeventhdlrExitsol(), SCIPeventhdlrInit(), SCIPeventhdlrInitsol(), SCIPexprhdlrEstimateExpr(), SCIPexprhdlrInitEstimatesExpr(), SCIPexprhdlrIntEvalExpr(), SCIPexprhdlrReversePropExpr(), SCIPexprhdlrSimplifyExpr(), SCIPheurExec(), SCIPheurExit(), SCIPheurExitsol(), SCIPheurInit(), SCIPheurInitsol(), SCIPnlpiAddConstraints(), SCIPnlpiAddVars(), SCIPnlpiChgConsSides(), SCIPnlpiChgExpr(), SCIPnlpiChgLinearCoefs(), SCIPnlpiChgObjConstant(), SCIPnlpiChgVarBounds(), SCIPnlpiCreateProblem(), SCIPnlpiDelConsSet(), SCIPnlpiDelVarSet(), SCIPnlpiFreeProblem(), SCIPnlpiSetObjective(), SCIPnodeselExit(), SCIPnodeselExitsol(), SCIPnodeselInit(), SCIPnodeselInitsol(), SCIPnodeselSelect(), SCIPpresolExec(), SCIPpresolExit(), SCIPpresolExitpre(), SCIPpresolInit(), SCIPpresolInitpre(), SCIPpresolve(), SCIPpricerExit(), SCIPpricerExitsol(), SCIPpricerFarkas(), SCIPpricerInit(), SCIPpricerInitsol(), SCIPpricerRedcost(), SCIPpricestoreAddProbVars(), SCIPpropExec(), SCIPpropExit(), SCIPpropExitpre(), SCIPpropExitsol(), SCIPpropInit(), SCIPpropInitpre(), SCIPpropInitsol(), SCIPpropPresol(), SCIPpropResolvePropagation(), SCIPreaderRead(), SCIPrelaxExec(), SCIPrelaxExit(), SCIPrelaxExitsol(), SCIPrelaxInit(), SCIPrelaxInitsol(), SCIPrunBoundHeuristic(), SCIPsepaExecLP(), SCIPsepaExecSol(), SCIPsepaExit(), SCIPsepaExitsol(), SCIPsepaInit(), SCIPsepaInitsol(), SCIPsolve(), SCIPsolveCIP(), SCIPsolveConcurrent(), SCIPstartClock(), SCIPstartSolvingTime(), and SCIPtryStrongbranchLPSol().
void SCIPclockStop | ( | SCIP_CLOCK * | clck, |
SCIP_SET * | set ) |
stops measurement of time in the given clock
clck | clock timer |
set | global SCIP settings |
Definition at line 360 of file clock.c.
References assert(), SCIP_Clock::clocktype, SCIP_Clock::enabled, SCIP_Clock::nruns, NULL, SCIP_CLOCKTYPE_CPU, SCIP_CLOCKTYPE_DEFAULT, SCIP_CLOCKTYPE_WALL, SCIPABORT, SCIPdebugMessage, and SCIPerrorMessage.
Referenced by addCurrentSolution(), addNode(), conflictAddConflictCons(), conflictAnalyzeBoundexceedingLP(), conflictAnalyzeInfeasibleLP(), conflictAnalyzeLP(), doCopy(), lpBarrier(), lpDualSimplex(), lpLexDualSimplex(), lpPrimalSimplex(), nlpSolve(), nodeRepropagate(), performStrongbranchWithPropagation(), presolve(), SCIPbenderscutExec(), SCIPbenderscutExit(), SCIPbenderscutExitsol(), SCIPbenderscutInit(), SCIPbenderscutInitsol(), SCIPbendersExec(), SCIPbendersExit(), SCIPbendersExitpre(), SCIPbendersExitsol(), SCIPbendersInit(), SCIPbendersInitpre(), SCIPbendersInitsol(), SCIPbranchruleExecExternSol(), SCIPbranchruleExecLPSol(), SCIPbranchruleExecPseudoSol(), SCIPbranchruleExit(), SCIPbranchruleExitsol(), SCIPbranchruleInit(), SCIPbranchruleInitsol(), SCIPcolGetStrongbranch(), SCIPcolGetStrongbranches(), SCIPcomprExec(), SCIPcomprExit(), SCIPcomprInit(), SCIPconflictAnalyze(), SCIPconflictAnalyzePseudo(), SCIPconflictAnalyzeStrongbranch(), SCIPconflicthdlrExec(), SCIPconflicthdlrExit(), SCIPconflicthdlrExitsol(), SCIPconflicthdlrInit(), SCIPconflicthdlrInitsol(), SCIPconshdlrCheck(), SCIPconshdlrEnforceLPSol(), SCIPconshdlrEnforcePseudoSol(), SCIPconshdlrEnforceRelaxSol(), SCIPconshdlrExit(), SCIPconshdlrExitpre(), SCIPconshdlrExitsol(), SCIPconshdlrInit(), SCIPconshdlrInitLP(), SCIPconshdlrInitpre(), SCIPconshdlrInitsol(), SCIPconshdlrPresolve(), SCIPconshdlrPropagate(), SCIPconshdlrSeparateLP(), SCIPconshdlrSeparateSol(), SCIPconsResolvePropagation(), SCIPcutpoolSeparate(), SCIPcutselExit(), SCIPcutselExitsol(), SCIPcutselInit(), SCIPcutselInitsol(), SCIPcutselsSelect(), SCIPeventhdlrExec(), SCIPeventhdlrExit(), SCIPeventhdlrExitsol(), SCIPeventhdlrInit(), SCIPeventhdlrInitsol(), SCIPexprhdlrEstimateExpr(), SCIPexprhdlrInitEstimatesExpr(), SCIPexprhdlrIntEvalExpr(), SCIPexprhdlrReversePropExpr(), SCIPexprhdlrSimplifyExpr(), SCIPheurExec(), SCIPheurExit(), SCIPheurExitsol(), SCIPheurInit(), SCIPheurInitsol(), SCIPnlpiAddConstraints(), SCIPnlpiAddVars(), SCIPnlpiChgConsSides(), SCIPnlpiChgExpr(), SCIPnlpiChgLinearCoefs(), SCIPnlpiChgObjConstant(), SCIPnlpiChgVarBounds(), SCIPnlpiCreateProblem(), SCIPnlpiDelConsSet(), SCIPnlpiDelVarSet(), SCIPnlpiFreeProblem(), SCIPnlpiSetObjective(), SCIPnodeselExit(), SCIPnodeselExitsol(), SCIPnodeselInit(), SCIPnodeselInitsol(), SCIPnodeselSelect(), SCIPpresolExec(), SCIPpresolExit(), SCIPpresolExitpre(), SCIPpresolInit(), SCIPpresolInitpre(), SCIPpresolve(), SCIPpricerExit(), SCIPpricerExitsol(), SCIPpricerFarkas(), SCIPpricerInit(), SCIPpricerInitsol(), SCIPpricerRedcost(), SCIPpricestoreAddProbVars(), SCIPpropExec(), SCIPpropExit(), SCIPpropExitpre(), SCIPpropExitsol(), SCIPpropInit(), SCIPpropInitpre(), SCIPpropInitsol(), SCIPpropPresol(), SCIPpropResolvePropagation(), SCIPreaderRead(), SCIPrelaxExec(), SCIPrelaxExit(), SCIPrelaxExitsol(), SCIPrelaxInit(), SCIPrelaxInitsol(), SCIPrunBoundHeuristic(), SCIPsepaExecLP(), SCIPsepaExecSol(), SCIPsepaExit(), SCIPsepaExitsol(), SCIPsepaInit(), SCIPsepaInitsol(), SCIPsolve(), SCIPsolveCIP(), SCIPsolveConcurrent(), SCIPstopClock(), SCIPstopSolvingTime(), and SCIPtryStrongbranchLPSol().
SCIP_Bool SCIPclockIsRunning | ( | SCIP_CLOCK * | clck | ) |
returns whether the clock is currently running
clck | clock timer |
Definition at line 427 of file clock.c.
References assert(), SCIP_Clock::nruns, NULL, and SCIP_Bool.
Referenced by nodeRepropagate(), and SCIPreaderRead().
SCIP_Real SCIPclockGetTime | ( | SCIP_CLOCK * | clck | ) |
gets the used time of this clock in seconds
clck | clock timer |
Definition at line 438 of file clock.c.
References assert(), SCIP_Clock::clocktype, SCIP_Clock::cpuclock, cputime2sec(), SCIP_Clock::data, SCIP_Clock::enabled, EPSN, SCIP_Clock::lasttime, SCIP_Clock::nruns, NULL, result, SCIP_CLOCKTYPE_CPU, SCIP_CLOCKTYPE_DEFAULT, SCIP_CLOCKTYPE_WALL, SCIP_Real, SCIPABORT, SCIPdebugMessage, SCIPerrorMessage, SCIP_WallClock::sec, SCIP_WallClock::usec, SCIP_Clock::usedefault, SCIP_CPUClock::user, SCIP_Clock::wallclock, and walltime2sec().
Referenced by applyVbounds(), clockSetType(), displayRelevantStats(), doCopy(), lpAlgorithm(), lpBarrier(), lpDualSimplex(), lpLexDualSimplex(), lpPrimalSimplex(), printTime(), SCIPbenderscutGetSetupTime(), SCIPbenderscutGetTime(), SCIPbendersGetSetupTime(), SCIPbendersGetTime(), SCIPbranchruleGetSetupTime(), SCIPbranchruleGetTime(), SCIPcomprGetSetupTime(), SCIPcomprGetTime(), SCIPconcsolverGetSyncTime(), SCIPconflictGetBoundexceedingLPTime(), SCIPconflictGetGlobalApplTime(), SCIPconflictGetInfeasibleLPTime(), SCIPconflictGetPropTime(), SCIPconflictGetPseudoTime(), SCIPconflictGetStrongbranchTime(), SCIPconflicthdlrGetSetupTime(), SCIPconflicthdlrGetTime(), SCIPconshdlrGetCheckTime(), SCIPconshdlrGetEnfoLPTime(), SCIPconshdlrGetEnfoPSTime(), SCIPconshdlrGetEnfoRelaxTime(), SCIPconshdlrGetPresolTime(), SCIPconshdlrGetPropTime(), SCIPconshdlrGetRespropTime(), SCIPconshdlrGetSepaTime(), SCIPconshdlrGetSetupTime(), SCIPconshdlrGetStrongBranchPropTime(), SCIPcutpoolGetTime(), SCIPcutselGetSetupTime(), SCIPcutselGetTime(), SCIPeventhdlrGetSetupTime(), SCIPeventhdlrGetTime(), SCIPexprhdlrGetEstimateTime(), SCIPexprhdlrGetIntevalTime(), SCIPexprhdlrGetReversepropTime(), SCIPexprhdlrGetSimplifyTime(), SCIPgetClockTime(), SCIPgetPresolvingTime(), SCIPgetSolvingTime(), SCIPgetTotalTime(), SCIPheurGetSetupTime(), SCIPheurGetTime(), SCIPnlpiGetProblemTime(), SCIPnlpiMergeStatistics(), SCIPnlpiSolve(), SCIPnodeselGetSetupTime(), SCIPnodeselGetTime(), SCIPpresolGetSetupTime(), SCIPpresolGetTime(), SCIPpresolve(), SCIPpricerGetSetupTime(), SCIPpricerGetTime(), SCIPpricestoreGetProbPricingTime(), SCIPprintHeuristicStatistics(), SCIPprintLPStatistics(), SCIPprintNLPStatistics(), SCIPprintReoptStatistics(), SCIPprintTimingStatistics(), SCIPprintTreeStatistics(), SCIPpropGetPresolTime(), SCIPpropGetRespropTime(), SCIPpropGetSetupTime(), SCIPpropGetStrongBranchPropTime(), SCIPpropGetTime(), SCIPreaderGetReadingTime(), SCIPreaderRead(), SCIPrelaxExec(), SCIPrelaxGetSetupTime(), SCIPrelaxGetTime(), SCIPreoptGetSavingtime(), SCIPsepaGetSetupTime(), SCIPsepaGetTime(), SCIPsolveIsStopped(), SCIPstatUpdatePrimalDualIntegrals(), solStamp(), and solveNodeInitialLP().
SCIP_Real SCIPclockGetLastTime | ( | SCIP_CLOCK * | clck | ) |
gets the last validated time of this clock in seconds
clck | clock timer |
Definition at line 529 of file clock.c.
References assert(), SCIP_Clock::lasttime, NULL, and SCIP_Real.
Referenced by SCIPsolveIsStopped(), and solStamp().
void SCIPclockSetTime | ( | SCIP_CLOCK * | clck, |
SCIP_Real | sec ) |
sets the used time of this clock in seconds
clck | clock timer |
sec | time in seconds to set the clock's timer to |
Definition at line 539 of file clock.c.
References assert(), clockSetType(), SCIP_Clock::clocktype, SCIP_Clock::cpuclock, SCIP_Clock::data, SCIP_Clock::nruns, NULL, SCIP_CLOCKTYPE_CPU, SCIP_CLOCKTYPE_DEFAULT, SCIP_CLOCKTYPE_WALL, SCIP_Real, SCIPABORT, SCIPdebugMessage, SCIPerrorMessage, SCIP_WallClock::sec, sec2cputime(), sec2walltime(), SCIP_WallClock::usec, SCIP_Clock::usedefault, SCIP_CPUClock::user, and SCIP_Clock::wallclock.
Referenced by clockSetType(), SCIPcutpoolSetTime(), SCIPnlpiMergeStatistics(), SCIPreaderRead(), SCIPreadProb(), and SCIPsetClockTime().