|
| | ~ValueTape () |
| |
| | ValueTape ()=delete |
| |
| | ValueTape (short tapeId) |
| |
| | ValueTape (const ValueTape &other)=delete |
| |
| ValueTape & | operator= (const ValueTape &other)=delete |
| |
| | ValueTape (ValueTape &&other) noexcept |
| |
| ValueTape & | operator= (ValueTape &&other) noexcept |
| |
| bool | isExclusiveNonLocking () |
| |
| bool | isExclusiveLocking () |
| |
| void | registerExtDiff () |
| |
| bool | containsExtDiff () const |
| |
| void | setSharedMode () |
| | Enables concurrent no-keep evaluations of this tape.
|
| |
| void | setExclusiveMode () |
| | Restores the default single-evaluation mode with reusable owned buffers.
|
| |
| void | statsNeedReload () |
| |
| std::shared_mutex & | accessMutex () noexcept |
| |
| bool | isRecording () const noexcept |
| |
| void | beginRecording () |
| |
| void | endRecording () |
| |
| void | tapeBaseNames (size_t loc, const std::string &baseName) |
| |
| void | skipFileCleanup (int skipFileCleanup) |
| |
| int | skipFileCleanup () const |
| |
| char * | tay_fileName () const |
| |
| char * | op_fileName () const |
| |
| char * | loc_fileName () const |
| |
| char * | val_fileName () const |
| |
| void | tay_fileName (char *name) |
| |
| void | op_fileName (char *name) |
| |
| void | loc_fileName (char *name) |
| |
| void | val_fileName (char *name) |
| |
| int | keepTape () const |
| |
| void | keepTape (int flag) |
| |
| int | jacSolv_nax () const |
| |
| int * | jacSolv_ci () const |
| |
| int * | jacSolv_ri () const |
| |
| double * | jacSolv_xold () const |
| |
| double ** | jacSolv_I () const |
| |
| double ** | jacSolv_J () const |
| |
| int | jacSolv_modeold () const |
| |
| void | jacSolv_nax (int nax) |
| |
| void | jacSolv_I (double **I) |
| |
| void | jacSolv_J (double **J) |
| |
| void | jacSolv_xold (double *xold) |
| |
| void | jacSolv_modeold (int mode) |
| |
| void | jacSolv_ci (int *ci) |
| |
| void | jacSolv_ri (int *ri) |
| |
| int | forodec_nax () const |
| |
| int | forodec_dax () const |
| |
| double * | forodec_y () const |
| |
| double * | forodec_z () const |
| |
| double ** | forodec_Z () const |
| |
| void | forodec_nax (int nax) |
| |
| void | forodec_dax (int dax) |
| |
| void | forodec_y (double *y) |
| |
| void | forodec_z (double *z) |
| |
| void | forodec_Z (double **Z) |
| |
| void | readParams (double *&targetStore) |
| |
| void | compare_adolc_ids (const ADOLC_ID &id1, const ADOLC_ID &id2) |
| |
| void | read_tape_stats () |
| |
| void | tapestats (std::array< size_t, TapeInfos::STAT_SIZE > stats) |
| |
| void | tapestats (size_t *stats) |
| |
| size_t | tapestats (size_t stat) const |
| |
| void | tapestats (size_t stat, size_t val) |
| |
| std::array< size_t, TapeInfos::STAT_SIZE > | tapestats () const |
| |
| void | deg_save (int val) |
| |
| int | deg_save () const |
| |
| int | keepTaylors () const |
| |
| void | keepTaylors (int val) |
| |
| size_t | numparam () const |
| |
| void | increment_numTays_Tape () |
| |
| void | add_numTays_Tape (size_t val) |
| |
| void | lastTayBlockInCore (char val) |
| |
| char | lastTayBlockInCore () const |
| |
| void | decrement_numTays_Tape () |
| |
| size_t | num_eq_prod () const |
| |
| void | num_eq_prod (size_t num) |
| |
| void | increment_num_eq_prod () |
| |
| void | add_num_eq_prod (size_t val) |
| |
| void | increment_numInds () |
| |
| size_t | numInds () const |
| |
| void | increment_numDeps () |
| |
| size_t | numDeps () const |
| |
| void | tay_numInds (size_t val) |
| |
| size_t | tay_numInds () const |
| |
| void | tay_numDeps (size_t val) |
| |
| size_t | tay_numDeps () const |
| |
| void | numSwitches (size_t num) |
| |
| size_t | numSwitches () const |
| |
| void | increment_numSwitches () |
| |
| short | tapeId () const |
| |
| size_t | no_min_max () |
| |
| size_t | ext_diff_fct_index () const |
| |
| void | ext_diff_fct_index (size_t index) |
| |
| void | nextBufferNumber (size_t num) |
| |
| size_t | nextBufferNumber () const |
| |
| void | decrement_nextBufferNumber () |
| |
| void | put_op (OPCODES op, size_t reserveExtraLocations=0) |
| |
| void | put_loc (size_t loc) |
| |
| void | put_val (const double val) |
| |
| void | put_vals_writeBlock (double *reals, size_t numReals) |
| |
| void | put_vals_notWriteBlock (double *reals, size_t numReals) |
| |
| size_t | get_val_space () |
| |
| int | upd_resloc (size_t temp, size_t lhs) |
| |
| int | upd_resloc_check (size_t temp) |
| |
| int | upd_resloc_inc_prod (size_t temp, size_t newlhs, unsigned char newop) |
| |
| size_t | get_num_param () |
| |
| void | nestedReverseEval (bool flag) |
| |
| bool | nestedReverseEval () const |
| |
| double * | signature () const |
| |
| void | signature (double *buffer) |
| |
| void | initTapeInfos_keep () |
| |
| template<ADOLC::detail::EvalOrRecordContextType Context> |
| void | initTapeBuffers (Context &ctx) |
| |
| void | initTapeBuffers () |
| |
| size_t | operationBufferSize () const |
| |
| void | operationBufferSize (size_t size) |
| |
| size_t | locationBufferSize () const |
| |
| void | locationBufferSize (size_t size) |
| |
| size_t | valueBufferSize () const |
| |
| void | valueBufferSize (size_t size) |
| |
| size_t | taylorBufferSize () const |
| |
| void | taylorBufferSize (size_t size) |
| |
| size_t | initalStoreSize () const |
| |
| void | initialStoreSize (size_t size) |
| |
| void | checkInitialStoreSize () |
| |
| unsigned int | nominmaxFlag () const |
| |
| void | enableBranchSwitchWarnings () |
| |
| void | disableBranchSwitchWarnings () |
| |
| void | enableMinMaxUsingAbs () |
| |
| void | disableMinMaxUsingAbs () |
| |
| void | ensureContiguousLocations (size_t n) |
| |
| size_t | ensureContiguousLocations_ (size_t n) |
| |
| void | setStoreManagerControl (double gcTriggerRatio, size_t gcTriggerMaxSize) |
| |
| void | setStoreManagerType (unsigned char type) |
| |
| size_t | next_loc () |
| |
| size_t | p_next_loc () |
| |
| void | free_loc (size_t loc) const |
| |
| void | p_free_loc (size_t loc) const |
| |
| double | get_ad_value (size_t loc) const |
| |
| void | set_ad_value (size_t loc, double coval) |
| |
| double | get_pd_value (size_t loc) const |
| |
| void | set_pd_value (size_t loc, double coval) |
| |
| size_t | numLives () const |
| |
| size_t | storeSize () const |
| |
| double * | store () const |
| |
| void | store (double *buffer) |
| |
| double * | pStore () const |
| |
| void | pStore (double *buffer) |
| |
| double | store (size_t idx) |
| |
| char | branchSwitchWarning () const |
| |
| void | branchSwitchWarning (char val) |
| |
| char | inParallelRegion () const |
| |
| ADOLC::CP::detail::Infos * | cp_append () |
| |
| ADOLC::CP::detail::Infos * | cp_getElement (size_t index) |
| |
| ext_diff_fct * | ext_diff_append () |
| |
| ext_diff_fct * | ext_diff_getElement (size_t index) |
| |
| ext_diff_fct_v2 * | ext_diff_v2_append () |
| |
| ext_diff_fct_v2 * | ext_diff_v2_getElement (size_t index) |
| |
| std::array< std::string, 4 > | readConfigFile () |
| |
| void | taylor_begin (int degreeSave) |
| | Initialize Taylor-stack recording for the current tape.
|
| |
| void | finish_tay_file () |
| |
| void | taylor_close () |
| |
| void | write_scaylor (double val) |
| |
| void | delete_scaylor (size_t loc) |
| |
| template<typename Info > |
| const char * | fileName () const |
| | Return the tape file name associated with the given Info adapter.
|
| |
| template<InfoType< TapeEvaluationContext, ErrorType > Info> |
| void | prepare_for (TapeEvaluationContext &evalCtx) |
| | Prepare for a forward sweep.
|
| |
| template<InfoType< TapeEvaluationContext, ErrorType > Info> |
| void | setFilePosition (TapeEvaluationContext &evalCtx) |
| | Position the tape file at the beginning of the last on-disk block.
|
| |
| template<InfoType< TapeEvaluationContext, ErrorType > Info> |
| void | prepare_rev (TapeEvaluationContext &evalCtx) |
| | Prepare for reverse sweep.
|
| |
template<InfoType< TapeEvaluationContext, ErrorType >... Infos>
requires (requires { Infos::fileAccess; } && ...) |
| void | prepare_for_all (TapeEvaluationContext &evalCtx, AllTypes< Infos... >) |
| | Run prepare_for() for all tape types listed in AllTypes.
|
| |
template<InfoType< TapeEvaluationContext, ErrorType >... Infos>
requires (requires { Infos::fileAccess; } && ...) |
| void | prepare_rev_all (TapeEvaluationContext &evalCtx, AllTypes< Infos... >) |
| | Run prepare_for() for all tape types listed in AllTypes.
|
| |
| template<typename Mode > |
| TapeEvaluationContext | init_sweep (int keep=0) |
| | Initialize a tape sweep.
|
| |
| void | end_sweep (TapeEvaluationContext &evalCtx) |
| |
| void | end_sweep (TapeEvaluationContext &&evalCtx) |
| |
| void | start_trace () |
| |
| void | take_stock () |
| |
| size_t | keep_stock () |
| |
| void | stop_trace (int flag) |
| |
| int | initNewTape () |
| |
| void | openTape () |
| |
| std::shared_ptr< ValueTape > | getTapeInfos (short tapeId) |
| |
| void | close_tape (int flag) |
| |
| void | setParamVec (std::span< const double > paramvec) |
| | Update parameter values used by subsequent evaluations.
|
| |
| void | save_params () |
| |
| void | free_all_taping_params () |
| |
| ADOLC::CP::detail::Infos * | get_cp_fct (size_t index) const |
| |
Owns one recorded function and the state required to evaluate it.
A ValueTape is the central object behind a tape ID. During recording, active adouble operations register opcodes, locations, values, and optional Taylor values to the TapeRecordingContext of the tape. During a sweep, init_sweep() creates a TapeEvaluationContext whose cursors read the recorded data in forward or reverse order.
Each tape owns value stores, location allocators, statistics, file names, driver scratch data, external-function descriptors, checkpointing state, and sparse recovery data.
Use createNewTape() to allocate a tape, findTape() to look it up, and currentTape() to access the thread's selected tape.
Exclusive mode is the default and reuses the tape's owned buffers for one evaluation at a time. setSharedMode() permits concurrent no-keep sweeps; each sweep initially views the immutable recorded buffers and allocates private storage lazily if it must load or modify a block.