7553


Dyski twarde - przyspieszanie pracy (część 2) 2001-01-22 (13:00)

W jednym kawałku...

Umiejscowienie pliku wymiany w odpowiednim miejscu na "twardzielu" oraz defragmentacja dysku to kolejne metody na przyspieszenie pracy dysku. Na ile skuteczne? Przekonajmy się.

Tydzień temu zajmowaliśmy się określaniem optymalnej wielkości "swap file" - tym razem przyjrzymy się nieco uważniej wpływowi jego umiejscowienia na ogólną wydajność systemu.

Wymiana na całego0x01 graphic
0x01 graphic

Rys.1 Zależność prędkości odczytu danych od położenia głowicy odczytującej.

Położenie pliku wymiany ma stosunkowo duże znaczenie dla wydajności jego pracy. Wyjaśnienie tego zjawiska jest proste - spójrzmy na rysunek 1.

Rys.2 Uporządkowany chaos - efekt pracy aplikacji Speed Disk.

Widzimy na nim rozkład prędkości odczytu informacji w zależności od położenia odczytywanych sektorów. Jak łatwo zauważyć, przesył danych z początkowych sektorów dysku jest o kilkanaście procent lepszy od transferu z obszarów umieszczonych na jego końcu. Wynika to z budowy dysku twardego - dostęp do początkowych sektorów, znajdujących się w zewnętrznej strefie talerza, na którym zapisane są informacje, jest szybszy - głowica w tym samym czasie odczytuje większą ilość informacji.

By przekonać się o słuszności tej tezy, przeprowadziliśmy testy dla dysku podzielonego na cztery partycje FAT32. Każda z nich umieszczona była w innym obszarze "twardziela". Dodatkowo przeprowadziliśmy również testy porównawcze dla partycji NTFS. Całą procedurę wykonaliśmy dwukrotnie - raz dla komputera wyposażonego w 64 oraz, powtórnie, przy dostępnych 192 MB RAM.

 

Wydajność dysku w zależności od położenia partycji (192 MB RAM)

High-End Disk WinMark 99

FAT32

NTFS

Położenie partycji

początek dysku

środek dysku

koniec dysku

początek dysku

koniec dysku

Ogólny

16200

15100

15000

14000

16400

AVS/Express 3.4

17770

16700

16300

16500

17900

FrontPage 98

85600

79000

78300

58900

82800

MicroStation SE

23900

21700

22600

19600

2350

Photoshop 4.0

7610

7200

7020

7370

7590

Premiere 4.2

13500

11700

11900

11400

14000

Sound Forge 4.0

16000

15200

15200

13900

16500

Visual C++ 5.0

18200

18500

17400

13200

19200

Obciążenie CPU (%)

18,99

16,41

17,61

18,46

17,39

 

Wydajność dysku w zależności od położenia partycji (64 MB RAM)

High-End Disk WinMark 99

FAT32

NTFS

Położenie partycji

początek dysku

środek dysku

koniec dysku

początek dysku

koniec dysku

Ogólny

15200

14500

14500

11900

12100

AVS/Express 3.4

18400

16900

18100

13900

16400

FrontPage 98

87900

89300

75900

52800

54800

MicroStation SE

24900

22300

23100

19200

18800

Photoshop 4.0

7250

7260

7010

7310

6830

Premiere 4.2

12600

12000

12400

8660

9560

Sound Forge 4.0

12400

11900

11500

10100

9930

Visual C++ 5.0

17400

16400

16300

11000

10500

Obciążenie CPU (%)

18,82

16,33

16,13

24,05

17,13

Zgodnie z oczekiwaniami, rezultat pomiarów wydajnościowych przeprowadzonych dla pierwszej partycji FAT32 jest najlepszy, kolejne wyniki są proporcjonalnie słabsze. Całkowicie odmienną sytuację możemy zaobserwować w przypadku partycji typu NTFS. Zachodzi tutaj dokładnie odwrotna tendencja! Wynika stąd prosty wniosek praktyczny - jeśli korzystamy z systemu Windows 9x i wirtualną pamięć założono na dysku typu FAT32, plik wymiany powinien "wylądować" na początku "twardziela", jeśli natomiast korzystamy z NTFS, najlepszym możliwym miejscem na jego położenie są końcowe sektory naszego "hadeka".

