|
Thread System 0.3.1
High-performance C++20 thread pool with work stealing and DAG scheduling
|
Statistics about DAG execution. More...
#include <dag_config.h>

Public Member Functions | |
| auto | is_complete () const -> bool |
| Check if all jobs are complete (success or failure) | |
| auto | all_succeeded () const -> bool |
| Check if all jobs succeeded. | |
| auto | success_rate () const -> double |
| Calculate success rate. | |
Public Attributes | |
| std::size_t | total_jobs {0} |
| Total number of jobs in DAG. | |
| std::size_t | completed_jobs {0} |
| Number of successfully completed jobs. | |
| std::size_t | failed_jobs {0} |
| Number of failed jobs. | |
| std::size_t | pending_jobs {0} |
| Number of pending jobs. | |
| std::size_t | running_jobs {0} |
| Number of currently running jobs. | |
| std::size_t | skipped_jobs {0} |
| Number of skipped jobs. | |
| std::size_t | cancelled_jobs {0} |
| Number of cancelled jobs. | |
| std::chrono::milliseconds | total_execution_time {0} |
| Total wall-clock time. | |
| std::chrono::milliseconds | critical_path_time {0} |
| Time of longest path. | |
| double | parallelism_efficiency {0.0} |
| Actual vs theoretical speedup. | |
Statistics about DAG execution.
Definition at line 147 of file dag_config.h.
|
inlinenodiscard |
Check if all jobs succeeded.
Definition at line 174 of file dag_config.h.
References cancelled_jobs, failed_jobs, and is_complete().

|
inlinenodiscard |
Check if all jobs are complete (success or failure)
Definition at line 165 of file dag_config.h.
References pending_jobs, and running_jobs.
Referenced by all_succeeded().

|
inlinenodiscard |
Calculate success rate.
Definition at line 183 of file dag_config.h.
References completed_jobs, and total_jobs.
| std::size_t kcenon::thread::dag_stats::cancelled_jobs {0} |
Number of cancelled jobs.
Definition at line 155 of file dag_config.h.
Referenced by all_succeeded(), and kcenon::thread::dag_scheduler::get_stats().
| std::size_t kcenon::thread::dag_stats::completed_jobs {0} |
Number of successfully completed jobs.
Definition at line 150 of file dag_config.h.
Referenced by kcenon::thread::dag_scheduler::get_stats(), and success_rate().
| std::chrono::milliseconds kcenon::thread::dag_stats::critical_path_time {0} |
| std::size_t kcenon::thread::dag_stats::failed_jobs {0} |
Number of failed jobs.
Definition at line 151 of file dag_config.h.
Referenced by all_succeeded(), and kcenon::thread::dag_scheduler::get_stats().
| double kcenon::thread::dag_stats::parallelism_efficiency {0.0} |
| std::size_t kcenon::thread::dag_stats::pending_jobs {0} |
Number of pending jobs.
Definition at line 152 of file dag_config.h.
Referenced by kcenon::thread::dag_scheduler::get_stats(), and is_complete().
| std::size_t kcenon::thread::dag_stats::running_jobs {0} |
Number of currently running jobs.
Definition at line 153 of file dag_config.h.
Referenced by kcenon::thread::dag_scheduler::get_stats(), and is_complete().
| std::size_t kcenon::thread::dag_stats::skipped_jobs {0} |
Number of skipped jobs.
Definition at line 154 of file dag_config.h.
Referenced by kcenon::thread::dag_scheduler::get_stats().
| std::chrono::milliseconds kcenon::thread::dag_stats::total_execution_time {0} |
Total wall-clock time.
Definition at line 157 of file dag_config.h.
Referenced by kcenon::thread::dag_scheduler::get_stats().
| std::size_t kcenon::thread::dag_stats::total_jobs {0} |
Total number of jobs in DAG.
Definition at line 149 of file dag_config.h.
Referenced by kcenon::thread::dag_scheduler::get_stats(), and success_rate().