Am Mittwoch, den 21.04.2010, 17:01 +0200 schrieb Florian Lohoff: > On Mon, Apr 19, 2010 at 11:54:08AM +0200, Sascha Effert wrote: > > Hallo, > > > > ich habe in C++ eine shared library und ein Programm, welches dies > > benutzt geschrieben. Ich würde jetzt gerne mit dem Speicherbedarf > > experimentieren, speziell mit dem, was durch die shared lib verbraucht > > wird. Momentan habe ich dazu das Programm gestartet und regelmäßig mit > > ps -p $PID -o rss h > > den genutzten Speicherbedarf abgefragt. Habe ich damit wirklich den > > gesamten Speicher, den der Prozess benötigt? Ich muss gestehen, ich > > blicke durch die verschiednen Parameter nicht durch. > > Die RSS ist ja nur ein real life parameter der den best case darstellt. > wenn dein system memory pressure hat wird das ja weniger. Besser ist es > die VSZ sich anzuschauen - das ist ja eher die worst case betrachtung. > > Ansonsten mal valgrind ansehen - ich meine der spuckt auch stats aus, > die beinhalten aber IIRC nur malloc d.h. nicht dein text segment deiner libs. > > Flo
O.K., danke für die vielen Antworten. Mir war nicht bewusst, dass das so ein Problem ist. In Java ist das irgendwie einfacher... :-) Ich werde weiter per ps den Prozess scannen, bessere Werte scheine ich auch aus dem Prozess selbst heraus nicht zu erhalten ohne erheblichen Aufwand in das mitzählen bei jedem new/malloc und der Berechnung des Verbrauchs auf dem Stack zu benötigen. Als Parameter werde ich VSZ verwenden. Ich hatte tatsächlich vorher nicht realisiert, dass RSS nicht den geswapten Speicher mit einberechnet. Sehe ich es richtig, dass auf einem Rechner ohne Swap immer RSS=VSZ gilt? Ich bin ein wenig verwundert, denn auf meinem gerade gestarteten Notebook erhalte ich für Evolution RSS 50664 (ca. 50 MB) und VSZ 198364 (ca. 200 MB). top sagt mir aber, dass ich momentan keinen SWAP (0 k) verwende. Kann mir das jemand erklären? tschau Sascha -- Linux mailing list [email protected] subscribe/unsubscribe: http://lug-owl.de/mailman/listinfo/linux Hinweise zur Nutzung: http://www.lug-owl.de/Mailingliste/hints.epo
