(Highly unscientific.)
Command used to gather static memory usage:
grep ^Vm "/proc/$(ps fax | grep [m]etrics-bench | awk '{print $1}')/status"
Program used to gather baseline memory usage:
package main
import "time"
func main() {
time.Sleep(600e9)
}
VmPeak: 42604 kB VmSize: 42604 kB VmLck: 0 kB VmHWM: 1120 kB VmRSS: 1120 kB VmData: 35460 kB VmStk: 136 kB VmExe: 1020 kB VmLib: 1848 kB VmPTE: 36 kB VmSwap: 0 kB
Program used to gather metric memory usage (with other metrics being similar):
package main
import (
"fmt"
"metrics"
"time"
)
func main() {
fmt.Sprintf("foo")
metrics.NewRegistry()
time.Sleep(600e9)
}
VmPeak: 44016 kB VmSize: 44016 kB VmLck: 0 kB VmHWM: 1928 kB VmRSS: 1928 kB VmData: 36868 kB VmStk: 136 kB VmExe: 1024 kB VmLib: 1848 kB VmPTE: 40 kB VmSwap: 0 kB
1.412 kB virtual, TODO 0.808 kB resident per counter.
VmPeak: 55024 kB VmSize: 55024 kB VmLck: 0 kB VmHWM: 12440 kB VmRSS: 12440 kB VmData: 47876 kB VmStk: 136 kB VmExe: 1024 kB VmLib: 1848 kB VmPTE: 64 kB VmSwap: 0 kB
0.1242 kB virtual, 0.1132 kB resident per counter.
VmPeak: 44012 kB VmSize: 44012 kB VmLck: 0 kB VmHWM: 1928 kB VmRSS: 1928 kB VmData: 36868 kB VmStk: 136 kB VmExe: 1020 kB VmLib: 1848 kB VmPTE: 40 kB VmSwap: 0 kB
1.408 kB virtual, 0.808 kB resident per counter.
VmPeak: 55020 kB VmSize: 55020 kB VmLck: 0 kB VmHWM: 12432 kB VmRSS: 12432 kB VmData: 47876 kB VmStk: 136 kB VmExe: 1020 kB VmLib: 1848 kB VmPTE: 60 kB VmSwap: 0 kB
0.12416 kB virtual, 0.11312 resident per gauge.
VmPeak: 72272 kB VmSize: 72272 kB VmLck: 0 kB VmHWM: 16204 kB VmRSS: 16204 kB VmData: 65100 kB VmStk: 136 kB VmExe: 1048 kB VmLib: 1848 kB VmPTE: 80 kB VmSwap: 0 kB
29.668 kB virtual, TODO 15.084 resident per histogram.
VmPeak: 256912 kB VmSize: 256912 kB VmLck: 0 kB VmHWM: 146204 kB VmRSS: 146204 kB VmData: 249740 kB VmStk: 136 kB VmExe: 1048 kB VmLib: 1848 kB VmPTE: 448 kB VmSwap: 0 kB
21.4308 kB virtual, 14.5084 kB resident per histogram.
VmPeak: 908112 kB VmSize: 908112 kB VmLck: 0 kB VmHWM: 645832 kB VmRSS: 645588 kB VmData: 900940 kB VmStk: 136 kB VmExe: 1048 kB VmLib: 1848 kB VmPTE: 1716 kB VmSwap: 1544 kB
17.31016 kB virtual, 12.88936 kB resident per histogram.
VmPeak: 62480 kB VmSize: 62480 kB VmLck: 0 kB VmHWM: 11572 kB VmRSS: 11572 kB VmData: 55308 kB VmStk: 136 kB VmExe: 1048 kB VmLib: 1848 kB VmPTE: 64 kB VmSwap: 0 kB
19.876 kB virtual, 10.452 kB resident per histogram.
VmPeak: 153296 kB VmSize: 153296 kB VmLck: 0 kB VmHWM: 101176 kB VmRSS: 101176 kB VmData: 146124 kB VmStk: 136 kB VmExe: 1048 kB VmLib: 1848 kB VmPTE: 240 kB VmSwap: 0 kB
11.0692 kB virtual, 10.0056 kB resident per histogram.
VmPeak: 557264 kB VmSize: 557264 kB VmLck: 0 kB VmHWM: 501056 kB VmRSS: 501056 kB VmData: 550092 kB VmStk: 136 kB VmExe: 1048 kB VmLib: 1848 kB VmPTE: 1032 kB VmSwap: 0 kB
10.2932 kB virtual, 9.99872 kB resident per histogram.
VmPeak: 74504 kB VmSize: 74504 kB VmLck: 0 kB VmHWM: 24124 kB VmRSS: 24124 kB VmData: 67340 kB VmStk: 136 kB VmExe: 1040 kB VmLib: 1848 kB VmPTE: 92 kB VmSwap: 0 kB
31.9 kB virtual, 23.004 kB resident per meter.
VmPeak: 278920 kB VmSize: 278920 kB VmLck: 0 kB VmHWM: 227300 kB VmRSS: 227300 kB VmData: 271756 kB VmStk: 136 kB VmExe: 1040 kB VmLib: 1848 kB VmPTE: 488 kB VmSwap: 0 kB
23.6316 kB virtual, 22.618 kB resident per meter.