Nie jesteś zalogowany na forum.

#1 2017-08-25 17:01:41

tomek_pl
Użytkownik
Data rejestracji: 2017-07-12
Liczba postów: 18

zram czy swapfile

Witam, linuxa uzywam od okolo ~6 miesiecy i do tej pory w trakcie instalacji systemu ktory padl nie raz przez moje "nauki" nigdy nie tworzylem partycji swap prawdopodobnie przez wszystkie artykuły jakie sie naczytalem o wplywie swapa na dysk ssd lub braku potrzeby swapa jesli ma sie 4GB ramu i wiecej. wszystko dzialalo pieknie az do wczoraj....
znow chcialem sie czegos nauczyc i tak oto przy kompilacji chromium z patchem VAAPI otrzymalem po 3h kompilacji blad

virtual memory exhausted: Cannot allocate memory

szybkie zapytanie w google i okazalo sie ze jest to brak pamieci xD i mozna to naprawic wlasnie poprzez swapa ktory jest ponoc zalecany przy kompilacjach swoja droga troszke sie zdziwilem ze przegladarka jest przy kompilacji bardziej zasobozerna niz kompilacja kernela xD

blad oczywiscie naprawilem tworzac plik swap o wielkosci 4GB czyli 1:1 do wielkosci ramu jednak czytajac coraz wiecej gdy chcialem naprawic ten blad natknalem sie na ten artykuł o zram
https://404.g-net.pl/2012/05/pomnazanie-pamieci-ram/

niestety wszystkie informacje o zram sa dosc stare i ogolnie polecane gdy ktos ma 1gb lub 2gb ramu a ja mam teraz problem gdyz nie wiem co przy nowoczesniejszych sprzetach jest lepsze. moze mi ktos to jakos wytlumaczyc czy w moim przypadku gdy napotkalem sie raz na blad braku pamieci lepszy bedzie plik/partycja swap? czy moze skasowac go i sprobowac zastosowania zramu ktory z tego co wyczytalem ma pierwszenstwo przed swapem, a moze najlepiej korzystac z obu rozwiązań czyli swap i zram? najgorsze ze naczytalem sie jeszcze o zswap i zcache i juz w ogole przestalem wszystko rozumiec co jest najbardziej optymalne i dla kogo

Ostatnio edytowany przez tomek_pl (2017-08-25 17:04:49)

Offline

#2 2017-08-25 17:59:13

pavbaranov
Administrator
Lokalizacja: Kraków
Data rejestracji: 2015-08-22
Liczba postów: 2,029
WWW

Odp: zram czy swapfile

Kompiluj na zasadzie: http://linux-pavbaranov.blogspot.com/20 … t-czy.html. Wielkość RAM ma wpływ jedynie na ewentualną szybkość kompilacji. Przy okazji - tak, takie chromium, czy ff to kobyła. Kompiluje się dobrawdy długo. Podobnie jak np. LO ze źródeł, czy Caligra.

ZRAM... Ok, pomyślmy... Brakuje Ci RAM przy kompilacji i chcesz część owego RAM wykorzystać jako... swap :) Ok, może kompresowany itp. Nie wydaje mi się to jednak remedium na problemy tego typu.

IMO - systemd-swap jest optymalnym rozwiązaniem.


Hardware: AMD: A8-7410 APU with Radeon R5; Arch testing+kde-unstable, kernel linux-pb, KDE+poprawki
https://deviantart.com/pavbaranov/ https://pavbaranov.blogspot.com https://linux-pavbaranov.blogspot.com

Offline

#3 2017-08-25 19:48:38

tomek_pl
Użytkownik
Data rejestracji: 2017-07-12
Liczba postów: 18

Odp: zram czy swapfile

pavbaranov napisał/a:

ZRAM... Ok, pomyślmy... Brakuje Ci RAM przy kompilacji i chcesz część owego RAM wykorzystać jako... swap :) Ok, może kompresowany itp. Nie wydaje mi się to jednak remedium na problemy tego typu.

zrozumialem opis zram ze pakuje on dane w pamieci i np jesli cos zajmuje 100mb to po kompresji zajmowac bedzie np 60mb czyli fizycznie nie powiekszamy ilosci ramu ale dzieki kompresji zyskujemy o wiele wiecej ramu a jako ze dzieje sie to w pamieci ram i wykorzystywana jest kompresja np lz4 to dzieje sie to bardzo szybko i prawnie nie obciaza cpu

zapoznalem sie juz z systemd-swap i pisze na stronie projektu z githuba ze nalezy wybrac albo zswap albo zram. czyli obecnie moja wiedzy konczy sie na tym ze:

jesli mam plik swap/partycje swap uzywamy zswap
jesli nie mam swapa to moge uzyc zram bo nie wymaga on pliku/partycji wymiany
jesli korzystamy z jednego to nie mozemy z drugiego

czyli teraz musze wybrac albo zswap albo zram :/ ma ktos moze jakies linki ktory jest lepszy/szybszy?

Offline

#4 2017-08-25 21:18:51

pavbaranov
Administrator
Lokalizacja: Kraków
Data rejestracji: 2015-08-22
Liczba postów: 2,029
WWW

Odp: zram czy swapfile

