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: src/plugins/1_sources/raw-cgroups.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -43,7 +43,7 @@ poll_interval = "1s"
43
43
The version of the control groups and the mount point of the cgroupfs are automatically detected.
44
44
45
45
The plugin watches for the creation and deletion of cgroups.
46
-
With cgroup v2, the detection is almost instantaneous, because it relies on inotify.
46
+
With cgroup v2, the detection is almost instantaneous, because it relies on `inotify`.
47
47
With cgroup v1, however, cgroups are repeatedly polled. The refresh interval is `30s`, and it is currently not possible to change it in the plugin's configuration.
Copy file name to clipboardExpand all lines: src/plugins/2_transforms/energy-estimation-tdp.md
+14-18Lines changed: 14 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,27 +12,19 @@ Refer to the [wikipedia page of TDP](https://en.wikipedia.org/wiki/Thermal_desig
12
12
13
13
In the first version of the plugin, we consider only the TDP of the CPU.
14
14
15
-
This plugin requires the cgroupv2 input plugin (k8s) as it needs the input measurements of cgroups v2.
15
+
This plugin requires the cgroupv2 input plugin (k8s) as it needs the input measurements of cgroups v2.
16
16
17
17
The estimation calculation is done using the following formula:
18
18
19
19
$$\Large Energy=\frac{cgroupv2*cpu total usage*nb\_vcpu*TDP}{10^6*pooling\_interval*nb\_cpu}$$
20
20
21
-
cgroupv2_cpu_total_usage: total usage of CPU in micro seconds for a pod
22
-
nb_vcpu: number of virtual CPU of the hosting machine where pod is running
23
-
nb_cpu: number of physical CPU of the hosting machine where pod is running
24
-
polling_interval: polling interval of cgroupv2 input plugin
21
+
-`cgroupv2_cpu_total_usage`: total usage of CPU in micro seconds for a pod
22
+
-`nb_vcpu`: number of virtual CPU of the hosting machine where pod is running
23
+
-`nb_cpu`: number of physical CPU of the hosting machine where pod is running
24
+
-`polling_interval`: polling interval of cgroupv2 input plugin
25
25
26
26
## Energy estimation tdp plugin
27
27
28
-
### How to use
29
-
30
-
Just compile the app-agent of the alumet's github repository.
31
-
32
-
```bash
33
-
cargo run
34
-
```
35
-
36
28
The binary created by the compilation will be found under the target repository.
37
29
38
30
### Prepare your environment
@@ -45,24 +37,28 @@ To work this plugin needs k8s plugin configured, so the needed things are relate
45
37
46
38
### Configuration
47
39
40
+
```toml
48
41
[plugins.EnergyEstimationTdpPlugin]
49
42
poll_interval = "30s"
50
43
tdp = 100.0
51
44
nb_vcpu = 1.0
52
45
nb_cpu = 1.0
46
+
```
53
47
54
-
pool_interval: must be identical to the poll_interval of input k8s plugin. Default value is 1s.
55
-
56
-
nb_vcpu: number of virtual cpu allocated to the virtual machine in case of kubernetes nodes are virtual machine. Using the kubectl get node command, you can retrieve the number of vcpu. If the kubernetes nodes are physical machine, assign it to value 1. Default value is 1.
48
+
-`pool_interval`: must be identical to the poll_interval of input k8s plugin. Default value is 1s.
49
+
-`nb_vcpu`: number of virtual cpu allocated to the virtual machine in case of kubernetes nodes are virtual machine. Using the kubectl get node command, you can retrieve the number of virtual cores. If the kubernetes nodes are physical machine, assign it to value 1. Default value is 1.
57
50
58
51
To get the CPU capacity of a kubernetes node, execute the following command:
52
+
53
+
```sh
59
54
kubectl describe node <node name>| grep cpu -B 2
60
55
Hostname: <node name>
61
56
Capacity:
62
57
cpu: 32
58
+
```
63
59
64
-
nb_cpu: number of physical cpu of the hosted machine. Using the lscpu or hwinfo, you can retrieve the number of cpu. If the kubernetes nodes are physical machine, assign it to value 1. Default value is 1.
60
+
-`nb_cpu`: number of physical cpu of the hosted machine. Using the `lscpu` or `hwinfo`, you can retrieve the number of cpu. If the kubernetes nodes are physical machine, assign it to value 1. Default value is 1.
65
61
66
-
tdp: Thermal Design power; each CPU has a calculated thermal design value; the value can be find on internet (usually on CPU manufacturer); you need the exact CPU family (using command lscpu or hwinfo). For example, for Intel® Xeon® D Processor, family D-2183IT, the tpd can be found [it's intel documentation page](https://ark.intel.com/content/www/us/en/ark/products/136441/intel-xeon-d-2183it-processor-22m-cache-2-20-ghz.html)
62
+
tdp: Thermal Design power; each CPU has a calculated thermal design value; the value can be find on internet (usually on CPU manufacturer); you need the exact CPU family (using command `lscpu` or `hwinfo`). For example, for Intel® Xeon® D Processor, family D-2183IT, the tpd can be found [it's intel documentation page](https://ark.intel.com/content/www/us/en/ark/products/136441/intel-xeon-d-2183it-processor-22m-cache-2-20-ghz.html)
0 commit comments