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
Copy file name to clipboardExpand all lines: docs/design/metrics.md
-21
Original file line number
Diff line number
Diff line change
@@ -116,27 +116,6 @@ All the metrics specific to the Kepler Exporter are prefixed with `kepler`.
116
116
!!! note
117
117
You can enable/disable expose of those metrics through `expose-hardware-counter-metrics` Kepler execution option or `EXPOSE_HW_COUNTER_METRICS` environment value.
118
118
119
-
### cGroups Metrics
120
-
121
-
-**kepler_container_cgroupfs_cpu_usage_us_total**
122
-
123
-
This measures the total CPU time used by the container reading from cGroups stat.
Copy file name to clipboardExpand all lines: docs/hardwareengagement/index.md
+6-3
Original file line number
Diff line number
Diff line change
@@ -24,9 +24,12 @@ Currently, we use power consumption API as RAPL or ACPI.
24
24
For some of the devices, you may need to find your own way to get power consumption, and implement in golang for Kepler usage.
25
25
For further plan, please ref [here](https://github.com/sustainable-computing-io/kepler/issues/644)
26
26
27
-
### eBPF/cgroup data
27
+
### eBPF data
28
28
29
-
Currently, we relays on eBPF and cgroup to characterization a process/pod. Hence, you can ref to our dependency as BCC or cgroup. To test those golang package works well on your device.
29
+
Currently, we rely on eBPF to obtain key cpu, irq and perf information about a process.
30
+
Hence, refer to the documentation of [cilium/ebpf](https://github.com/cilium/ebpf) to test whether these Go packages work well on your device.
31
+
32
+
Please let us know if you need any further adjustments!
30
33
31
34
## Stage 1 Integration with ratio
32
35
@@ -39,7 +42,7 @@ You should know the scope of the Power consumption API. How many API do you have
39
42
### Interval
40
43
41
44
You should know the intervals of the Power consumption API.
42
-
As Kepler collects eBPF and cgroup data in each 3s by default, you should know the interval and make them in same time slot.
45
+
As Kepler collects eBPF data in each 3s by default, you should know the interval and make them in same time slot.
Copy file name to clipboardExpand all lines: docs/index.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
3
3
Kepler (Kubernetes-based Efficient Power Level Exporter) is a Prometheus exporter. It uses eBPF to probe CPU performance counters and Linux kernel tracepoints.
4
4
5
-
These data and stats from cgroup and sysfs can then be fed into ML models to estimate energy consumption by Pods.
5
+
These data and stats from sysfs can then be fed into ML models to estimate energy consumption by Pods.
6
6
7
7
Check out the project on GitHub ➡️ [Kepler](https://github.com/sustainable-computing-io/kepler).
Copy file name to clipboardExpand all lines: docs/usage/deep_dive.md
+4-4
Original file line number
Diff line number
Diff line change
@@ -12,11 +12,11 @@ Kepler, Kubernetes-based Efficient Power Level Exporter, offers a way to estimat
12
12
13
13
Kepler uses the following to collects power data:
14
14
15
-
#### EBPF, Hardware Counters, cGroups
15
+
#### EBPF, Hardware Counters
16
16
17
-
Kepler can utilize a BPF program integrated into the kernel's pathway to extract process-related resource utilization metrics or use metrics from Hardware Counters or cGroups.
17
+
Kepler can utilize a BPF program integrated into the kernel's pathway to extract process-related resource utilization metrics or use metrics from Hardware Counters.
18
18
The type of metrics used to build the model can differ based on the system's environment.
19
-
For example, it might use hardware counters, or metrics from tools like eBPF or cGroups, depending on what is available in the system that will use the model.
19
+
For example, it might use hardware counters, or metrics from tools like eBPF, depending on what is available in the system that will use the model.
20
20
21
21
#### Real-time Component Power Meters
22
22
@@ -44,7 +44,7 @@ When creating the power model, the Model Server uses a regression algorithm. It
44
44
45
45
Once trained, the Model Server makes these models accessible through a github repository, where any Kepler deployment can download the model from.
46
46
Kepler then uses these models to calculate how much power a node (VM) consumes based on the way its resources are being used. The type of metrics used to build the model can differ based on the system's environment.
47
-
For example, it might use hardware counters, or metrics from tools like eBPF or cGroups, depending on what is available in the system that will use the model.
47
+
For example, it might use hardware counters, or metrics from tools like eBPF, depending on what is available in the system that will use the model.
48
48
49
49

|Kepler DaemonSet Environment (COUNTER_METRICS)|counter|List of performance metrics to enable from counter source| * (enable all available metrics from counter source)|
30
-
|Kepler DaemonSet Environment (CGROUP_METRICS)|cgroup|List of performance metrics to enable from cgroup source| * (enable all available metrics from cgroup source)|
31
30
|Kepler DaemonSet Environment (BPF_METRICS)|bpf|List of performance metrics to enable from bpf (aka. eBPF) source| * (enable all available metrics from bpf source)|
32
31
|Kepler DaemonSet Environment (GPU_METRICS)|gpu|List of performance metrics to enable from gpu source| * (enable all available metrics from gpu source)|
0 commit comments