Ok, wszystko fajnie, ale... (wszystko następne będzie: o ile rozumiem i proszę o korektę):
1. Zasadniczo problem ze zbyt małą ilością RAM u Ciebie nie występuje. Pojawił się przy kompilacji (pewnie z wykorzystaniem tmpfs) krowy jaką jest chromium. Jeśli tak, to oznacza, że swap zasadniczo nie jest Ci w ogóle potrzebny. Mógłbyś go nie mieć i komputer nie napotkałby na problem z "zapchaniem się" pamięci.
2. (I tu przede wszystkim proszę o korektę) Zarówno zram, jak i zswap w sposób trwały pomniejszają RAM rezerwując przestrzeń dla siebie. Innymi słowy zamiast 4GB RAM masz np. 3GB RAM + 1GB dla swapu w RAM. Pomijając inne, pozytywne aspekty dla SSD wynikające z użycia zram, to w ten sposób niczego nie zyskasz. Fakt, że 4GB RAM będzie zachowywać się jako 3GB + swap w 1GB RAM, który będzie lekko większy - w efekcie zamiast 4GB możesz mieć nieco więcej, ale... dla kompilacji chromium to i tak prawdopodobnie będzie zbyt mało. Zatem po co?

Jeśli chcesz jednak użyć zswap lub zram, to użyj chyba tego drugiego, ale z innych przyczyn niż te, które podałeś zakładając wątek. Otóż: "Using zram is also a good way to reduce disk read/write cycles due to swap on SSDs." (zob.: https://wiki.archlinux.org/index.php/Im … m_or_zswap)
Jeśli jednak szukasz "poszerzenia" fizycznego RAMu dla kompilowania "kobył", to przy 4GB RAM ani zswap, ani zram Ci nie pomogą. Kompilacja jak w linku w poprzednim wpisie. Przy kompilacji chromium nie tyle zabrakło Ci RAM co zabrakło miejsca w tmpfs (co też odbywa się w Archu w RAM). Jeśli niczego nie zmieniałeś, to tmpfs zajmie Ci 1/2 RAM i gdy program będzie wymagał więcej, to się po prostu fizycznie nie zmieści. Same źródła źródła chromium to ok. 0,5GB, które zostaną umieszczone w owych 2GB dostępnego tmpfs. Potem zostaną rozpakowane i dopiero wówczas nastąpi kompilacja. Nieco mało tych 2GB na całą operację i ani zswap ani zram Ci tu nic nie pomoże. Przeczytaj sobie: http://linux-pavbaranov.blogspot.com/20 … nie-z.html - mam nadzieję, że bzdur tam nie popisałem i coś Ci się rozjaśni.


Hardware: AMD: A8-7410 APU with Radeon R5; Arch testing+kde-unstable, kernel linux-pb, KDE+poprawki
https://deviantart.com/pavbaranov/ https://pavbaranov.blogspot.com https://linux-pavbaranov.blogspot.com

Offline

#5 2017-08-26 14:16:32

tomek_pl
Użytkownik
Data rejestracji: 2017-07-12
Liczba postów: 18

Odp: zram czy swapfile

i teraz jestesmy juz w domu ;) przeczytalem Twoj wpis i teraz wiem faktycznie ze przy kompilacji duzych programow faktycznie ani zram ani swap mi nie pomoga i faktycznie nic domyslnie nie zmienialem w ustawieniach wiec pewnie wszystko ląduje w tmp. teraz pytanie brzmi co zrobic by kompilacja nie wywalala sie w polowie przy tych duzych krowach ;) zrobilem male poszukiwania i mam 2x pomysly:

- tymczasowe zwiększenie folderu tmp przed kompilacja np do 8 GB
mount -o remount,size=8G,noatime /tmp
lub
- edycja /etc/makepkg.conf i ustawienie innego folderu niz tmp
BUILDDIR=/home/tomek/makepkg

dobrze kombinuje? powinno to mnie chyba uchronic przed brakiem miejsca w trakcie kompilacji gdy programy zajmuja wiecej niz moj ram

edit; chociaz 1gb pliku swap zostawie sobie i zmienie parametr vm.swappiness=1 prawdopodobnie raczej ten swap i tak nie bedzie uzywany ale naczytalem sie ze lepiej miec swapa na wszelki wypadek niz go nie miec bo pozniej moga dziac sie zle rzeczy jak np zawieszanie sie komputera gdy wykorzystanie rosnie do 100% co faktycznie kilka razy mi sie zdarzylo

Ostatnio edytowany przez tomek_pl (2017-08-26 14:42:10)

Offline

#6 2017-08-26 15:16:37

pavbaranov
Administrator
Lokalizacja: Kraków
Data rejestracji: 2015-08-22
Liczba postów: 2,029
WWW

Odp: zram czy swapfile

U mnie wygląda to tak. Małe programy w istocie kompiluję przy użyciu jakichś AURwrapperów (np. yaourt). Duże - tylko i wyłącznie w sposób opisany w wiki Archa albo tu: http://linux-pavbaranov.blogspot.com/20 … t-czy.html. Trwa dłużej, ale na pewno przestrzeni nie zabraknie, albowiem jest to przeprowadzane na HDD/SSD itp. Rozmiar ograniczony wyłącznie wielkością dostępnego miejsca na takim nośniku.


Hardware: AMD: A8-7410 APU with Radeon R5; Arch testing+kde-unstable, kernel linux-pb, KDE+poprawki
https://deviantart.com/pavbaranov/ https://pavbaranov.blogspot.com https://linux-pavbaranov.blogspot.com

Offline

Stopka

Forum oparte na FluxBB