swap - na prawdę potrzebny?

0

Ostatnio wyszedł nowy OpenSuSE, poza tym od pół roku noszę się z zamiarem przeniesienia linuxa na nowszy HDD i tak się zastanawiam, czy koniecznie wydzielać mu partycję na swapa...

Od kilku (nastu?) lat panuje przekonanie, że swapa powinno być 3/2 tego, ile się ma fizycznej pamięci. OK - pogłoski ludowe pogłoskami, ale jak jest w rzeczywistości? Jeżeli mam w PC 2GB ram, w dodatku linux mi ich nigdy do końca nie wykorzystuje - zawsze mam ~90% zajęte, w tym pamięć programów to 10-30%, raz miałem 50% (jak jednocześnie odpaliłem dwa xpeki, trzy firefoxy, dwa IE, dwie opery, gimpa, zend studio, parę klientów różnych rzeczy, konquerora i jeszcze trochę drobnicy w tle).

Z praktycznego punktu widzenia - po co więcej swapu, jak się ma dużo ramu? Nie powinno być raczej na odwrót? Czy dobrym pomysłem jest całkowita rezygnacja ze swapu (skoro nigdy z niego do tej pory nie skorzystałem)?

0

Moim zdaniem jezeli jest 2 GB RAM to raczej swap jest niepotrzebny. Oczywiscie jest jeszcze kwestia tego, ile i jakie uslugi bedziesz miec uruchomione, ale normalnie raczej nie przekroczysz 2 GB.

Tylko nie wiem czy instalator pozwoli ci na nie tworzenie partycji swap. ale zawsze mozesz potem swapa wylaczyc przez swapoff

0

To tak ze swap. Jak nie dasz swap 2048 mb to nie będziesz miał możliwość usypiania komputera. A co do tego 3/2 to błędnie myślisz. Jak ktoś ma 512 mb ram to rzeczywiście 3/2 a nawet 2 razy tyle,ale tak już jest 1 gb to góra połowa. A przy dwóch nie potrzebny ,ale to zależy do czego używasz komputera, nawet taki gimp przy bardziej skomplikowanych pracach zajmie sporo. A i jeszcze jedno za duży swap jest zły. Bo jeśli będzie zbyt duży(czytałem o tym ,a nawet spotkałem się z takim przypadkiem gość miał swap 1,9 gb a ramu 512 i był problem) to do swap nagle mogą zostać wyrzucone jakieś dane(zazwyczaj coś z cachowanej pamięci bądź buforów) albo będzie rzadko(o ile w ogóle )czyszczony. Musisz sam określić czy ci potrzebny czy nie

0

Swap jest potrzebny ponieważ wiele aplikacji nawet mając dostępny ram i tak używa swapa. Co do rozmiaru. Dla 2 GB RAM to 1GB to absolutny max. Potem może zacząć zwalniać pracę.

0

Ja nie uzywam swapa juz od kilku miechow i jeszcze nie mialem przypadku zeby z czyms byl problem.
Co prawda mam 4G ramu ale zadko kiedy zdarzalo mi sie przekraczac 2 - musialem miec otwarta tone programow + jakas ciezsza gre na full detalach.
Sadze ze spokojnie przy 2G wzwyz (zwlaszcza na *nixach) nie potrzaba swapa.
Jedynym wyjatkiem jest stawianie serwera proxy ;-P

Dopisane:
Zeby nie byc goloslownym dodaje zrzut z tym co sie dzieje w ramie - http://img382.imageshack.us/img382/2883/ramkc1.png

0

@up : Ale my tu mówimy o pingwinach...

//@flabra : gdzie tam był ort?

0
Oleksy_Adam napisał(a)

Swap jest potrzebny ponieważ wiele aplikacji nawet mając dostępny ram i tak używa swapa. Co do rozmiaru. Dla 2 GB RAM to 1GB to absolutny max. Potem może zacząć zwalniać pracę.

hmmm ja mam 512M ramu i nie uzywajac swapa jakos radze sobie któryś już rok , nie jestem pewien czy przez pewien czas nie bylo tak ze przy 256M nie mialem swapa (ale reki sobie nie dam za to uciac..) i tez wszystko bylo ok

0
manfredek napisał(a)

@up : Ale my tu mówimy o ort!...

Linux ma znacznie mniejsze wymagania pamieciowe o czym wspomnialem odnosnie systemow *nixowych.
Na linuksie nie uruchamia sie rowniez tak wymagajacych gier.

0

Oto zrzut z linuksa (Debian Sid, Gnome 2.22.3):

http://img356.imageshack.us/img356/373/zrzutekranuxw6.png

Jak widac, mam 1 GB RAM a wykorzystano ledwie połowę... na dobra sprawe tez moge nie miec swapa

Oleksy_Adam napisał(a)

Swap jest potrzebny ponieważ wiele aplikacji nawet mając dostępny ram i tak używa swapa.

No ja sie jeszcze z tym nie spotkalem

0

Jak widac, mam 1 GB RAM a wykorzystano ledwie połowę

A chcesz się założyć? :) free -m Praktycznie całą fizyczna pamięć masz zajętą przez dane aplikacji,buffory i cache

0
Oleksy_Adam napisał(a)

Swap jest potrzebny ponieważ wiele aplikacji nawet mając dostępny ram i tak używa swapa

