Linux - Przenieś partycję z tyłu dysku na przód w celu zwiększenia wydajności

1

Dyski twarde mają większą wydajność na początku talerza (patrz zapis bitów strefy ).

Zgodnie z odpowiedzią na pytanie „Do czego służy wiele plików wymiany?”, Należy umieścić partycję wymiany w pobliżu początku dysku.

Lubię mieć wiele partycji wymiany zajmujących początek każdego dysku (aby skorzystać z zapisu bitowego strefy).

  1. Jak przesunąłbyś swap z końca dysku na początek?
  2. W jaki sposób podczas instalacji systemu Linux określasz lokalizację wymiany na dysku? Czy kolejność partycji jest zgodna z ich fizyczną lokalizacją na dysku?

Zasoby:

Spuder
źródło
Lepiej byłoby skupić się na minimalizowaniu czasu losowego dostępu niż przenoszeniu zamiany na zewnętrzne cylindry, jeśli musisz mieć obsesję na punkcie poprawy wydajności HDD. Czas wyszukiwania zazwyczaj dominuje czas przesyłania w całkowitym czasie dostępu . I nie wierz we wszystko, co czytasz o krótkich głaskaniach . Większość artykułów, które widziałem, źle interpretuje / niewłaściwie używa specyfikacji HDD i nie „poprawnie przelicza” „przeciętnego” czasu wyszukiwania, więc wzrost wydajności jest przesadzony. Wiele informacji, które można znaleźć w Internecie na dyskach twardych, jest niepoprawnych.
trociny

Odpowiedzi:

3

Dyski twarde mają większą wydajność na początku talerza.

Nie całkiem.

Pierwszym krokiem jest ustalenie, która część napędu jest najbliżej środka. Zwykle bity o niższych indeksach będą najbliżej środka, ale nie zawsze tak jest *. W tym celu istnieje zcav (1), który jest częścią bonnie ++ .

# zcav -b 200:10  /dev/mapper/try-root > root.log
awk 'NF==3 { printf "% 6.1f % 7.1f % 4.1f\n", $1, $2, $3 } 
     NF!=3 { print }' root.log
#block offset (GiB), MiB/s, time
   0.0    50.2  4.0
   0.2   175.3  1.1
   0.4   178.1  1.1
   0.6   182.6  1.1
   0.8   174.4  1.1
   1.0    57.9  3.5
   1.2   177.3  1.1
   1.4   106.0  1.9
   1.6    78.2  2.6
   1.8   183.5  1.1
# Read 2000 megs in 18 seconds, 107 megabytes per second.

Mierzy to przepustowość. Będzie większy w kierunku szerokiej części napędu (gdzie obwód wyimaginowanego pierścienia byłby największy). Niestety, wysoka przepustowość najdłuższych (najbardziej zewnętrznych) ścieżek nie pokrywa się z niskim czasem dostępu do najbardziej wewnętrznych ścieżek. Wierzę, że to była podstawa twojego roszczenia (nie złe, ale niedokładne).

Jeśli zmierzysz zwykłe urządzenie blokowe, wartości MB / s będą rosły lub spadały wraz ze wzrostem wartości GB. Gdy szybkość przesyłania wzrasta, oznacza to, że numeracja bitów rozpoczyna się na najbardziej wewnętrznej ścieżce.

I aby odpowiedzieć na twoje pytania;

Jeden

  1. usuń bieżącą partycję wymiany.
  2. utwórz nową partycję w zakresie przesunięcia bloku logicznego, który najlepiej odpowiada Twoim potrzebom.
    Jeśli ten obszar jest zajęty, przenieś cenne dane na inne urządzenie i odzyskaj miejsce na partycję wymiany.

Dwa

  1. Tworząc partycję na określonym zakresie gigabajtów. np. 1-10 vs 990-1000.
  2. Jeśli dane są zmapowane -> wejście , wówczas GB 1-10 będzie znajdować się w najbardziej wysuniętej części dysku. I odwrotnie,
    napęd zmapowany w -> out będzie miał GB 1-10 na najbardziej wewnętrznej ścieżce.
    Jednak kilka narzędzi do partycjonowania (np. Fdisk ) pozwala użytkownikowi określić, czy nowa partycja powinna znajdować się na początku czy na końcu wolnego miejsca. Początek może być najbliżej środka lub krawędzi dysku, w zależności od tego, jak dane są odwzorowywane wewnętrznie.
  3. Nie ma nieodłącznego związku między numerem partycji a fizycznym położeniem tej partycji względem krawędzi dysku.

* Jest to sprzeczność z wikipedią. Nie widziałem jeszcze napędu, który odwzorowuje dane zaczynając od skrajnego toru. Uruchom narzędzie zcav na dysku, chyba że znajdziesz te informacje w karcie specyfikacji lub w instrukcji napędu.

Ярослав Рахматуллин
źródło
1
Dyski twarde faktycznie zaczynają się od zewnętrznych krawędzi talerza (patrz pierwsze 3 linki). Płyty CD i DVD (z wyjątkiem Xboksa) zaczynają się w środku nośnika. Chcesz ponownie rozważyć głosowanie w dół?
spuder
1
Pytanie częściowo dotyczy instrukcji tworzenia partycji podczas niezidentyfikowanego procesu instalacji. Nie podoba mi się to, ponieważ 1- instalatory są udokumentowane (jeśli nie, spróbuj dwa razy, aby zobaczyć, jakie są opcje). 2 - wszystkie są częściowo różne. Następnie dyski twarde nie mają lepszej wydajności na początku talerza, ponieważ a ) początek talerza jest niejednoznaczny, b ) „wydajność” jest niejednoznaczna (MB / s vs czas dostępu), tj. - niższy czas dostępu jest ważniejszy niż najwyższy MB / sw zamianie. Proszę nie odrzucać głosów jako osobistej zniewagi i powodzenia!
Ярослав Рахматуллин
1

