zraci virtualnej pamete

Sekcia: Ostatné 18.05 | 02:04
Avatar VIT   Návštevník

Tak vela obsadenej virtualnej pamete ma prekvapilo. https://ibb.co/jVAdAd

    • RE: zraci virtualnej pamete 18.05 | 02:14
      Avatar VIR   Návštevník

      Velkost virtualnej pamete procesov:

      s@c:~$ a=0;for v in `ps -eo vsz`; do let a+=$v; done; echo $a
      668472844

    • RE: zraci virtualnej pamete 18.05 | 08:25
      Avatar WlaSaTy   Návštevník

      Možno to bude znieť divne, ale v htop si môžeš kliknúť na %MEM aby sa ti zotriedili procesy (a v tvojom prípade aj vlákna užívateľských procesov) podľa nenažranosti RAM. Odhadom to bude klasický firefox s veľa otváranými stránkami v ktorých máš pootvárané moderné stránky s responzívnym webom bez optimalizácie.

      Na toto môže trochu pomôcť zram, ale skôr by som odporučil napchať viac RAM. Čo je to za historický exponát že to má len smutný 1G RAM?

      • RE: zraci virtualnej pamete 18.05 | 11:19
        Avatar zrac   Návštevník

        VPS a staci.

        Bol to epiphany. A stranka bola ziadna. Len som dal stahovat subor.

        • RE: zraci virtualnej pamete 18.05 | 12:00
          Avatar WlaSaTy   Návštevník

          Podľa toho obrázku to ale sedí na firefox ktorý zaberá 20% pre browser + 11.4% pre kontajner zásuvných modulov. Samotný epiphany ti zaberal len 1%, k nemu pridružený webkit 0.5% + 0.8%. K tomu si tam mal naštartovaný ešte midori zaberajúci 10% z RAM a zdieľajúci webkit s epiphany.

          Ten obrázok je síce zo skušania prehliadačov, ale z iného okamihu ako hovoríš. TakŽe naozaj FF.

          PS: Súbory sa dajú sťahovať aj cez wget, ten zhltne z RAM jedno celé nič. A ani nepotrebuje grafiku ktorá zhltne odhadom nejakých 100M čo je cca 10% z dokopy takmer 3G NMM (1GRAM + 1.8G SWAP).

          • RE: zraci virtualnej pamete 18.05 | 13:20
            Avatar VIR   Návštevník

            Ulozil som si vtedy ps aux

            s         6758  0.7  0.8 102930420 8300 ?      Ssl  01:41   0:10 epiphany
            s         6899  0.6  2.1 102899480 21636 ?     Sl   01:42   0:09 epiphany --incognito-mode --profile /home/s/.config/epiphany
            

            • RE: zraci virtualnej pamete 18.05 | 13:30
              Avatar WlaSaTy   Návštevník

              To je podľa výpisu až 0.8% + 2.1% MEM. Ak je to podľa teba viac ako pri FF, tak si to zrátaj na prstoch. Máš ich predsa 21.

              • RE: zraci virtualnej pamete 18.05 | 16:34
                Avatar VIR   Návštevník

                0.8% su z fyzickej pamete (vid. man ps). Epiphany zabera 102930420 kB virtualnej pamete. Firefox iba 2332220kB.

                Epiphany: 102 930 420
                 Firefox:   2 332 220

                s@:~$ cat psaux|grep epiphany
                s         6758  0.7  0.8 102930420 8300 ?      Ssl  01:41   0:10 epiphany
                s         6899  0.6  2.1 102899480 21636 ?     Sl   01:42   0:09 epiphany --incognito-mode --profile /home/s/.config/epiphany
                s@:~$ cat psaux|grep firefox
                s         5381 13.4 24.5 2332220 246828 ?      Ssl  01:32   4:25 firefox-esr
                s         5509 10.3 16.3 2007156 164504 ?      Sl   01:33   3:13 /usr/lib/firefox-esr/plugin-container -greomni /usr/lib/firefox-esr/omni.ja -appomni /usr/lib/firefox-esr/browser/omni.ja -appdir /usr/lib/firefox-esr/browser 5381 true tab
                
                • RE: zraci virtualnej pamete 18.05 | 18:57
                  Avatar WlaSaTy   Návštevník

                  Ehm, tých tvojich 102930420 kiB je 98GiB. To nasliníme, to sa tam zmestí.

    • RE: zraci virtualnej pamete 18.05 | 13:00
      Avatar Miroslav Bendík Gentoo  Administrátor

      Stĺpec VIRT hovorí o množstve namapovanej pamäte vo virtuálnom adresnom priestore procesu. Namapovaná pamäť nie sú len dáta procesu, ale aj samotná binárka vrátane všetkých knižníc (aj keď sú na disku a v skutočnosti nemusia obsadiť žiaden priestor v RAM), namapované súbory, zariadenia ... Keď na disku vytvorím povedzme 100GB súbor a namapujem ho do svojho procesu tak VIRT pokojne vyskočí na 100GB, ale RAM vôbec neobsadí.

      • RE: zraci virtualnej pamete 18.05 | 13:27
        Avatar Livan Arch LXQT, Manjaro XFCE, Linux Mint  Používateľ

        Prepáč ale toto nemá logiku. Ak mám program, tak ten bez načítania do RAM nemôže fungovať. Dátové súbory sa môžu načítať iba čiastočne ale programy musia načítať alespoň jeden základný súbor celý plus zarezervovať minimálnu RAM pre narábanie s dátami (vytvárajú nejaké premenné).

        • RE: zraci virtualnej pamete 18.05 | 13:34
          Avatar WlaSaTy   Návštevník

          To dáva logiku.

          Program si vypýta na dáta 1G RAM, a dostane ju. Z toho použije len 10M, a využitého v žiadnom prípade nemá 1G ale len okolo 10M.

          Podobne je to keď si program natiahne zdieľané knižnice ktoré sú už natiahnuté v RAM. Tie knižnice nebudú natiahnuté pre každý program zvlášť.

          • RE: zraci virtualnej pamete 18.05 | 13:37
            Avatar Livan Arch LXQT, Manjaro XFCE, Linux Mint  Používateľ

            Nečítal si pozorne WlaSaTy, písal som, že dátové súbory môžu byť načítavané postupne, nie však základný program. Ten sa musí načítať celý, nemusí načítať dynamické knižnice, tie si môže načítavať na požiadanie podľa potreby.

            • RE: zraci virtualnej pamete 18.05 | 14:02
              Avatar WlaSaTy   Návštevník

              Čítal, dva krát. A nedávalo to zmysel, tak som ťa opravil.

              Program, aj napriek tvojmu tvrdeniu nebude duplicítne zaberať pamäť dynamickými knižnicami ktoré sú už natiahnuté v pamäti.

              Asi si si nevšimol že som písal o dynamických knižniciach a nie o základnom programe. Ak by bol základný program staticky linkovaný, tak by si mal pravdu. Ale to sa v tomto tisícročí používa v menej ako zlomku promile prípadov.

              • RE: zraci virtualnej pamete 20.05 | 10:50
                Avatar Livan Arch LXQT, Manjaro XFCE, Linux Mint  Používateľ

                Ja som predsa o duplicitne zaberanej pamäti nič nepísal. Iba o tom, že základný súbor programu sa načíta celý a dáta, prípadne dynamicky linkované knižnice sa načítajú podľa potreby, keď si to vyžiada program.

                • RE: zraci virtualnej pamete 20.05 | 14:22
                  Avatar WlaSaTy   Návštevník

                  A tie súbory ktoré sa schovali do /lib si akože podľa teba musí načítať program sám. To znie logicky. Keď si si teda zmazal dynamický linker, povedz ako sa ti pracuje s počítačom.

                  • RE: zraci virtualnej pamete 20.05 | 15:17
                    Avatar Livan Arch LXQT, Manjaro XFCE, Linux Mint  Používateľ

                    Čo to furt melieš? Linker je pokiaľ sa nemýlim iba jeden (v zmysle, že nieje osobitne statický linker a dynamický linker) a viaže knižnice buď staticky alebo dynamicky, podľa toho, ako to určí programátor. A súbory v /lib sú dynamicky viazané knižnice, takže sú načítavané podľa potreby. Takže s počítačom sa mi pracuje dobre.

                    • RE: zraci virtualnej pamete 20.05 | 15:50
                      Avatar WlaSaTy   Návštevník

                      To znie na prvý pohľad logicky, ale nie je to tak. Skús si vytvoriť hello world v ktorom budeš podľa tvojich slov ručne načítavať printf z glibc, ďalší program v ktorom necháš aby ti to obstaral dynamický linker, a na koniec program v ktorom budeš mať staticky prilinkovanú danú funkciu printf. Možno potom pochopíš že tvoje teoretické úvahy majú od praxe ďaleko.

                      • RE: zraci virtualnej pamete 20.05 | 17:25
                        Avatar Livan Arch LXQT, Manjaro XFCE, Linux Mint  Používateľ

                        Dynamický linker, o ktorom tu básniš, je súčasťou OS a používa sa práve na zavedenie dynamicky linkovaných knižníc. Takže stále platí to, čo som tvrdil od samého začiatku o obsadení RAM, moje tvrdenia týmto nestrácajú na platnosti, či už sa na zavedenie dynamicky linkovaných knižníc používa dynamický linker alebo iný mechanizmus.

                        • RE: zraci virtualnej pamete 20.05 | 17:39
                          Avatar WlaSaTy   Návštevník

                          Takže zrazu tie knižnice nenačítava program sám. Som rád že postupne meníš názor k lepšiemu. Skús ešte trošku pridať.

                          • RE: zraci virtualnej pamete 20.05 | 17:55
                            Avatar Livan Arch LXQT, Manjaro XFCE, Linux Mint  Používateľ

                            Ak ti išlo o tento kus textu

                            nemusí načítať dynamické knižnice, tie si môže načítavať na požiadanie podľa potreby.
                            tak tam som nešpecifikoval mechanizmus, akým to urobí, pretože to nebolo vzhľadom na kontext dôležité. Čo som tam mal napísať, že tam linker vloží kus kódu, ktorý zavolá dynamický linker OS, aby načítal danú knižnicu?

                            • RE: zraci virtualnej pamete 20.05 | 20:00
                              Avatar WlaSaTy   Návštevník

                              Písal si že program sám si načítava knižnice. A keďže programy si kvôli bezpečnosti nevidia navzájom do adresného priestoru, tak by podľa tvojich slov mal každý jeden program načítané dynamické knižnice len pre seba. A keby chcel nejaký iný program použiť tie isté knižnice, tak by ich podľa tvojej logiky načítal duplikátne.

                              Písať si tam nemusel nič, bolo by to prehľadnejšie.

          • RE: zraci virtualnej pamete 18.05 | 14:39
            Avatar s@morast   Návštevník

            vypýta

        • RE: zraci virtualnej pamete 18.05 | 15:03
          Avatar Miroslav Bendík Gentoo  Administrátor

          Nie je to celkom pravda. V prvom rade sú tu architektúry, ktoré podporujú spustenie priamo z NOR pamäte (rôzne embedded zariadenia). Volá sa to XIP.

          Čo sa týka menej exotického hardvéru tak väčšina používateľov tu bude používať asi x86(_64), alebo ARM(64). Obe architektúry majú podporu pre vituálnu pamäť a môžu nepoužívané stránky s programom zahodiť. Môže tak urobiť napríklad v dôsledku nedostatku pamäte a tak v RAM zostanú len dáta a používané stránky z binárky. Až program bude chcieť pristupovať k zahodenej stránke dôjde k page fault výnimke a OS sa pokúsi chýbajúcú stránku načítať opäť do pamäte.

    • RE: zraci virtualnej pamete 20.05 | 10:21
      Avatar redhawk75 arch, debian, mx17  Používateľ

      1GB ram a predpokladam ze swappines je na 60

      v terminali: 

      cat /proc/sys/vm/swappiness

      mam na atome 1GB ram swap na 10% podla screenu je tam cca 1/3 ram volna

      • RE: zraci virtualnej pamete 21.05 | 00:36
        Avatar VIR   Návštevník
        s@c:~$ cat /proc/sys/vm/swappiness
        60
        • RE: zraci virtualnej pamete 21.05 | 07:20
          Avatar redhawk75 arch, debian, mx17  Používateľ

          presne ko som pisal. pri 1GB je to luxus. 

          Príkaz v termináli:</strong>

          gksudo gedit /etc/sysctl.conf

          nasledne na koniec suboru doplnit :

          # Zníženie použitia swap na použiteľnú úroveň
          vm.swappiness=10

          a restart pc 

    • RE: zraci virtualnej pamete 21.05 | 12:08
      Avatar VIR   Návštevník

      Ok, dal som ako root:

      echo vm.swappiness=10 >> /etc/sysctl.conf

      Ale pamet som nejako neriesil, lebo malo je vyuzivana. Len vtedy som mal niekolko prehladavacov spustenych.