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í
×
    včera 23:55 | Komunita

    Ubuntu 26.04 LTS bude (𝕏) Resolute Raccoon (rezolutní mýval).

    Ladislav Hagara | Komentářů: 0
    včera 21:00 | Nová verze

    Netwide Assembler (NASM) byl vydán v nové major verzi 3.00. Přehled novinek v poznámkách k vydání v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    včera 20:11 | Komunita

    Linuxová distribuce Frugalware (Wikipedie) ke konci roku 2025 oficiálně končí.

    Ladislav Hagara | Komentářů: 0
    včera 17:22 | Nová verze

    Byla vydána nová verze 3.0.6 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP bude brzy k dispozici také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    včera 16:11 | IT novinky

    Americký výrobce čipů AMD uzavřel s americkou společností OpenAI smlouvu na několikaleté dodávky vyspělých mikročipů pro umělou inteligenci (AI). Součástí dohody je i předkupní právo OpenAI na přibližně desetiprocentní podíl v AMD.

    Ladislav Hagara | Komentářů: 1
    včera 12:22 | Nová verze Ladislav Hagara | Komentářů: 0
    5.10. 20:00 | Komunita

    Byly zpracovány a na YouTube zveřejněny videozáznamy z konference LinuxDays 2025.

    Ladislav Hagara | Komentářů: 0
    4.10. 15:22 | IT novinky

    Na konferenci LinuxDays 2025 byl oficiálně představen nový router Turris Omnia NG.

    Ladislav Hagara | Komentářů: 34
    4.10. 05:22 | Komunita

    Přímý přenos (YouTube) z konference LinuxDays 2025, jež probíhá tento víkend v Praze v prostorách FIT ČVUT. Na programu je spousta zajímavých přednášek.

    Ladislav Hagara | Komentářů: 16
    3.10. 22:44 | IT novinky

    V únoru loňského roku Úřad pro ochranu osobních údajů pravomocně uložil společnosti Avast Software pokutu 351 mil. Kč za porušení GDPR. Městský soud v Praze tuto pokutu na úterním jednání zrušil. Potvrdil ale, že společnost Avast porušila zákon, když skrze svůj zdarma dostupný antivirový program sledovala, které weby jeho uživatelé navštěvují, a tyto informace předávala dceřiné společnosti Jumpshot. Úřad pro ochranu osobních údajů

    … více »
    Ladislav Hagara | Komentářů: 10
    Jaké řešení používáte k vývoji / práci?
     (38%)
     (45%)
     (15%)
     (17%)
     (22%)
     (15%)
     (18%)
     (16%)
     (15%)
    Celkem 181 hlasů
     Komentářů: 12, poslední 4.10. 20:35
    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: 847×
    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.