batchlas::DiagnosticsSettings Struct Reference

Overview

Tracing, dumping, profiling and the opt-in checks.

None changes a numeric result.

Three of these name a filesystem path the library opens for writing (the kernel trace and the coverage output from atexit handlers, the band-reduction dump via create_directories()); an embedding application can clear them with configure().

Definition at line 375 of file settings.hh.

#include <batchlas/settings.hh>

Variables

◆ profiling

bool batchlas::DiagnosticsSettings::profiling = false

BATCHLAS_QUEUE_PROFILING or BATCHLAS_BENCH_PROFILING (env_truthy, ORed): enable SYCL queue profiling.

Opt-in because it costs on every submit; the kernel trace implies it.

Definition at line 378 of file settings.hh.

◆ kernel_trace

bool batchlas::DiagnosticsSettings::kernel_trace = false

BATCHLAS_KERNEL_TRACE or BATCHLAS_TRACE_KERNELS (env_truthy, ORed).

Definition at line 381 of file settings.hh.

◆ metal_flush_each_op

bool batchlas::DiagnosticsSettings::metal_flush_each_op = false

BATCHLAS_METAL_FLUSH_EACH_OP (env_truthy): Metal queues created afterwards commit one command buffer per operation instead of batching them (AdaptiveCpp coarse-grained events), so a GPU fault names the operation that raised it.

Profiling implies it.

Definition at line 386 of file settings.hh.

◆ kernel_trace_path

std::string batchlas::DiagnosticsSettings::kernel_trace_path = "batchlas_kernels.trace.json"

The first non-empty of BATCHLAS_KERNEL_TRACE_PATH and BATCHLAS_TRACE_PATH.

Written from an atexit handler.

Definition at line 390 of file settings.hh.

◆ coverage_out

EnvValue batchlas::DiagnosticsSettings::coverage_out {}

BATCHLAS_COVERAGE_OUT: dispatch coverage is written to <value>.<pid> at exit.

Definition at line 393 of file settings.hh.

◆ select_trace

bool batchlas::DiagnosticsSettings::select_trace = false

BATCHLAS_SELECT_TRACE (env_truthy): one stderr line per select::choose decision (src/select/select.hh).

Definition at line 397 of file settings.hh.

◆ debug_filter_degree

bool batchlas::DiagnosticsSettings::debug_filter_degree = false

BATCHLAS_DEBUG_FILTER_DEGREE: presence only, so any value including the empty string enables it.

Prints one line per batch item per iteration.

Definition at line 401 of file settings.hh.

◆ debug_sytrd_small

bool batchlas::DiagnosticsSettings::debug_sytrd_small = false

BATCHLAS_DEBUG_SYTRD_SMALL (env_truthy). Prints once.

Definition at line 404 of file settings.hh.

◆ gesvd_profile

bool batchlas::DiagnosticsSettings::gesvd_profile = false

BATCHLAS_GESVD_PROFILE (env_truthy): forces a wait_and_throw() per stage, serialising the pipeline, and prints CSV rows to stderr.

Definition at line 408 of file settings.hh.

◆ syevx_trace

bool batchlas::DiagnosticsSettings::syevx_trace = false

BATCHLAS_SYEVX_TRACE (env_truthy).

Definition at line 411 of file settings.hh.

◆ cta_debug_sync

bool batchlas::DiagnosticsSettings::cta_debug_sync = false

BATCHLAS_CTA_DEBUG_SYNC (env_truthy): prints [cta-debug] <stage> and drains the pipeline at each stage, so an async error surfaces at a named stage.

Definition at line 416 of file settings.hh.

◆ steqr_cta_check

EnvValue batchlas::DiagnosticsSettings::steqr_cta_check {}

BATCHLAS_STEQR_CTA_CHECK (first character {1,t,T,y,Y}): steqr_cta scans its per-item status and throws if any item did not converge.

Warning
Unset, non-convergence in steqr_cta is silent.

Definition at line 422 of file settings.hh.

◆ dump_bandr1

struct batchlas::DiagnosticsSettings::DumpBandR1Settings batchlas::DiagnosticsSettings::dump_bandr1

The band-reduction dump family.

Classes

struct  DumpBandR1Settings
 The BATCHLAS_DUMP_BANDR1_* band-reduction dump family. More...