6d8b07b7f9
This patch reduces memory usage for Cinder Volume and Backup services by tuning glibc. The specific tuning consist on disabling the per thread arenas and disabling dynamic thresholds. The Cinder Backup service suffers from high water mark memory usage and uses excessive memory. As an example just after 10 restore operations the service uses almost 1GB of RAM and does not ever free it afterwards. With this patch the memory consumption of the service is reduced down to almost 130MB. If we add a revert from Cinder (Change-Id I43a20c8687f12bc52b014611cc6977c4c3ca212c) it goes down to 100MB during my tests. It's even worse on real deployments, where we have seen a reduction in peak memory usage, going down from 2.9GB to 1.2GB, and fixing the high water mark issue that previously left the service constantly using 2GB going down to 140MB. This glibc tuning is not applied to all Python services because I haven't done proper testings on them and at first glance they don't seem to have such great improvements. This is the equivalent of the devstack proposed patch from Change-Id Ic9030d01468b3189350f83b04a8d1d346c489d3c Related-bug: #1908805 Change-Id: I65b32f4ce3fddeb694fb33ca65076d45d23a3bb6 |
||
---|---|---|
.. | ||
notes | ||
source |