Zamień rozmiar partycji na 4 GB pamięci RAM


27

Planuję zainstalować wersję Ubuntu 9.04. Ile miejsca powinienem przeznaczyć na partycję wymiany. Pamiętam, jak ustawiłem, aby podwoić rozmiar pamięci RAM, gdy instalowałem długo z powrotem. W tym czasie moja pamięć RAM wynosiła 256 MB. Więc ustawiłem partycję wymiany na 512 MB.

Odpowiedzi:


15

Powiedziałbym, że dobra zasada jest rzeczywiście taka, jak wspomniano powyżej. 2 razy więcej pamięci fizycznej. Coś do rozważenia tutaj, chociaż można użyć mniejszej partycji wymiany, a w większości normalnych przypadków wystarczy, jeśli chcesz, aby ten system był stabilny jak skała, naprawdę postąpiłbym zgodnie z zaleceniem 8 GB. W rzeczywistości zalecam 2 * RAM + 1 MB, aby absolutnie było miejsce na zamianę 2 całych kopii pamięci. Pozwala to uniknąć scenariusza „gry z powłoką”, który może mieć negatywny wpływ na wydajność. To, co to dla ciebie zrobi, zagwarantuje ci poziom odporności, jeśli napotkasz niezwykłe wydarzenie w twoim systemie.

Widziałem scenariusze, w których aplikacje źle zachowują się w nienadzorowanym środowisku i zanim się zorientujesz, twój system zaczyna zwalniać do przeszukiwania.

W zależności od tego, co robisz, możesz nawet całkowicie zrezygnować z pliku wymiany. Dodatkowa przestrzeń dla systemu operacyjnego jest przydatna podczas uruchamiania wielu aplikacji jednocześnie. Jeśli jednak zamierzasz uruchomić tylko kilka procesów, nie planuj interakcji z GUI, wyłączenie pliku wymiany może być odpowiednie.

Ale jeśli chcesz mieć plik wymiany, zawsze używam poniższej formuły zmiany rozmiaru.

[(2 x  RAM) + 1 MB] = Swap File Size

Polecam także umieszczanie pliku wymiany na oddzielnym dysku, gdy tylko jest to możliwe, ponieważ zwiększy to wydajność, ponieważ system operacyjny może wymieniać i wymieniać w tym samym czasie, co odczyt / zapis z dysku danych.

Mam nadzieję, że to jest pomocne.


1
Ciągle mówisz: plik wymiany: jest to bardzo rzadkie w Linuksie, zwykle wymiana jest oddzielną partycją dysku, a nie plikiem w innej partycji.
Justin Smith

14

Linux może działać całkiem szczęśliwie bez wymiany, jeśli masz wystarczającą ilość pamięci RAM na wszystko, o co go poprosisz, choć nadal dobrym pomysłem jest zamiana, ponieważ czasami może ona uzyskać lepszą wydajność, gdy jest blisko zapełniania pamięci, przesuwając część nie ostatnio - wykorzystał rzeczy na dysku zwalniając pamięć RAM do użycia jako pamięć podręczna / bufor dla aktualnie aktywnych operacji IO.

Ponadto, posiadanie wymiany, bez względu na to, ile masz pamięci RAM, pozwala na trochę dodatkowej siatki bezpieczeństwa, jeśli aplikacja źle się zachowa i potrzebuje więcej pamięci RAM niż zwykle, lub zdecydujesz się zrobić coś niezwykłego, co wymaga dużo pamięci.

Ogólnie nie zgadzam się z 2xRAM na nowoczesnych maszynach. Jeśli masz wystarczająco dużo, aby skończyć ze stronami o wartości 8 Gb, które można zamienić na dysk, Twój system i tak prawdopodobnie osiągnie całkowicie nieużywaną prędkość. Nawet 1xRAM może w wielu przypadkach być przesadzony IMO. Pamiętaj, że możesz w dowolnym momencie dodać przestrzeń wymiany w postaci pliku, dzięki czemu możesz dodać więcej wymiany w razie potrzeby. na przykład, aby dodać dodatkową GB wymiany:

dd if=/dev/zero of=/path/to/newfile bs=1024 count=1048576
mkswap /path/to/newfile
swapon /path/to/newfile

i aby go usunąć (raz już nie potrzebne):

swapoff /path/to/newfile
rm /path/to/newfile

(pamiętaj jednak, że zamiana plików jest nieco wolniejsza niż bezpośrednie przejście do partycji lub woluminu logicznego, ponieważ masz nadmiar systemu plików i większy potencjał fragmentacji do rozważenia)

Hibernacja, tj. Na laptopach / netbookach, może trochę skomplikować, ponieważ IIRC Linux przechowuje stan pamięci w przestrzeni wymiany, więc zdecydowanie potrzebujesz więcej niż rozmiar pamięci RAM jako zamiana, jeśli planujesz użyć hibernacji (i nie wiem, czy to wymaga wymiany partycji / woluminu lub jeśli można użyć pliku - z pewnością będzie trzeba wspomnieć o czymś, fstabco można zobaczyć na bardzo wczesnym etapie procesu rozruchu, gdy używany jest początkowy dysk RAM, a prawdziwy root nie jest jeszcze zamontowany ).

