diff options
author | vkalintiris <vasilis@netdata.cloud> | 2022-12-21 15:03:05 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-12-21 15:03:05 +0200 |
commit | 689dc6b7fbbf495ce3e020dcff0d014a8d338c52 (patch) | |
tree | 1f458a3218798b53809d0868a82fcad1a20b1e32 /ml/Stats.h | |
parent | fe386aad57f24574783f4c68bab433a5cdfe6f64 (diff) |
Refactor ML code and add support for multiple KMeans models. (#14065)
* Add profile.plugin
Creates the specified number of charts/dimensions, and supports
backfilling with pseudo-historical data.
* Bump
* Remove wrongly merged line.
* Use the number of models specified from the config section.
* Add option to consult all ML models.
* Remove profiling option consuming all models.
* Add underscore after chart name prefix.
* prediction -> dimensions chart
* reorder funcs
* Split charts across types with correct priority
* Ignore training request when chart is under replication.
* Track global number of models consulted.
* Cleanup config.
* initial readme updates
* fix readme
* readme
* Fix function definition when ML is disabled.
* Add dummy ml_chart_update_{begin,end}
* Remove profile_plugin
* Define chart priorities under collectors/all.h
* s/curr_t/current_time/
Co-authored-by: Andrew Maguire <andrewm4894@gmail.com>
Diffstat (limited to 'ml/Stats.h')
-rw-r--r-- | ml/Stats.h | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/ml/Stats.h b/ml/Stats.h new file mode 100644 index 0000000000..b99bc39da5 --- /dev/null +++ b/ml/Stats.h @@ -0,0 +1,46 @@ +// SPDX-License-Identifier: GPL-3.0-or-later + +#ifndef ML_STATS_H +#define ML_STATS_H + +#include "ml-private.h" + +namespace ml { + +struct MachineLearningStats { + size_t NumMachineLearningStatusEnabled; + size_t NumMachineLearningStatusDisabledUE; + size_t NumMachineLearningStatusDisabledSP; + + size_t NumMetricTypeConstant; + size_t NumMetricTypeVariable; + + size_t NumTrainingStatusUntrained; + size_t NumTrainingStatusPendingWithoutModel; + size_t NumTrainingStatusTrained; + size_t NumTrainingStatusPendingWithModel; + + size_t NumAnomalousDimensions; + size_t NumNormalDimensions; +}; + +struct TrainingStats { + struct rusage TrainingRU; + + size_t QueueSize; + size_t NumPoppedItems; + + usec_t AllottedUT; + usec_t ConsumedUT; + usec_t RemainingUT; + + size_t TrainingResultOk; + size_t TrainingResultInvalidQueryTimeRange; + size_t TrainingResultNotEnoughCollectedValues; + size_t TrainingResultNullAcquiredDimension; + size_t TrainingResultChartUnderReplication; +}; + +} // namespace ml + +#endif /* ML_STATS_H */ |