Skip to content

Commit fa37ac5

Browse files
authored
Fix the way memory RSS is calculated for cgroupv2 (#40)
1 parent db27169 commit fa37ac5

File tree

2 files changed

+3
-3
lines changed

2 files changed

+3
-3
lines changed

collector/cgroupv2.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ func (e *Exporter) getMetricsv2(name string, pids []int, opts cgroup2.InitOpts)
171171
return metric, err
172172
}
173173
if stats.Memory != nil {
174-
metric.memoryRSS = float64(stats.Memory.Anon) + swapcached + float64(stats.Memory.AnonThp)
174+
metric.memoryRSS = float64(stats.Memory.Anon) + swapcached + float64(stats.Memory.File)
175175
metric.memoryUsed = float64(stats.Memory.Usage)
176176
metric.memoryTotal = float64(stats.Memory.UsageLimit)
177177
metric.memoryCache = float64(stats.Memory.File)

collector/cgroupv2_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ func TestCollectv2UserSlice(t *testing.T) {
110110
if val := metrics[0].cpus; val != 0 {
111111
t.Errorf("Unexpected value for cpus, got %v", val)
112112
}
113-
if val := metrics[0].memoryRSS; val != 22048768 {
113+
if val := metrics[0].memoryRSS; val != 22626304 {
114114
t.Errorf("Unexpected value for memoryRSS, got %v", val)
115115
}
116116
if val := metrics[0].memoryUsed; val != 27115520 {
@@ -184,7 +184,7 @@ func TestCollectv2SLURM(t *testing.T) {
184184
if val := m.cpus; val != 1 {
185185
t.Errorf("Unexpected value for cpus, got %v", val)
186186
}
187-
if val := m.memoryRSS; val != 2260992 {
187+
if val := m.memoryRSS; val != 2777088 {
188188
t.Errorf("Unexpected value for memoryRSS, got %v", val)
189189
}
190190
if val := m.memoryUsed; val != 5660672 {

0 commit comments

Comments
 (0)