[OSM-Devserver] Idee gegen Tod durch OOM

Patrick Kilian osm at petschge.de
Mi Apr 21 19:06:58 CEST 2010


H,

> Praktisches Tool, ehrlich. Kann man /usr/bin/time dazu nutzen, den
> Verbrauch von virtuellem und echtem Speicher zu messen?
Nicht jede Variante von /usr/bin/time gibt die resident size aus,
geschweige denn die virtual size.

Das time aus den gnuutils liefert einem in Version 1.7 zumindest die
(maximum) resident size. Mit "/usr/bin/time -f %M <befehl>" erhält man
NUR die maximum resident size (in kilobyte), ohne den format specifier
muss man das aus dem Test-Output rauspopeln.

Ich wüsste nicht wie man ähnlich einfach an die maximum virtual size
herankommt, andererseits ist DIE ziemlich egal, da Adressraum keine
Resource ist, die verbraucht wird.

(Was leider manche Programme dazu verleitet sich einfach 4 GB oder mehr
an Hauptspeicher in den Adressraum zu allozieren, darin dann selber
Speicherverwaltung zu machen und sich drauf zu verlassen daß das
Betriebsystem nur die wirklich benutzen pages ins RAM legt. Man kann
sich vorstellen wie gut sowas mit strict overcommit funktioniert...)

> Dann könnte ich 15% draufrechnen und sicherer arbeiten.
Das lässt sich zumindest für die resident size (und das ist ja das was
den RAM vollmacht) realisieren.


HTH,
Patrick "Petschge" Kilian