W jedności siła 0x01 graphic
0x01 graphic

Koncepcja podziału plików na mniejsze, "atomowe" elementy powoduje pewne praktyczne konsekwencje. Każdy z przechowywanych plików jest w istocie zbiorem milionów "cegiełek" poukładanych w porządku określonym w tablicy partycji. Nie oznacza to jednak, iż poszczególne "kawałki" leżą jeden za drugim, zgodnie ze strukturą wewnętrzną pliku.

Rys.3 Gdy plik "nie mieści się" w wolnych obszarach na dysku, następuje jego podzielenie

Dopóki dysk twardy jest w znacznej części pusty oraz pliki są stosunkowo rzadko kasowane sytuacja jest dosyć prosta - odpowiednie mechanizmy odpowiedzialne za wykorzystanie naszego "twardziela" umieszczają dane w należytym porządku. Problemy zaczynają się nieco później. W dotąd jednolitej strukturze ułożenia plików pojawiają się "dziury" - miejsca po skasowanych plikach. Zbiory nagrywane później trafiają właśnie w takie zwolnione obszary dysku. Jeżeli zapisywany plik jest dłuższy niż zwolniona przestrzeń, "nadmiarowe" klastry trafiają w inny, wolny obszar dysku (rysunek 3). W prezentowanym przykładzie kolejne fragmenty znalazły się w stosunkowo niewielkiej odległości względem siebie. W rzeczywistości poszczególne elementy mogą trafić w dowolne, czasem bardzo odległe obszary dysku. Łatwo sobie wyobrazić, jak bardzo wydłuża to dostęp do zbiorów, tym bardziej że w ekstremalnych sytuacjach pojedyncze pliki mogą być podzielone na kilkaset, a nawet kilka tysięcy części.

Wyniki testu dla dysku z wysokim współczynnikiem fragmentacji dysku (ok. 30%) w zależności od dostępnej pamięci RAM

 

64 MB RAM

192 MB RAM

 

Wynik

Obciążenie procesora (%)

Wynik

Obciążenie procesora (%)

FAT32

Winbench 99 Business

4700

24,22

5840

27,31

Sandra 2001

12017

-

12496

-

NTFS

Winbench 99 Business

3440

23,36

3660

24,81

Sandra 2001

13065

-

10493

-

By "poukładać" dane na naszym dysku w odpowiednim porządku, należy zastosować jedną ze specjalizowanych aplikacji - defragmenter. Przyjrzyjmy się kilku różnym narzędziom tego typu, by wybrać to, które najlepiej spełnia swoje zadanie. Użytkownicy systemów Windows 98, jak również NT/2000 mogą wykorzystać aplikację Defragmentator dysku. Czy jest to rozwiązanie najlepsze? Niekoniecznie - program spełnia wprawdzie podstawową funkcję, jednak nie robi nic ponadto. Brak jakichkolwiek dodatkowych możliwości czy też definiowania reakcji programu na ewentualne nietypowe sytuacje to jego istotna wada. Jeśli zamierzamy zdefragmentować plik wymiany i zoptymalizować jego położenie, nie oczekujmy pomocy ze strony powyższego narzędzia. Ilość informacji prezentowanych w trakcie pracy z programem nie jest wystarczająca do przeprowadzenia dokładnej analizy stopnia fragmentacji twardego dysku. Schematyczna prezentacja graficzna "twardziela" oraz Raport analizy to jedyne udostępnione użytkownikowi formy kontroli "integralności" twardziela.

Znacznie lepiej spisuje się Diskeeper, który jest prekursorem wspomnianego wcześniej programu. Aplikacja, oprócz znacznie szybszej pracy, dodatkowo umożliwia zdefragmentowanie plików niedostępnych dla narzędzi tego typu w trakcie normalnej pracy - plików systemowych, katalogów (możliwa jest ich konsolidacja), pliku wymiany czy też głównej tablicy plików (w przypadku systemu plików NTFS). Jest to możliwe dzięki odpowiedniemu modułowi, który wykonuje wymagane czynności przed startem właściwego systemu operacyjnego. W trakcie normalnej pracy w Windows 2000 istnieje możliwość uruchomienia dodatkowych serwisów - Paging File Frag Guard oraz MFT Frag Guard, zapewniających zachowanie odpowiednich plików czy też obszarów systemowych w całości. Pewną wadą tego narzędzia jest konieczność kilkakrotnego przeprowadzania defragmentacji przed osiągnięciem zadawalających wyników.