jakie na przykład? mówię oczywiście o ort!, bo windowsa używam tylko do grania

zastanawiam się, czy usunięcie swapa nie podniesie mi wydajności - jezeli swapa nie będzie, to żadnej aplikacji nie przyjdzie na "myśl" zrzucać coś na hdd.

@up: dokładnie, przykładowo mój wynik:

tomkiewicz@Tomkiewicz:~> free -m
total used free shared buffers cached
Mem: 2027 1963 64 0 302 1397
-/+ buffers/cache: 263 1763
Swap: 3074 0 3074

//wiem, że swapa dużo za dużo, ale to było bardziej w celu odseparowania zabadsektorowanej części dysku

revcorey napisał(a)

A co do tego 3/2 to błędnie myślisz

gdzie błędnie myślę? przecież napisałem, że to przekonanie ludowe, a nie moja opinia :D

0

U mnie sprawa się miewa nastepują(at work):

{'SwapTotal': 2031608, 'SwapFree': 2031432, 'MemFree': 25312, 'HighTotal': 122816, 'Committed_AS': 1196784, 'SUnreclaim': 17788, 'NFS_Unstable': 0, 'VmallocChunk': 103996, 'Writeback': 0, 'MemTotal': 1026672, 'VmallocUsed': 6424, 'AnonPages': 482452, 'Active': 642224, 'CommitLimit': 2544944, 'Hugepagesize': 4096, 'Cached': 332260, 'SwapCached': 88, 'LowTotal': 903856, 'Dirty': 20, 'Mapped': 114644, 'HighFree': 252, 'SReclaimable': 10916, 'VmallocTotal': 110584, 'Bounce': 0, 'Inactive': 193020, 'PageTables': 6036, 'Slab': 28704, 'Buffers': 20348, 'LowFree': 25060}

W obecnej konfiguracji jest to Feodra 9 z łatkami i uruchomione mam:
Gl Desktop - Compiz Fusion z wiekszością efektów, jakies przezroczystości i inne pierdoły, okna pogrupowane oraz w tabach, dla ciekawskich to mam prawie identyko jak http://pl.youtube.com/watch?v=_ImW0-MgR8I
Pidgin z wtyczka gg i tlen
Rhytmbox
2x Opera, jedna podklejona pod eclipsa, kilka stron otwartych
Eclipse z Remote Systems
2 x otwarte ssh
w tle chodzi jeszcze trochę usług
Swap'a trzymam bo nie wiadomo kiedy może zabraknąć pamięci, moim zdaniem trzeba trochę go zostawić nic to nie zaszkodzi a a nuż. Przy dzisiejszych dyskach twardych to ten giga czy dwa to niewielka strata, nie są to czasy kiedy na 8gb dysku człowiek gryzł się jak zmieścić linuxa z windą i jeszcze trochę danych.
A tak to wygląda z free -m:

[mephir@localhost ~]$ free -m
total used free shared buffers cached
Mem: 1002 984 18 0 13 320
-/+ buffers/cache: 649 352
Swap: 1983 0 1983

//edited:
Kilka screenów:
user imageuser imageuser imageuser image

0

No właśnie. Tu głównie chodzi o zabezpieczenie się przed brakiem pamięci czy to ze strony wadliwie działajacej aplikacji czy zwykłego zaśmiecenia ramu. Pamietaj, że moze być sytuacja gdzie 90% ram jest zajęte i nagle odpalasz wymagajacą aplikację.

0
Oleksy_Adam napisał(a)

No właśnie. Tu głównie chodzi o zabezpieczenie się przed brakiem pamięci czy to ze strony wadliwie działajacej aplikacji czy zwykłego zaśmiecenia ramu. Pamietaj, że moze być sytuacja gdzie 90% ram jest zajęte i nagle odpalasz wymagajacą aplikację.

A szczególnie jak sam programujesz ,odpalasz program a tu bach ogromny wyciek pamięci :/ a pamięć fizyczna prawie cała zajęta. Zresztą jak już pisałem swap jest potrzebny choćby do hibernacji

0

jak wyzej, dalej jesli zabraknie pamieci rowniez swapa init po prostu ubija losowe procesy.

wracajac do zasmiecania zbyt duzego swapa i niepotrzebnego zrzucania danych na dysk dla jadra z serii 2.6: /proc/sys/vm/swappiness (lub przez sysctl-a: vm.swappiness ) - http://unixfoo.blogspot.com/2007/11/linux-performance-tuning.html

tak wiec nie jest to jakikolwiek problem :) dodatkowo zawsze przed wykonaniem przez skrypty startowe 'swapon -a' mozna wykonac: awk -- '/swap/ && ($1 !~ /#/) { system("mkswap "$1"") }' /etc/fstab

0
revcorey napisał(a)

[...] Zresztą jak już pisałem swap jest potrzebny choćby do hibernacji

A tego nie wiedziałem, a dosyć często hibernuje system :d

0
mephir napisał(a)
revcorey napisał(a)

[...] Zresztą jak już pisałem swap jest potrzebny choćby do hibernacji

A tego nie wiedziałem, a dosyć często hibernuje system :d

z tego co czytałem że podczas wchodzenia w hibernację jak zbraknie miejsca w swap to gdzieś na / jest robione dodatkowe miejsce dla hibernacji

1 użytkowników online, w tym zalogowanych: 0, gości: 1