abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 11:44 | Pozvánky

    Konference LinuxDays 2026 proběhne o víkendu 3. a 4. října v Praze v areálu ČVUT v Dejvicích na FIT. Čekají vás desítky přednášek, workshopy, stánky a setkání se spoustou chytrých lidí.

    Petr Krčmář | Komentářů: 0
    dnes 00:44 | Humor

    Nové verze webových prohlížečů Chrome a Firefox jsou vydávány každé 4 týdny. Aktuální verze Chrome je 145. Aktuální verze Firefoxu je 148. Od září přejde Chrome na dvoutýdenní cyklus vydávání. V kterém týdnu bude mít Chrome větší číslo verze než Firefox? 😀

    Ladislav Hagara | Komentářů: 1
    včera 21:55 | IT novinky Ladislav Hagara | Komentářů: 2
    včera 13:44 | Komunita

    Bylo spuštěno hlasování o přednáškách a workshopech pro letošní Installfest, jenž proběhne o víkendu 28. a 29. března v Praze na Karlově náměstí 13.

    Ladislav Hagara | Komentářů: 2
    včera 04:33 | Nová verze

    Byla vydána (Mastodon, 𝕏) třetí RC verze GIMPu 3.2. Přehled novinek v oznámení o vydání. Podrobně v souboru NEWS na GitLabu.

    Ladislav Hagara | Komentářů: 0
    2.3. 21:44 | IT novinky

    Apple představil iPhone 17e a iPad Air s čipem M4.

    Ladislav Hagara | Komentářů: 15
    2.3. 21:11 | Zajímavý software

    Byla vydána verze 1.0 editoru kódů Gram. Jedná se o fork editoru Zed bez telemetrie a umělé inteligence.

    Ladislav Hagara | Komentářů: 0
    2.3. 20:33 | IT novinky

    Byla oznámena spolupráce GrapheneOS s Motorolou. Podrobnosti v tiskové zprávě. GrapheneOS (Wikpedie) je varianta Androidu zaměřující se na bezpečnost a soukromí.

    Ladislav Hagara | Komentářů: 0
    2.3. 02:22 | Nová verze

    Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 26.2.1. Přehled novinek v Changelogu.

    Ladislav Hagara | Komentářů: 0
    2.3. 02:11 | Komunita

    Volí se dvě místa v Radě openSUSE. Seznamte se se čtyřmi kandidáty. Členové projektu openSUSE mohou hlasovat od 1. do 8. března. Výsledky budou oznámeny 9. března.

    lkocman | Komentářů: 3
    Které desktopové prostředí na Linuxu používáte?
     (17%)
     (6%)
     (0%)
     (11%)
     (28%)
     (2%)
     (5%)
     (1%)
     (13%)
     (25%)
    Celkem 1005 hlasů
     Komentářů: 25, poslední 3.2. 19:50
    Rozcestník

    Dotaz: Jak zjistit jak je využívána cache?

    Karry avatar 25.12.2010 15:47 Karry | skóre: 10
    Jak zjistit jak je využívána cache?
    Přečteno: 869×
    Zdravím.

    V notebooku mám 4G ram (mínus cca 256M pro grafiku) a poslední dobou začínám pociťovat že je to už asi málo... Poměrně často vidím svůj systém ve swapovacích agónii. Než ale utratím balík peněz za 8G, chtěl bych zjistit jak kernel (2.6.36.2) ramku vůbec využívá.

    Při pohledu na free, resp. vmstat je vidět že poměrně velká část paměti je používána jako cache a systém přesto swapuje.
    $ free -m 
                 total       used       free     shared    buffers     cached
    Mem:          3756       3693         62          0         38        958
    -/+ buffers/cache:       2696       1059
    Swap:         4290         71       4219
    
    $ vmstat -S M 1 
    procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
     r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
     1  0     71    105     34    918   21   24   267    75   92  121 11  6 77  6
    Je mi jasné že je mnohem užitečnější odswapovat paměť na kterou se dlouho nešáhlo a uvolněné místo použít na diskovou cache, navíc toto chování dá poměrně dobře omezit nastavením /proc/sys/vm/swappiness na nulu...

    Jde ale nějak zjistit jak je vůbec tato cache používána? Protože po vynuceném vyprázdnění (diskové?) cache
    sync ; echo 3 > /proc/sys/vm/drop_caches 
    Zůstane v cachi ještě poměrně dost dat (958M před, 355M po).

    Ve výpisu vmstat -S M -s vidím 354 M swap cache. Co jsem tak pochopil z linux-vmm, tak swap cache je tabulka stránek které byly nahrány ze swapu do ram a ještě nebyly modifikovány, takže je lze uvolnit bez IO. A na tohle je potřeba 354M? Navíc tato položka nezmizí když dám swapoff -a...?! Na jedné stránce jsem četl názor že jde jen o špatně pojmenovanou položku ve vmstat...

    Otázka tedy zní. Jak zjistit podrobnosti o tom co se nachází v cache? Jak nastavit tlak na používání jednotlivých částí a jak jí celou vyprázdnit?

    unzip; strip; touch; grep; finger; mount; fsck; more; yes; umount; sleep

    Odpovědi

    2.1.2011 21:34 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Jak zjistit jak je využívána cache?

    Položka swap cache z vmstat je stejný údaj jako cache z free. A podle mě obsahuje nejen zápisovou diskovou cache, ale i čtecí, a drop_caches pouze zapíše špinavé stránky, takže číslo, co ti zbylo, jsou nacachované stránky, do kterých se dosud nic nezapsalo a pokud se nebudou používat, jádro je zahodí na úkor stránek více používaných.

    Linux ale nerozlišuje mezi stránkami diskové cache a ostatními, co se týče jejich zahazování. Všechny druhy stránek mají společnou úroveň swappiness. Takže při nešťastném zatížení může disková cache vytlačovat třeba kód procesů. Pokud aplikace ví, že data přečtená/zapsaná znovu nebudou potřeba, je možné napovědět jádru pomocí DIRECT_IO na otevřeném deskriptoru.

    2.1.2011 22:48 Xerces
    Rozbalit Rozbalit vše Re: Jak zjistit jak je využívána cache?
    Nevim na co ti ten nb presne slouzi, ale nehces ten swap uplne vypnout kdyz mas 4G? Ja mam 4G a swap nepouzivam. Taky se mi nelibilo, ze s tim porad pracoval i kdyz mel pamet volnou. Jako alternativu pripadne nabizim takovou peknou feature od Googlu co pridali do jadra (presne nevim jak se to jmenuje), ale je to v podstate RAM disk s kompresi ktery se pouziva jako swap.
    Karry avatar 2.1.2011 23:11 Karry | skóre: 10
    Rozbalit Rozbalit vše Re: Jak zjistit jak je využívána cache?
    Nevim na co ti ten nb presne slouzi, ale nehces ten swap uplne vypnout kdyz mas 4G? Ja mam 4G a swap nepouzivam.
    Programuju v Javě :) Bez swapu by brzy zasáhl OOM zabiják.
    Taky se mi nelibilo, ze s tim porad pracoval i kdyz mel pamet volnou.
    Když si snížím swappines, tak se systém chová celkem rozumně. Čas od času ho ale při nedostatku paměti popadne takový "IO záchvat" že něco musím sestřelit abych mohl pokračovat v práci...

    Mě by akorát zajímalo co se v danou chvíli děje...? V iotop akorát vidím že kopa procesů čeká na io. To systém načítá soubory mapované do ram (kód aplikací), nebo se tak moc swapuje?
    Jako alternativu pripadne nabizim takovou peknou feature od Googlu co pridali do jadra (presne nevim jak se to jmenuje), ale je to v podstate RAM disk s kompresi ktery se pouziva jako swap.
    Jo, o tom jsem četl v Jaderných novinách... S touto myšlenkou (komprimovat data před vyhozením z ram) již bylo vytvořeno víc patchů... Jeden projekt je například zde: http://code.google.com/p/compcache/ Díky za nápad... Určitě vyzkouším...
    unzip; strip; touch; grep; finger; mount; fsck; more; yes; umount; sleep
    Karry avatar 3.1.2011 02:36 Karry | skóre: 10
    Rozbalit Rozbalit vše Re: Jak zjistit jak je využívána cache?
    Tak jsem compcache vyzkoušel, konrétně modul zram (komprimovaný swap v ram). jsem z něj nadšený. při mých testech dokázal odswapovat 1G paměti při reálném použití 250M... Bohužel má zatím problémy se stabilitou... Programy náhodně padaly(sigterm) na memalloc a realloc, takže při mé konfiguraci se to prakticky nedá používat...
    unzip; strip; touch; grep; finger; mount; fsck; more; yes; umount; sleep
    3.1.2011 07:52 Xerces
    Rozbalit Rozbalit vše Re: Jak zjistit jak je využívána cache?
    Jo ten compcache jsem měl přesně na mysli. Tak to je škoda, že s tím jsou problémy. Člověk by skoro čekal, že to bude mít Google vychytaný. Jinak já swap nepoužívám, protože nechci zbytečně trápit SSDčko přepisama. Při dnešních cenách paměti, bych stejně dneska šel na desktopu do RAMky a swap off.
    4.1.2011 07:21 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: Jak zjistit jak je využívána cache?
    Programuju v Javě :) Bez swapu by brzy zasáhl OOM zabiják.

    Huh, tak to je dost slabá výmluva. Netvrdím, že nelze při práci přesáhnout 4G, ale zase vím, že to je na spoustu projektů až dost.
    Když si snížím swappines, tak se systém chová celkem rozumně. Čas od času ho ale při nedostatku paměti popadne takový "IO záchvat" že něco musím sestřelit abych mohl pokračovat v práci... Mě by akorát zajímalo co se v danou chvíli děje...? V iotop akorát vidím že kopa procesů čeká na io. To systém načítá soubory mapované do ram (kód aplikací), nebo se tak moc swapuje?
    Oboje, proto je lepší se na swap vykašlat. Pokud není paměť a navíc nutíte systém něco dělat tak se to dostane do takového kolečka kde to furt přehazuje stránky mezi diskem a RAM, ať už se jedná o swap nebo o cache.

    In Ada the typical infinite loop would normally be terminated by detonation.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.