You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
addOptionalCommandLineArg(p, outlier_statistic, "Set the statistic used for outlier detection. Options: exclusive_runtime (default), inclusive_runtime");
114
114
addOptionalCommandLineArg(p, global_model_sync_freq, "Set the frequency in steps between updates of the global model (default 1)");
115
+
addOptionalCommandLineArg(p, ps_send_stats_freq, "Set how often in steps the statistics data is uploaded to the pserver (default 1)");
115
116
addOptionalCommandLineArg(p, step_report_freq, "Set the steps between Chimbuko reporting IO step progress. Use 0 to deactivate this logging entirely (default 1)");
116
117
addOptionalCommandLineArg(p, prov_record_startstep, "If != -1, the IO step on which to start recording provenance information for anomalies (for testing, default -1)");
117
118
addOptionalCommandLineArg(p, prov_record_stopstep, "If != -1, the IO step on which to stop recording provenance information for anomalies (for testing, default -1)");
net.add_payload(newNetPayloadRecvCombinedADdata(&global_func_stats[i], &global_counter_stats[i], &global_anom_metrics[i]),i); //each worker thread writes to a separate stats object which are aggregated only at viz send time
197
+
net.add_payload(newNetPayloadRecvCombinedADdataArray(&global_func_stats[i], &global_counter_stats[i], &global_anom_metrics[i]),i); //each worker thread writes to a separate stats object which are aggregated only at viz send time
Copy file name to clipboardExpand all lines: include/chimbuko/chimbuko.hpp
+15-5Lines changed: 15 additions & 5 deletions
Original file line number
Diff line number
Diff line change
@@ -39,6 +39,8 @@ namespace chimbuko {
39
39
< If no parameter server is in use, this string should be empty (length zero)
40
40
< If using ZmqNet (default) this is a tcp address of the form "tcp://${ADDRESS}:${PORT}"
41
41
*/
42
+
int ps_send_stats_freq; /**< How often in steps the statistics data is uploaded to the pserver (default 1) */
43
+
42
44
int hpserver_nthr; /**< If using the hierarchical pserver, this parameter is used to compute a port offset for the particular endpoint that this AD rank connects to */
43
45
44
46
std::string prov_outputpath; /**< Directory where provenance data is written (in conjunction with provDB if active). Blank string indicates no output*/
@@ -260,14 +262,18 @@ namespace chimbuko {
260
262
*/
261
263
voidsendProvenance(constint step, bool force = false);
262
264
265
+
/**
266
+
* @brief Gather and buffer the required statistics data for the pserver
267
+
*/
268
+
voidgatherPSdata(const Anomalies &anomalies,
269
+
constint step,
270
+
constunsignedlong first_event_ts,
271
+
constunsignedlong last_event_ts);
263
272
264
273
/**
265
-
* @brief Gather and send the required data to the pserver
274
+
* @brief Send buffered pserver statistics data when step matches frequency or force==true
voidsendPSdata(constint step, bool force = false);
271
277
272
278
/**
273
279
* @brief Send new metadata entries collected during current fram to provenance DB
@@ -309,6 +315,10 @@ namespace chimbuko {
309
315
std::vector<nlohmann::json> m_normalevent_prov_buf; /**<Buffered normal event provenance data waiting to be sent*/
310
316
311
317
std::set<unsignedlong> m_exec_ignore_counters; /**< Counter indices in this list are ignored by the event manager (but will still be picked up by other components)*/
318
+
319
+
std::vector<ADLocalFuncStatistics> m_funcstats_buf; /**< Buffered function statistics data waiting to be sent*/
320
+
std::vector<ADLocalCounterStatistics> m_countstats_buf; /**< Buffered counter statistics data waiting to be sent*/
321
+
std::vector<ADLocalAnomalyMetrics> m_anom_metrics_buf; /**< Buffered anomaly metrics data waiting to be sent*/
0 commit comments