Wyniki testu dla dysku po defragmentacji dysku w zależności od dostępnej pamięci RAM

 

64 MB RAM

192 MB RAM

 

Wynik

Obciążenie procesora (%)

Wynik

Obciążenie procesora (%)

FAT32

Winbench 99 Business

4730

24,40

5890

27,91

Sandra 2001

12270

-

12645

-

NTFS

Winbench 99 Business

3030

20,94

4150

25,49

Sandra 2001

12894

-

13316

-

Defragmentacja w trakcie bootowania systemu, a co za tym idzie szansa na uporządkowanie plików systemowych, to jedna z możliwości programów O&O Defrag oraz Perfect Disk 2000. Druga aplikacja warta jest szczególnej uwagi - dostępne opcje zapewniają wygodne przeprowadzenie defragmentacji. Pewną ciekawostką jest to, że narzędzie przyjmuje niespotykaną gdzie indziej strategię rozmieszczania plików. Scalone dane umieszczane są na końcu dysku.

Opisane aplikacje mają niewątpliwie dużo zalet, jednak to pakiet firmy Symantec - Norton SystemWorks 2001 - a dokładniej jeden z jego składników, Speed Disk, zapewnia najlepsze rezultaty. Defragmentowane pliki są rozmieszczane zgodnie z częstością ich wykorzystania - pliki, które są najczęściej wykorzystywane, trafiają na początek dysku, dane, do których dostęp powinien być najszybszy, "lądują" na środku twardziela (czas dostępu do takich plików jest najkrótszy), natomiast rzadko wykorzystywane są umieszczane na końcu "hadeka". Mało tego - użytkownik może samodzielnie zdefiniować, które z plików mają znaleźć się w określonym przez niego miejscu. Jeżeli zależy nam na tym, by defragmenter pominął wybrane pliki w trakcie porządkowania "twardziela", Speed Disk zapewnia nam proste rozwiązanie - mechanizm umożliwiający określenie "nietykalnych" plików.

By sprawdzić, w jaki sposób fragmentacja dysku wpływa na wydajność systemu, przeprowadziliśmy niezależne testy dla systemu FAT32 oraz NTFS w zależności od stopnia fragmentacji plików znajdujących się na nich. Dodatkowo sprawdziliśmy, w jaki sposób różna ilość pamięci operacyjnej wpływa na wydajność pracy dysku twardego. W naszych testach wykorzystaliśmy konfigurację zawierającą 64 oraz 192 MB RAM. Należy tu wspomnieć o jednym, dosyć istotnym fakcie - NTFS zawiera wbudowane mechanizmy w pewnym stopniu optymalizujące rozmieszczanie plików w odpowiednim porządku. Nie liczcie jednak na to, że defragmentacja przestaje być konieczna.

Wyniki testu dla dysku z wysokim współczynnikiem fragmentacji dysku (ok. 30%), w zależności od dostępnej pamięci RAM

 

FAT32

NTFS

 

64 MB RAM

192 MB RAM

64 MB RAM

192 MB RAM

High-End Disk WinMark 99

Wynik

Obciążenie CPU (%)

Wynik

Obciążenie CPU (%)

Wynik

Obciążenie CPU (%)

Wynik

Obciążenie CPU (%)

Ogólny

14500

18,53

15400

19,43

10800

16,05

12800

17,34

AVS/ Express 3.4

16600

17800

14400

15500

FrontPage 98

86300

90600

52800

52200

Micro Station SE

23400

25200

18300

17800

Photoshop 4.0

7400

7410

6360

6600

Premiere 4.2

12200

10500

7730

10500

Sound Forge 4.0

11300

15900

8710

12500

Visual C++ 5.0

15800

18100

9870

12300

