swap used trotz freiem speicher und steigend?

  • ich beobachte seit einiger zeit dass auf meinem vdr nach einigen stunden betrieb swap speicher belegt ist. mir is allerdings nicht ganz klar warum.


    nach dem start sieht die speicher belegung ca.so aus:

    Zitat

    total used free shared buffers cached
    Mem: 256256 85816 170440 0 13256 47896
    -/+ buffers/cache: 24664 231592
    Swap: 248968 0 248968


    linux holt sich dann nach und nach den ganzen speicher. ich nehme mal an zum cachen der disks. nach einigen stunden betrieb sieht das ganze dann so aus:


    Zitat

    total used free shared buffers cached
    Mem: 256256 72156 184100 0 8404 34320
    -/+ buffers/cache: 29432 226824
    Swap: 248968 316 248652


    die ram belegung ist relativ gering, trotzdem wird weiterhin swap belegt. der speicherverbrauch steigt dann wieder und nach einigen weiteren stunden betrieb ist auch 'swap used' wieder höher.


    nach ca. 12h betrieb ist zwar nur knapp 1mb swap belegt, aber das ganze stimmt mich trotzdem nachdenklich. scheinbar schaukelt sich der swap vebrauch langsam aber stetig höher.
    mit ps aux konnte ich auch keine außergewöhnlich großen speicher verbraucher finden.


    ich verstehe nicht warum überhaupt swap belegt wird. das vdr system sollte soch mit 256mb auskommen oder? und ich nehme mal an dass der speicher der von linux zum cachen der disks verwendet wird, wieder rechtzeitig freigegeben wird falls laufende prozesse ressourcen benötigen?


    wäre für aufklärung dankbar..


    ps: kernel is übrigens 2.4.27

  • "Tote" Speicherseiten werden nach swap ausgelagert, weil der Speicher, der nie angesprochen wird, sinnvoller als Cache verwendet werden kann.
    Zu toten Speicherseiten kommt man zum Beispiel durch Memory Leaks. Oder allokiertem Speicher, der eben nicht benutzt wird. Letzterer muss aber die Größe einer Page übersteigen.


    Es kann aber auch sein, dass zwischendurch ein Prozess lief, der so viel Speicher angefordert hat, dass Swap benutzt werden musste und deshalb Teile rausgeschoben wurden.


    Die Speicherauslastung der einzelnen Prozesse kann man schön in top sehen: top starten und dann "M" drücken, dann wird nach Speicherverbraucht sortiert.


    uwe

    server: yavdr trusty testing, 2 * L5420, 32GB, 64TB RAID6 an OctopusNet (DVBS2- 8 ) + minisatip@dsi400 (DVBS2- 4 )
    frontends: kodi und xine


  • top und so hab ich natürlich verfolgt. konnte aber nichts finden was darauf hindeuten würde dass zu irgendeinem zeitpunkt der ganze speicher ausgelastet wäre. außer vdr und samba läuft auf der kiste eigentlich nichts.


    Dass 'tote' pages ausgelagert werden ist aber auch intressant. Vielleicht hat's ja damit zu tun.

  • Zitat

    Original von weak
    Dass 'tote' pages ausgelagert werden ist aber auch intressant. Vielleicht hat's ja damit zu tun.


    Schau einfach mal hier.


    Noch Fragen?

    Glotze: yaVDR (ASRock Q1900M, 4GB RAM, DD Cine S2 V6.5, ZOTAC GT630 (Rev. 2)
    Server: HP ProLiant MicroServer G8, VMware ESXi 5.5 :P

  • Zitat

    Originally posted by pidel
    Das ist eine generelle Strategie beim swappen. Lange nicht benutzt, dann weg damit. Macht Platz für wichtigeres im Speicher. Solange nur Swap-Outs auftreten hast du genügend Ram.


    mfg
    pidel


    also laut vmstat waren si und so gleich, es gab also auch swap ins. allerdings nciht besonders viele reads und writes, hab die werte jetz aber nicht mehr so im kopf.


    Zitat

    Originally posted by knebb
    Schau einfach mal hier.


    Noch Fragen?


    sehr intressant. thx

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!