Tuning
pamięci i układów cache
autor:
Paul
3. BIOS i CACHE:
Read-Around Write
- lekko podnosi sprawność pamięci, pozwalając wykonywać operację
odczytu niejako poza kolejką pozostałych operacji (korzystamy z
bufora cache). Zawsze miejcie włączone.
Video/System
BIOS Cacheable i Video RAM Cacheable - tu musicie
zdecydować sami: opcje te pozwalają buforować w cache L2 dane
biosu systemowego i video, a trzecia - pamięci karty graficznej.
Ale pamiętajcie że tańsze procesory (Celeron/Duron) mają akurat
pamięci cache L2 mało (ale za to ta cena....) i szkoda każdego
kilobajta, który mógłby buforować dane z SDRAM. Co innego przy
PIII, a szczególnie przy Athlonie Thunderbird - tu spokojnie opcje
włączcie - zawsze 2-3% w 3D będzie szybciej (całkiem gratis).
Kiedyś istniał
jeszcze jeden problem przy tej opcji - wydajność cache L2. Pamięci
cache starszych procesorów chodziły zbyt wolno w stosunku do pamięci
kart graficznych (np. Athlon 550 slot A miał cache L2 pracujący z
225 MHz, a karta graficzna, np. G400 Max (również trochę starszy)
ma pamięci ustawione na 200 MHz, podobnie najnowsze GF2 MX-400
(oczywiście mają również wydajniejszy procesor). Więc gdzie tu
zysk, przy różnicy 25 MHz (pamiętajcie że 200 MHz daje
przepustowość ok. 1,6 GB, a 225 - 1,7 GB)? Żadnego. Ale przy np.
S4 Savage, pracującym z pamięciami 110 albo 125 MHz już różnica
przepustowości jest większa. Obecnie jednak nie ma tego problemu -
nowe procki mają zintegrowane, bardzo wydajne moduły pamięci (w
Athlonie T-Bird 1000 MHz - pamięć też chodzi na tyle - czyli ma
przepustowość 8 GB!)
Cache L2
Enabled/Disabled - Wyłączacie tylko wtedy gdy chcecie poważnie
podkręcać maszynkę. Dlaczego? Ano cache L2 jest to pierwszy
element, który odmawia poprawnej pracy. Oczywiście bez sensu jest
wyłączenie cache i przestawienie np. Celerona 633 na 700 - w
realnych aplikacjach i grach 3D strata braku buforowania będzie większa
niż zysk z wynikający z częstotliwości - takie coś to zupełne
nieporozumienie.
4. TUNING
SYSTEMU RÓŻNYCH PROCESORÓW.
Jeszcze gwoli wyjaśnienia
- tryb asynchroniczny - pamięć pracuje z inną częstotliwością
niż procesor. Na ogół dotyczy to jednej z dwóch sytuacji - przy
magistrali procesora 66 MHz (Celerony) pamięci można ustawić na
100 MHz (dodatkowe 0,3 GB przepustowości). A przy procesorach
100 MHz (Duron, PIII, większość Thunderbirdów) pamięć może z
kolei chodzić na 133 MHz. Zalety - większa przepustowość pamięci.
Wady - odrobinę mniejsza sprawność całego systemu pamięć-cache-procesor
od analogicznego ustawienia przy pracy synchronicznej. Jak się to
ustawia - na przykład w biosie układów i815 Solano dla zakresu
100-133 MHz macie przestawianie dzielnika z 3:3:1 (odpowiednio
CPU:RAM:PCI) na 4:1:3 albo podobnie (różnie jest to przedstawione
w różnych BIOSACH). W układach VIA trochę prościej można dla
pamięci SDRAM po prostu dodać wartość PCI (33 MHz) do magistrali
fsb - jeśli ta jest ustawiona na 100 - w sumie otrzymamy właśnie
133 MHz dla pamięci.
A tryb
synchroniczny to takie ustawienie w którym pamięć pracuje dokładnie
tak samo jak magistrala fsb procesora. Przy 66 MHz - PC-66, przy 100
MHz - PC-100 - proste? W tym tylko trybie działały poprzednie
chipsety Intela - LX i BX. Co ciekawe w takim trybie układy Intela
są wyraźnie wydajniejsze od VIA. Podobnie było z AMD Irongate i
VIA KX133 - też VIA było gorsze. Lwi pazur VIA pokazało dopiero w
bardzo uniwersalnych i dopracowanych układach ApolloPro133A i
KT133A - kosząc konkurencję i ceną i wydajnością (z ta wydajnością
to może przesadzam - w każdym razie nie są już gorsze od chipsetów
Intela i AMD)
Sytuacja wygląda
zupełnie inaczej dla różnych platform. Co można wyciągnąć z
której maszyny? Najważniejsze jest jakich pamięci używamy
i na ile możemy je ustawić? Po kolei:
Procesory
Intela:
- Jeśli mamy Celerona
(mowa o modelach do 766 włącznie) to pamięci na starych układach
muszą chodzić synchronicznie, tzn. z prędkością fsb - 66 MHz.
Bida, nie? Ale jeśli mamy płytę na I815 lub VIA, to możemy, w
trybie asynchronicznym, ustawić komputer do pracy przy pamięciach
przestawionych na 100 MHz - a to już dużo lepiej.... Jeśli na
dodatek komputer wspiera ręczne przestawianie magistrali to można
go na ogół jeszcze podkręcić (sorry - tym razem miało nie być
o podkręcaniu...). Jeśli użyjecie modułów PC-133, a nie PC-100
to też możecie mieć z tego dodatkowy pożytek - bo w ten sposób
macie pewność że kości pójdą z ustawionym w Biosie CAS LATENCY
na 2.
- Przy Pentium
III Coppermine mamy dwie możliwości:
a) procesor z
magistralą 100 MHz - jeśli używacie pamięci PC-100 to najwyżej
możecie przestawić CAS LATENCY z 3 na 2, co powinno poprawić
wyniki systemu. To samo dotyczy też najnowszego Celerona 800 MHz,
bo jest on taktowany tak samo (tzn. z fsb 100 MHz). Jeśli macie kości
PC-133 i wasz bios (ale tylko na chipsetach Solano albo VIA) pozwala
przestawić je w tryb asynchroniczny - ustawiacie koniecznie pamięci
na 133 MHz - gratis otrzymacie 33% wydajności pamięci więcej. Również
możecie spróbować przestawić CAS LATENCY na 2, ale czasami ma to
wpływ na stabilność Windows. Tutaj należy być ostrożnym. Nie włączajcie
buforowania Video, ani nic takiego.
b) procesor z
magistralą 133 (i oczywiście pamięci PC-133) - ustawcie Cas
Latency na 2 - może pójdzie? Włączcie buforowanie Video RAM i
ewentualnie Video BIOS. Jeśli nie macie specjalnych modułów
PC-166 lub chociaż PC-150 (małe ilości takich produkują Siemens,
Micron, OcZ, Mushkin) - nie ruszajcie trybu pracy pamięci,
najlepiej niech podsystem procesor-pamięć chodzi w trybie
synchronicznym. Jesli jednak jesteście szczęśliwcami (i macie
PC-166), to bez podkręcania też sporo zyskacie - przestawiacie
pamięć w tryb asynchroniczny - wtedy procesor chodzi na 133 MHz, a
pamięć na 166 MHz...
Procesory AMD:
a) większość
Duronów/Athlonów chodzi na fsb 100 Mhz (wewnętrzne 200 MHz) -
jako że praktycznie zawsze kupuje się je z PC-133, ustawiamy tak
sobie pamięci w biosie układów KT133/133A. Przy Duronie nie włączajcie
dodatkowych funkcji buforowania - szkoda jego cache-u. Przy
T-Birdzie można poszaleć - wszystkie funkcje buforowania na
Enabled. Chyba że podkręcacie, wtedy może to dodatkowo rozchybotać
system.
b) najnowsze
Athlony chodzą przy fsb 133 (266) - co pozwoli ustawić wasze kości
w tryb synchroniczny z pamięcią, co dodatkowo podniesie wydajność
całego komputera.
W obydwu wypadkach popróbujcie z CAS
LATENCY ustawionym na 2 - jak pójdzie stabilnie - dodatkowy zysk.
5. Testy
Jako
baza testów posłużył mi komputer z AMD Duronem 750 (jeden z
najpopularniejszych) i doskonałą płytą Epox 8KTA3+ (niedawno
recenzowaną u nas). Wszystkie wyniki uzyskane są na czystym Win2K,
bez włączonych żadnych dodatkowych aplikacji. Za pamięć robiły
2 moduły SDRAM PC-133 domyślnie pracujące jako CAS3.
test
memory benchmark pakietu SiSoft Sandra 2000 (wyniki ALU/FPU)
TYP PAMIĘCI
|
PC
133 Cas Latency 2
|
PC
133 Cas Latency 3
|
PC
100 Cas Latency 2
|
PC
100 Cas Latency 3
|
Włączone
4-way interleaving
|
454/567
|
451/551
|
389/439
|
379/424
|
Włączone
2-way interleaving
|
431/515
|
416/507
|
348/395
|
341/380
|
Interleaving
wyłączony
|
392/453
|
378/429
|
314/345
|
291/323
|
I
jeszcze wynik maksimum przy PC-133 CAS2, z 4-way interleaving i
dodatkowo z funkcją Read-Around Write przestawioną na enabled: 454/570
Wow.
Dobrze ustawione PC-100 może przebić PC-133 bez 4-Way interleaving,
a tak często pracują płyty na starszych KT133.
Sprawdźcie
jak u Was pracują pamięci...
6. PODSUMOWANIE
Jak widzicie nie
zawsze warto podkręcać - czasem dobrze skonfigurowana maszyna może
przebić komputer o teoretycznie lepszej wydajności, ale z niewłaściwie
ustawionymi funkcjami cache-u i pamięci. Nim zaczniecie katować
biedne procki wysokim napięciem i częstotliwościami poza
specyfikacjami - zróbcie porównania, czy na pewno Wam się to opłaca?
Autor:
Paul
|