Wyniki wskazują na poprawę wydajności systemu - po defragmentacji zmniejsza się obciążenie procesora przy zwiększonych "osiągach" dysku, nie są to jednak znaczące różnice. Wynika stąd prosty wniosek - regularne porządkowanie dysku ma wpływ nie tylko na optymalizację pracy "twardziela", dzięki niemu odzyskujemy również nieco mocy obliczeniowej komputera, nie spodziewajmy się jednak rewolucji. Mniejsza fragmentacja partycji typu NTFS (rzędu 15 %) zaowocowała mniejszymi zyskami po uporządkowaniu "hadeka". W przypadku partycji NTFS również obciążenie procesora nie zmieniło się w istotnym stopniu.

Wyniki testu dla dysku po defragmentacji dysku, w zależności od dostępnej pamięci RAM

 

FAT32

NTFS

 

64 MB RAM

192 MB RAM

64 MB RAM

192 MB RAM

High-End Disk WinMark 99

Wynik

Obciążenie CPU (%)

Wynik

Obciążenie CPU (%)

Wynik

Obciążenie CPU (%)

Wynik

Obciążenie CPU (%)

Ogólny

14900

16,64

16100

19,04

10900

16,43

12900

17,26

AVS/ Express 3.4

17400

17800

13500

12500

FrontPage 98

86600

95000

56200

58600

Micro Station SE

23700

23400

19100

20200

Photoshop 4.0

7320

7370

6840

6800

Premiere 4.2

12800

14000

6980

7580

Sound Forge 4.0

12500

15800

8930

12900

Visual C++ 5.0

15900

18000

10100

11800

Zauważmy znaczący skok wydajności pracy dysku związany ze zwiększeniem ilości dostępnej pamięci operacyjnej. Pisaliśmy o tym nieco wcześniej - tutaj mamy tego bezpośredni dowód - więcej pamięci oznacza poprawienie jakości pracy dla całego systemu.

Warto czy nie warto...

Niewątpliwie większość z nas stara się zoptymalizować pracę swojego komputera tak, by praca z nim stała się po prostu wygodniejsza. Czy "twardziel" łatwo poddaje się takim operacjom? Jak widać z rezultatów naszych testów, można zrobić mnóstwo, by nośnik danych stał się szybszy oraz obciążał system w znacznie mniejszym stopniu. Od czego jednak zacząć?

Podstawową rzeczą, wręcz obowiązkiem, przynoszącym najlepsze rezultaty jest włączenie trybu UDMA. Skok wydajności, jaki zyskujemy po przeprowadzeniu tej prostej operacji, jest gigantyczny. W naszych testach przełączenie trybu pracy dysku z PIO-4 do UDMA-2 spowodowało ponad dwukrotne zwiększenie wydajności "twardziela" oraz zmniejszenie obciążenia procesora o 60%.

Kolejną formą poprawy warunków pracy twardziela jest defragmentacja dysku. Jej efektywność jest ściśle zależna od stopnia podziału plików na "oczyszczanej" partycji - w przypadku fragmentacji rzędu kilku, kilkunastu procent nie oczekujmy wyraźnie widocznych efektów. Skok wydajności zaobserwujemy po usunięciu fragmentacji powyżej kilkudziesięciu procent - o wiele jednak prostszym rozwiązaniem jest systematyczne uruchamianie defragmentera raz na kilka tygodni i niedopuszczenie do powstania takiej sytuacji.

Każda z pozostałych opisywanych metod oznacza kilkuprocentowe zwiększenie wydajności dysku, często powiązane ze zmniejszeniem obciążenia procesora, dlatego też warto wykorzystać wszystkie dostępne formy przyspieszania pracy, szczególnie iż koszt przeprowadzenia opisywanych operacji jest znikomy.

0x08 graphic

Zobacz także:
Dysk musi być! - test 28 dysków twardych EIDE
Dyski twarde - przyspieszanie pracy (część 1)
Dyski twarde - technologie



Wyszukiwarka

Podobne podstrony:
7553
praca-magisterska-wa-c-7553, Dokumenty(2)
7553
7553
7553
7553
7553
7553
ike 31 12 05 tcm75 7553

więcej podobnych podstron