Open aprospero opened 6 months ago
hey @aprospero Thanks for a question Could you please share a memory profile?
Hey AndrewChubatiuk, thanks for having a look into it!
Could you specify more in detail what you need? Do you mean a certain VM profiler info? I'm not familiar with golang, so how can I extract that info?
@AndrewChubatiuk Bump
Is your question request related to a specific component?
VictoriaMetrics
Describe the question in detail
Abstract
I am evaluating VM on a embedded device with limited resources. My ultimate goal is to only allocate 20-30MiB RAM to VM.
Setup
Platform:
OS:
VM Version:
Test data:
Test setup:
Command line flags:
Also tried but only sporadic:
Regardless of the combination of listed command line flags the result is always pretty much the same (see below).
Observed behavior
the RSS page count allocated by vm starts after startup at around 60MB (which is already way more than expected) and begins to continually rise when proceeding with the benchmark. This behaviour goes on until the system runs out of free memory pages and the kernel kills the vm process.
A typical VM startup log looks like this:
The typical output of our Benchmark looks like this:
The Benchmark starts with tiny queries for only one series over the minimum timespan of 5min. It then raises the timespan and series count step by step.
1 divided in 45 smaller consecutive 1 day queries
Observed VM Metrics
Expected Behaviour
I understand that the real memory consumption does not alone depend on the provided command line flags but what definitely was unxepected to see was the RSS raising indefinitely until no free memory pages are available anymore.
I have expected VM would
Further comments
Epilog
I'm out of ideas how to tame VM regarding memory consumption. I'd say I don't expect too much from it limiting all queries to 1day timespans and only a hand full of series. Even the biggest queries result in around 300 data points.
If anyone has an idea or even a comment that maybe I'm in vain since it won't run with that fistful of RAM is appreciated!
Troubleshooting docs