Hallo Hillmar,
On 19 Jan 2014, at 23:17, Hilmar Preusse hille42@web.de wrote:
Moin,
eine Kunde von uns hat eine Applikation die ganz schön viel RAM braucht (so 80GB) auf RH 6.x. Wenn er diese stoppt kann sie anschließend nicht wieder korrekt gestartet werden. Er hat heraus gefunden, daß man den Cache vom OS vorher explizit leeren kann und dann fährt die Applikation wieder hoch.
Darf man erfahren, was das für eine Applikation ist? Verwendet die Applikation mlock(2)? Braucht die Applikation die besagten 80GB direkt nach dem Start oder allokiert sie diese nur?
As this is a non-destructive operation and dirty objects are not freeable, the user should run `sync' first.
<snap>
wird hier nur der Cache gelöscht. Dies sollte aus meiner Sicht unnötig sein, da der Cache (auch der belegte) jederzeit frei gegeben wird.
Naja, teilweise halt, dirty-pages z.B. nicht (steht ja auch in der Doku). Ich bin mir sicher, es gibt auch noch einige SLAB-Caches die nicht sofort reclaimable sind.
Da dies mit sehr hoher Wahrscheinlichkeit ein NUMA-System ist, was sagt den z.B. "numactl -H” vor dem Start und auf was steht der Kernel-Parameter vm.zone_reclaim_mode? Auf was ist vm.overcommit_memory gestellt?
MfG Martin