File ordered_dump.hpp

Parent directory (SeQuant/core/eval)

The ordered (DAG) evaluator’s environment-gated diagnostic dumps, in one place.

Definition (SeQuant/core/eval/ordered_dump.hpp)

Detailed Description

Every dump below is off unless its environment variable is set; when it is unset the call site is a single std::getenv test and no output is produced. Nothing here participates in evaluation these functions only print.

The dumps take their operands as template parameters rather than including the schedule/table/executor headers, so this header sits below all of them and can be included from any of them without an include cycle.

Environment variables (the complete list of what SeQuant reads)

Ordered-evaluator dumps (this header):

Variable Prints

SEQUANT_DUMP_SCHEDULE [levels], [sched], [sched-collapse],

[sched-materialize], [sched-nest] and

[sched-tree] how the ordered schedule

was built and the block tree it became

(plus build_ordered_schedule’s own

dump_reject rejection report, which reads

that builder’s local frame and so stays

there).

SEQUANT_DUMP_USEINDUCED [useinduced] each use-induced slicing

fact (value, mode, position, loop,

consumer) recorded on an operand fetch.

SEQUANT_DUMP_OPENS [opens] the batch loops each node

opens, with its carried modes.

SEQUANT_DUMP_CELLS_OF [cells] / [occs] for the listed value

ids (=<vid>[,<vid>...]): every cell of

each value, and every occurrence layout and

table read of it.

SEQUANT_DUMP_ROOT_NORMS [build-norm] / [root-norm] the norm

of every root-scope build and of every

forest root at the combine, for comparing

term values across schedules.

SEQUANT_UT_READ_DIAG [read] every table-driven operand

read, with consumer, source and slices.

SEQUANT_UT_BLOCK_DIAG [block] / [cell-registry] per-batch

build and assemble steps, block skips, and

the end-of-call registry residency.

SEQUANT_SCHED_DUMP ORDERED_RUN_BLOCK / SCHEDULE_RUN_GROUP

JSON lines for the schedule visualizer

(emitted by the executors themselves).

Cache / runtime knobs documented with their own facility (File cache_manager.hpp, File runtime.hpp, optimize/): SEQUANT_NUM_THREADS, SEQUANT_FACTORIZER_DEBUG, SEQUANT_DISABLE_OUTER_PRODUCT_PRUNING, SEQUANT_UT_ACCESS_CLOCK, SEQUANT_UT_LOOKUP_METER, SEQUANT_UT_PHASE, SEQUANT_UT_EVALIMPL, SEQUANT_UT_BUILD_METER, SEQUANT_UT_BUILD_DUMP, SEQUANT_UT_DEFUSE_METER, SEQUANT_UT_DEFUSE_DUMP, SEQUANT_UT_PEAK_COMPOSE, SEQUANT_REBUILD_TRACE, SEQUANT_UT_STRICT_FILL_ONCE, SEQUANT_SYNC_STATS.

SEQUANT_UT_FORCE_SYNC and SEQUANT_UT_PROD_TR name per-op diagnostics in apply_one_op_traced / Result::fence that the library never reads itself: the gate is evaluated at the call site, by the consuming backend (mpqc’s dry-run and wet drivers). They are listed here because the library’s own doxygen names them (eval.hpp, result.hpp), not because SeQuant reads them.

Everything else prefixed SEQUANT_UT_ is a unit-test knob read by the tests themselves, not by library code.

Includes

Included By

Namespaces

Functions