Te wszystkie punkty mogą być jednak dyskusyjne. Jeśli masz terabajty miejsca na dysku, przydzielenie 8 Gb do wymiany prawdopodobnie będzie bardzo trudne!


9

Według Ubuntu SwapFAQ tutaj obliczenia wynoszą 2 * MB pamięci RAM. Więc w tym przypadku 8 GB. Realistycznie jednak nie powinieneś potrzebować więcej niż 2 GB.


Tak! 8 GB jest znaczne!
darthvader

5
Podwójny rozmiar pamięci RAM wydaje się nadmierny, szczególnie przy większej ilości pamięci RAM - mam 8 GB i widzę, że lepiej działa z wymianą 1 GB zamiast wymiany 16 GB, ponieważ w pamięci głównej jest już tak dużo miejsca.
Andrew Scagnelli,

@A Prawidłowo - powód, dla którego wspomniałem, że realistyczne nie potrzebujesz więcej niż 2 GB. Obliczenia tego są stare. Jednak większość artykułów online jest starsza niż 2 lata.
BinaryMisfit,

Mówiono, że nigdy nie potrzebujesz większej wymiany niż 300 MB. Teraz, z 4 GB pamięci RAM, mam dwie partycje wymiany 1 GB na dwóch różnych dyskach, których nigdy nie używam (ustawiłem swapiness na 10).
voyager

Zauważyłem, że nie używam hibernacji / zawieszenia na pulpicie. (Nawet wtedy możesz utworzyć skrypt, aby utworzyć plik wymiany przed hibernacją, a następnie usunąć go po przebudzeniu).
voyager

3

Czy nadal konieczne jest zarezerwowanie partycji do zamiany? Myślałem, że obecnie działa to również na plik na partycji systemowej. A potem przypuszczam, że możesz łatwo zmienić rozmiar, jeśli wstawisz więcej pamięci lub jeśli uważasz, że nie potrzebujesz tak dużej przestrzeni wymiany.

Edycja : Oto jak to zrobić (od jądra Linux 2.6).


W dzisiejszych czasach działa jak Windows? Nie wiedziałem; od dawna nie ma Linuksa.
darthvader

Możesz także skorzystać z tuxonice.net
podróżnik

Pliki wymiany są możliwe od dłuższego czasu. Partycje wymiany działają znacznie lepiej.
Justin Smith

3

po pierwsze, jeśli chcesz korzystać ze hibernacji itp., potrzebujesz partycji wymiany co najmniej wielkości pamięci RAM.

po drugie, pamiętaj, że pamięć RAM ma wielkość wielokrotności 2, a nie wielokrotności 10, więc zadeklarowanie 1 GB miejsca na 2 drążki 512 MB pamięci RAM (każda 536870912 bytes) nie wystarczy, ponieważ jest to tylko 1000 MB (1000000000 bajtów), a nie 1024 MB 1073741824 bytesjako) wymagane ... zamiast tego musisz wziąć kalkulator i zrobić1024 * 1024 * 1024 * # of GiB

czytaj także: http://en.wikipedia.org/wiki/Binary_prefix i man 8 unitsna twoim Linux-ie

więc w przypadku czterech GB pamięci RAM swap musi wynosić co najmniej 4294967296 byteslub 4295 MBkorzystać ze wszystkich funkcji.

ponieważ jest to dość duże, prawdopodobnie powinno wystarczyć na wszystkie Twoje potrzeby


1
Do zawieszenia nie potrzebujesz partycji wymiany. Możesz po prostu użyć pliku wymiany (który nie musi istnieć do momentu zawieszenia). superuser.com/questions/21020/…
voyager

1

Z mojego osobistego doświadczenia z Linuksem dowiedziałem się, że konwencjonalna formuła 2X wielkości RAM pasuje tylko do starszych systemów z 1 GB - 2 GB RAM.

Jednak w przypadku nowszych systemów, posiadających więcej GIG pamięci RAM, sugeruję następujące

Jeśli RAM <2 GB, to Zamień miejsce = 2 x RAM

Jeśli RAM = 2 GB - 8 GB, to Zamień miejsce = RAM

Nie będzie to miało żadnego wpływu na wydajność systemu, nawet podczas wykonywania obliczeń i aplikacji o wysokiej wydajności.

Chociaż zalecam użycie oryginalnej ilości pamięci RAM, jeśli pamięć ma co najmniej 4 GB. To powinno zapewnić stabilność i wydajność systemu.

Jeśli RAM = 8 GB - 64 GB, to Zamień miejsce = 0,5 x RAM

W takim przypadku zalecam użycie maksymalnie 4 GB pamięci RAM, ponieważ jest to więcej niż wystarczające, z wyjątkiem aplikacji multimedialnych.


Twoja funkcja rozmiaru pamięci do zamiany jest nieciągła przy 2 GB i ponownie przy 8 GB. Co oznacza, że ​​jest „źle” przynajmniej w jednym rozmiarze nieciągłości ...
einpoklum - przywróć Monikę

0

Ubuntu SwapFaq prawdopodobnie odpowiedzieć na wiele pytań. Przy większej ilości pamięci RAM możesz skorzystać ze zmiany domyślnej „swapiness” zgodnie z opisem w tym artykule.


niejasne i nie pomocne. przestarzały przewodnik.
ahnbizcad
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.