W przypadku 1., możesz użyć GParted na LiveCD, to narzędzie graficzne, które może pomóc przenieść twoje partycje.

Jednak nie poleciłbym tego, szczególnie jeśli ma to zepsuć początek twoich dysków. Podczas gdy zmiana rozmiaru partycji, aby uzyskać trochę miejsca na końcu, jest dość bezpieczna, za każdym razem, gdy próbowałem przenieść początek partycji, była to awaria i straciłem partycję. Pierwsze sektory partycji to naprawdę rozsądny obszar.

Zanim to zrobisz, zastanów się, czy naprawdę tego potrzebujesz. Czy twój system używa dużo swapów, do tego stopnia, że ​​taka optymalizacja będzie miała realny wpływ?

Jeśli chodzi 2.o proces instalacji dowolnej dystrybucji, powinien istnieć krok, w którym pojawi się monit o nośnik instalacyjny. Powinna być zakładka „zaawansowana” lub coś podobnego, co pozwala określić pożądany podział na partycje i punkty montowania.

Więc jeśli twoja sytuacja jest, na przykład:

/dev/sda1 : root
/dev/sda2 : swap
/dev/sda3 : home

I że chcesz zmienić miejsce rooti swap, zaleciłbym ponowną instalację systemu i zdefiniowanie nowego partycjonowania w tym samym czasie, jeśli to możliwe (ponieważ możesz zachować homenietknięty podczas procesu). Jest to o wiele mniej niebezpieczne niż poruszanie się po rootpartycji.

Levans
źródło
1

GParted jest twoim przyjacielem, tak jak inni wspominali już w innych odpowiedziach na to pytanie.
Nie zapomnij najpierw wykonać kopii zapasowej systemu. Jeden drobny błąd i twój system będzie martwy.

Upewnij się, że pozostawiłeś bardzo mały (minimum 4 MB) pusty na początku dysku. GParted prawdopodobnie zaokrągli rozmiar do najbliższej granicy obsługiwanej przez dysk. Tego należy się spodziewać.
Zapobiega to potencjalnym problemom z modułami ładującymi, które nie lubią uruchamiania partycji natychmiast po sektorze rozruchowym. (Zobacz także punkt 1 w odpowiedzi Levansa).

Nie dostaniesz z tego żadnej zauważalnej korzyści ...
Wzrost wydajności w wyniku reorganizacji przestrzeni wymiany wynosi od 10% do 15% najwyżej dla samej aktywności wymiany.
Ponieważ zamiana jest DUŻO wolniejsza niż rzeczywista pamięć RAM (często od 50 do 100), niewielka poprawa szybkości zamiany jest tylko falą ogólnego planu rzeczy.

Jedyny raz może to być nieco korzystne, jeśli masz system, który potrzebuje 10x (lub więcej) pamięci RAM niż jest zainstalowany w systemie. Więc ciągle się zmienia jak szalony.
Jeśli masz taki system, robisz to źle ... Żadne dostrajanie wydajności nie zrekompensuje braku prawdziwej pamięci RAM. Wszelkie korzyści będą w najlepszym wypadku marginalne.

W takim przypadku instalacja większej ilości pamięci RAM jest znacznie bardziej wydajna i mniej kłopotliwa.

Tonny
źródło
0

Czy próbowałeś GParted na Live CD. Zrobiłbym kopię zapasową twojego systemu, zanim zadziałam na partycje. Ale GParted powinien działać dla twoich potrzeb.

http://gparted.sourceforge.net/livecd.php

Lub po prostu użyj Live CD Ubuntu i zainstaluj z sudo apt-get install gparted

Ben P. Dorsi-Todaro
źródło
0

gpartedjest zdecydowanie twoim przyjacielem. Polecam używać SystemRescueCD do rozruchu. Ponowna instalacja nie jest konieczna (ale tworzenie kopii zapasowej jest!).

Aby przenieść partycję wymiany, musisz uruchomić komputer z dysku CD (lub pamięci USB), załadować gpartedi wykonać następujące czynności:

  1. Usuń partycję wymiany
  2. Przenieś pozostałe partycje na koniec dysku, pozostawiając miejsce na początku
  3. Utwórz nową partycję wymiany

Następnie zamontuj partycję root, edytuj /etc/fstabi komentuj partycję wymiany. Teraz można bezpiecznie zrestartować komputer z nowo przeniesionej partycji.

Po ponownym uruchomieniu wykonaj mkswap -f /dev/sda1(lub dowolną nazwę urządzenia wymiany, sprawdź dokładnie ). Następnie możesz edytować /etc/fstabi poprawić wpis wymiany. Jeszcze jeden restart powinien sprawić, że będziesz gotowy do pracy.

Nigdy wcześniej nie słyszałem o nagrywaniu bitów strefowych, ale instynktownie wątpię, czy uzyskasz wymierne korzyści z tego.

Flup
źródło