Thread System 0.3.1
High-performance C++20 thread pool with work stealing and DAG scheduling
Loading...
Searching...
No Matches
kcenon::thread::diagnostics::diagnostics_config Struct Reference

Configuration options for thread pool diagnostics. More...

#include <thread_pool_diagnostics.h>

Collaboration diagram for kcenon::thread::diagnostics::diagnostics_config:
Collaboration graph

Public Attributes

std::size_t recent_jobs_capacity {1000}
 Maximum number of recent jobs to track.
 
std::size_t event_history_size {1000}
 Maximum number of events to retain in history.
 
bool enable_tracing {false}
 Enable automatic event tracing.
 
double queue_saturation_high {0.8}
 High watermark threshold for queue saturation (0.0 to 1.0).
 
double utilization_high_threshold {0.9}
 Worker utilization threshold for bottleneck detection.
 
double wait_time_threshold_ms {100.0}
 Wait time threshold (ms) for slow consumer detection.
 
health_thresholds health_thresholds_config {}
 Configurable thresholds for health status determination.
 
std::uint32_t event_sample_rate {1}
 Diagnostics event sampling rate (record every Nth job).
 

Detailed Description

Configuration options for thread pool diagnostics.

Definition at line 50 of file thread_pool_diagnostics.h.

Member Data Documentation

◆ enable_tracing

bool kcenon::thread::diagnostics::diagnostics_config::enable_tracing {false}

◆ event_history_size

std::size_t kcenon::thread::diagnostics::diagnostics_config::event_history_size {1000}

Maximum number of events to retain in history.

Definition at line 60 of file thread_pool_diagnostics.h.

60{1000};

Referenced by kcenon::thread::diagnostics::thread_pool_diagnostics::enable_tracing(), and kcenon::thread::diagnostics::thread_pool_diagnostics::record_event().

◆ event_sample_rate

std::uint32_t kcenon::thread::diagnostics::diagnostics_config::event_sample_rate {1}

Diagnostics event sampling rate (record every Nth job).

When greater than 1, workers only record diagnostic events for every Nth job, reducing clock-read overhead. Default: 1 (every job, for backward compatibility).

Definition at line 94 of file thread_pool_diagnostics.h.

94{1};

◆ health_thresholds_config

health_thresholds kcenon::thread::diagnostics::diagnostics_config::health_thresholds_config {}

Configurable thresholds for health status determination.

Definition at line 85 of file thread_pool_diagnostics.h.

85{};

Referenced by kcenon::thread::diagnostics::thread_pool_diagnostics::check_queue_health().

◆ queue_saturation_high

double kcenon::thread::diagnostics::diagnostics_config::queue_saturation_high {0.8}

High watermark threshold for queue saturation (0.0 to 1.0).

Definition at line 70 of file thread_pool_diagnostics.h.

70{0.8};

◆ recent_jobs_capacity

std::size_t kcenon::thread::diagnostics::diagnostics_config::recent_jobs_capacity {1000}

Maximum number of recent jobs to track.

Definition at line 55 of file thread_pool_diagnostics.h.

55{1000};

Referenced by kcenon::thread::diagnostics::thread_pool_diagnostics::record_job_completion().

◆ utilization_high_threshold

double kcenon::thread::diagnostics::diagnostics_config::utilization_high_threshold {0.9}

Worker utilization threshold for bottleneck detection.

Definition at line 75 of file thread_pool_diagnostics.h.

75{0.9};

Referenced by kcenon::thread::diagnostics::thread_pool_diagnostics::detect_bottlenecks().

◆ wait_time_threshold_ms

double kcenon::thread::diagnostics::diagnostics_config::wait_time_threshold_ms {100.0}

Wait time threshold (ms) for slow consumer detection.

Definition at line 80 of file thread_pool_diagnostics.h.

80{100.0};

Referenced by kcenon::thread::diagnostics::thread_pool_diagnostics::detect_bottlenecks().


The documentation for this struct was generated from the following file: