]> git.ipfire.org Git - thirdparty/collectd.git/commitdiff
gpu_sysman: Log more exact sampling and interval information
authorEero Tamminen <eero.t.tamminen@intel.com>
Fri, 28 Jan 2022 15:29:57 +0000 (17:29 +0200)
committerMatthias Runge <mrunge@matthias-runge.de>
Mon, 12 Sep 2022 12:10:55 +0000 (14:10 +0200)
About plugin settings when GpuInfo is enabled, and in metrics HELP

src/collectd.conf.pod
src/gpu_sysman.c
src/gpu_sysman_test.c

index 9c3d961e4c569c33312c41d842a46e4bdbecb992..bf9041ef9b06485316db882080dd592e2f41acce 100644 (file)
@@ -3723,8 +3723,8 @@ values is disabled, it is better to set Samples to 1 (default).
 
 =item B<LogGpuInfo>
 
-If enabled, plugin logs at start some information about all the GPUs
-detected through Sysman API.
+If enabled, plugin logs at start some information about plugin
+settings and all the GPUs detected through Sysman API.
 
 =item B<MetricsOutput>
 
index 19dde63472ccf070aebb48761f315dda692a951a..e98ff7a87c5238569bad232d30f71999453f0544 100644 (file)
@@ -242,8 +242,17 @@ static int gpu_config_check(void) {
   assert(config.output < STATIC_ARRAY_SIZE(metrics_output));
 
   if (config.gpuinfo) {
-    INFO("Sysman '" KEY_SAMPLES "': %d", config.samples);
-    INFO(KEY_METRICS_OUTPUT ": %s", metrics_output[config.output]);
+    double interval = CDTIME_T_TO_DOUBLE(plugin_get_interval());
+    INFO("\nPlugin settings for '" PLUGIN_NAME "':");
+    INFO("- " KEY_SAMPLES ": %d", config.samples);
+    if (config.samples > 1) {
+      INFO("- internal sampling interval: %.2f", interval);
+      INFO("- query / aggregation submit interval: %.2f",
+           config.samples * interval);
+    } else {
+      INFO("- query / submit interval: %.2f", interval);
+    }
+    INFO("- " KEY_METRICS_OUTPUT ": %s", metrics_output[config.output]);
     INFO("Disabled metrics:");
   }
   struct {
@@ -957,12 +966,12 @@ static bool gpu_mems(gpu_device_t *gpu, unsigned int cache_idx) {
   }
 
   metric_family_t fam_bytes = {
-      .help = "Memory usage (in bytes)",
+      .help = "Sampled memory usage (in bytes)",
       .name = METRIC_PREFIX "memory_used_bytes",
       .type = METRIC_TYPE_GAUGE,
   };
   metric_family_t fam_ratio = {
-      .help = "Memory usage ratio (0-1)",
+      .help = "Sampled memory usage ratio (0-1)",
       .name = METRIC_PREFIX "memory_usage_ratio",
       .type = METRIC_TYPE_GAUGE,
   };
@@ -1195,7 +1204,7 @@ static bool gpu_freqs(gpu_device_t *gpu, unsigned int cache_idx) {
   }
 
   metric_family_t fam = {
-      .help = "HW frequency (in MHz)",
+      .help = "Sampled HW frequency (in MHz)",
       .name = METRIC_PREFIX "frequency_mhz",
       .type = METRIC_TYPE_GAUGE,
   };
index 03545ff7cd42b2dc9d6e9020312f602187c15f4a..1531a533588ecb16f48255f04c6c9e0b30bf1a9d 100644 (file)
@@ -805,6 +805,8 @@ static struct {
   plugin_shutdown_cb shutdown;
 } registry;
 
+cdtime_t plugin_get_interval(void) { return MS_TO_CDTIME_T(500); }
+
 int plugin_register_config(const char *name,
                            int (*callback)(const char *key, const char *val),
                            const char **keys, int keys_num) {