gripleaf
(gripleaf)
June 26, 2024, 6:59am
1
FoundationDB Version: 7.1.44
For ssd-2
storage engine, my storage server memory usage upper to 7GB. However, I use all default configurations.
According to configuration.html#fdbserver-section , It should only use about 4GB RAM.
So, I want to know where the memory is used?
cache_memory used 2GB.
STORAGE_HARD_LIMIT_BYTES used 1.5GB (however, my storage queue size should be almost empty, because I didn’t write many at above time).
in-memory status used few hundreds MB?
So, who may use the another 3.5GB~5GB RAM? There is any way to figure out the memory usage?
My purpose is to avoid oom kill, it would cause cache miss. And I also want to cache as more as possible data in memory to increase throughput.
johscheuer
(Johannes Scheuermann)
June 26, 2024, 8:25am
2
According to configuration.html#fdbserver-section , It should only use about 4GB RAM.
The default value for the memory
setting is 8GiB not 4GiB:
memory
: Maximum resident memory used by the process. The default value is 8GiB. When specified without a unit, MiB is assumed.
So, who may use the another 3.5GB~5GB RAM? There is any way to figure out the memory usage?
You could look at the following logs: Type="MemoryMetrics"
and Type="ProcessMetrics"
to get a better idea and probably Type="StorageMetrics"
.
gripleaf
(gripleaf)
June 26, 2024, 9:43am
3
The default value of 8GiB is double the intended memory usage in the default configuration (providing an emergency buffer to deal with memory leaks or similar problems).
So, I think the memory should be a little more than 4GB at most.
1 Like