3
Opublikowano 19 marca 2012 w Portal komputerowy » Sprzęt komputerowy » Old school » Athlon 32 i pamięć – czyli mity i kity o wydajności
 
 

Athlon 32 i pamięć – czyli mity i kity o wydajności


ARTYKUŁ ARCHIWALNY. Ile razy zdarzyło nam się ulec obiegowym opiniom, uwierzyć na słowo grupce osób, które uznajemy za bardziej kompetentne od siebie? Często boimy się, nie chcemy lub z jakiegoś innego powodu nie sprawdzamy tego, co inni uznali za najlepsze. Niezależnie od tego, czy są to doświadczeni użytkowników forum, czy tez twórcy BIOS-u naszej płyty głównej. A może czasem warto samemu przetestować to i owo? Ostatnio zainteresowałem się pamięcią operacyjną i postanowiłem sprawdzić kilka kwestii związanych z jej wydajnością i zweryfikować obiegowe teorie. Jedne utrzymały swój niepodważalny status, inne no cóż… zobaczycie sami, ale
najpierw sprawy techniczne:

Platforma testowa

  • Athlon 2200+ Thoroughbred B (1800MHz FSB133MHz)
  • Epox EP-8K9A(I) KT400
  • Twinmos DDR400 CL 2.5 256 MB
  • Sapphire R9550 128MB 250/391@351/459 [rdzeń/pamięć]
  • Seagate Barracuda 80 GB ATA100 2MB Cache
  • Sound/LAN – On Board
  • Rozmiar Pagefile = 768 MB [ustawiony na sztywno]

Procedura głównego testu:

  1. System – Windows XP Home SP2 PL, wystarczająco świeża kopia, testy wykonano 7-9 dni po instalacji. Co ważne system nie był w żaden sposób optymalizowany.
  2. Po odpaleniu Windowsa wszystkie programy były każdorazowo wyłączane. Następnie po kolei uruchamiałem benchmarki, w poniższej kolejności:
    • CCR 2002 RC1 (10x test RAMu)
    • Aida32 3.93 EE
    • Sandra 2005 10.37 Lite
    • 3d Mark 2001 SE (domyślne ustawienia)
    • Winrar 3.30 (test polegał na spakowaniu w trybie „normal” 248 MB danych, 11 różnych typów plików)
  3. Po wykonaniu serii testów następował restart systemu, odpowiednie zmiany w BIOS-ie i powtórzenie całej procedury.
  4. Serie testów wykonywane w sposób ciągły, pomiędzy pierwszym i ostatnim nie został zainstalowany, ani usunięty żaden z programów. Między całymi seriami testów miały miejsce odstępy czasowe, ale za każdym razem zachowałem zasadę: gdy testuje serię, zawsze robię to w sposób ciągły. Stąd mogą wystąpić niewielkie różnice w wynikach osiągniętych przy tych samych ustawieniach, ale w różnych seriach testów.

Na testy nadszedł czas…

Zawsze słyszę lub też czytam odnośnie optymalnej współpracy CPU z RAM: „Athlon musi pracować synchronicznie z pamięcią, aby uzyskać maksymalną wydajność”. Tak przynajmniej wynika z testów Bartona, chociaż chętnie sam bym to sprawdził. Athlon 3200+ (FSB 200MHz) po prostu dławi się, jeśli nie ma do pomocy kostek DDR400. Dobrze, a co z najpopularniejszymi wersjami Athlonów (czytaj – najwięcej sprzedanych egzemplarzy) z szyna FSB133 MHz? Moja kość – Twinmos 256MB w standardzie pracuje jako DDR400, więc trochę odbiega to od teoretycznie optymalnego DDR266. Tryb DDR333 powinien być od niego szybszy, a DDR266 najszybszy.

Pora na pierwsze porównanie DDR 400 vs DDR333

 

FSB 133
Timingi 2.5-3-3-7
DDR 400 333
CCR – pamięć 8133 8797
Aida32 odczyt 1806 1877
Aida32 zapis 581 598
Sandra RAM INT ALU 1750 1945
Sandra RAM Float FPU 1649 1858
3D Mark 2001 SE 8705 8970
WinRAR [s] 378 342

Wyniki mówią same za siebie! Na razie wszystko idzie zgodnie z planem. Podsystem pamięci dostał porządnego kopa, 4-10% w testach pamięci, 5% w 3D Mark SE. Winrar dostał po prostu skrzydeł, był aż o 10% szybszy! Po takich wynikach nie mogłem się już doczekać, co stanie się przy trybie DDR266 i stało się…

 

FSB 133
Timingi 2.5-3-3-7
DDR 400 333 266
CCR- pamięć 8133 8797 8352
Aida32 odczyt 1806 1877 1780
Aida32 zapis 581 598 527
Sandra RAM INT ALU 1750 1945 1886
Sandra RAM Float FPU 1649 1858 1777
3D Mark 2001 SE 8705 8970 8766
WinRAR [s] 378 342 379

Coś jest nie tak? Jest lepiej niż przy DDR400 ale niewiele, a DDR266 nie dotrzymuje kroku DDR333. Chwila na zastanowienie się. Coś musi być nie tak. Chyba już wiem – timingi. Teoria mówi „im mniejsze timingi tym lepiej”. Więc zmieniłem z 2.5-3-3-7 na niemal kultowe 2-2-2-6. Myślałem, że przy tak wolnym zegarze pamięci, poprzednie timingi po prostu hamują przyrost mocy, jaki daje tryb synchroniczny. I już się cieszyłem, że po problemie, w końcu miałem „najlepszy” synchroniczny tryb i sportowe timingi, a tu nagle… drugi zgrzyt.

 

FSB 133
DDR 333 266 266
Timingi 2.5-3-3-7 2-2-2-6
CCR- pamięć 8797 8352 9171
Aida32 odczyt 1877 1780 1862
Aida32 zapis 598 527 583
Sandra RAM INT ALU 1945 1886 1926
Sandra RAM Float FPU 1858 1777 1841
3D Mark 2001 SE 8970 8766 8980
WinRAR [s] 342 379 340

Ku mojemu zaskoczeniu wyniki są niemal identyczne jak w przypadku DDR333 z wolniejszymi timingami. Jak widać tryb synchroniczny bardzo zawodzi. Tu chyba mogę sobie pozwolić na sformułowanie pewnego wniosku:

AMD Athlon z FSB 133MHz (przynajmniej XP) najlepiej działa w trybie asynchronicznym z pamięciami DDR333, dlaczego? Może to kwestia wysokiego zegara CPU, który więcej czerpie korzyści z wyższej przepustowości RAM, niż traci przez dodatkowe opóźnienia związane z asynchroniczną pracą FSB i DDR? W końcu, te zgodne fazy zegarów FSB i pamięci to takie pobożne życzenia. Gdy wkraczają do akcji wszystkie opóźnienia, cały model teoretyczny mocno się komplikuje. W swoim BIOS-ie znalazłem 9 ich rodzajów, a niektóre płyty maja jeszcze więcej!

Niezrażony jednak, postanowiłem sprawdzić najlepszy dotychczas tryb DDR333 z niższymi timingami 2-2-2-6. Dostałem sygnał, że coś jest nie tak w postaci dwóch auto-restartów podczas uruchamiania się systemu. Szybka wizyta w BIOS-ie, zmiana napięcia z 2,5V na 2,7V i już było lepiej, pamięci z „uśmiechem na złotych stykach” przeszły kolejną serię testów:

 

FSB 133
DDR 400 333 266 266 333
Timingi 2.5-3-3-7 2-2-2-6
CCR – pamięć 8133 8797 8352 9171 9285
Aida32 odczyt 1806 1877 1780 1862 1959
Aida32 zapis 581 598 527 583 618
Sandra RAM INT ALU 1750 1945 1886 1926 1992
Sandra RAM Float FPU 1649 1858 1777 1841 1910
3D Mark 2001 SE 8705 8970 8766 8980 9172
Winrar [s] 378 342 379 340 309

Chyba wyniki nie wymagają komentarza. Werdykt zapadł – DDR333 2-2-2-6 wygrywa, teoria o wyższości niższych timingów, sprawdza się w całości. Krótsze czasy dostępu mogą znacznie zwiększyć wydajność, nawet o ponad 5%, a w aplikacjach intensywnie wykorzystujących podsystem pamięci jeszcze więcej. W tym miejscu mam jeszcze małą uwagę. Pisząc „intensywnie wykorzystujących podsystem pamięci” nie mam na myśli „zapychania” RAM-u. Winrar nawet na najwyższym poziomie kompresji potrzebuje tylko kilkudziesięciu MB wolnej pamięci operacyjnej.

Apetyt rośnie…

Tak jest, apetyt rośnie, bo to w końcu serwis dla tych, którzy lubią majsterkować przy komputerze i wyciskać z niego siódme poty. Postanowiłem zatem, dla własnej satysfakcji, zrobić również test na jeszcze niższych timingach, tym razem z ustawieniami ekstremalnymi 1.5-2-2-5 (na niższe nie pozwala mi płyta). Oto na co stać DDR266 i DDR333 z tymi ustawieniami. Skoro poszło wcześniej tak dobrze teraz powinno być jeszcze lepiej, ale niestety…

 

FSB 133
DDR 266 333
Timingi 2-2-2-6 1.5-2-2-5 2-2-2-6 1.5-2-2-5
CCR – pamięć 9171 9173 9285 9314
Aida32 odczyt 1862 1869 1959 1962
Aida32 zapis 583 581 618 619
Sandra RAM INT ALU 1926 1932 1992 1994
Sandra RAM Float FPU 1841 1840 1910 1910
3D Mark 2001 SE 8980 9003 9172 9201
Winrar [s] 340 338 309 309

Widać różnicę, testy wskazują wyższość czasów 1.5-2-2-5 nad 2-2-2-6, jest to jednak różnica bardzo symboliczna, poniżej 0,3%! Jaki z tego wniosek? Albo zmiana w ustawieniach timingów jest zbyt mała, aby zaistniała bardziej wyraźna różnica, albo co bardziej prawdopodobne, nie ma po prostu już z czego zejść. Dlatego przy 2-2-2-6 szyna pamięci i FSB osiągają niemal optymalne warunki współpracy, a pozostałe opóźnienia niwelują efekty zastosowania CL1.5.

Potwierdzenie poprawności wyników

Aby udowodnić prawdziwość mojej tezy, o niedoskonałości powszechnego stwierdzenia wyższości trybu synchronicznego nad asynchronicznym w przypadku Athlonów z szyna FSB=133MHZ (przynajmniej dla wersji XP i chipsetu KT400) zrobiłem jeszcze kilka testów:

  1. Najsilniejszym formatem kompresji Zip, silniejszym od Rar jest 7z. Może więc warto sprawdzić jak poradzi sobie z tymi samymi plikami co Winrar – 7zip 4.12b, tylko że tym razem tryb kompresji ustawiłem dodatkowo na „max”? Jest jeszcze „ultra”, ale to już prawdziwy pożeracz pamięci i bez 512 MB RAM nie ma nawet co próbować.
  2. Coraz popularniejszy staje się format Rmvb, który jest powszechnie stosowany do przesyłania plików video przez Internet. Charakteryzuje się on znakomitym stopniem kompresji przy zachowaniu jakości plików w formacie Avi. Do testu posłużył mi plik zawierający niezapomniane sceny ze zwycięstwa Urana w teleturnieju „Daję słowo” (raz jeszcze
    gratuluję Uran!). Całość „ważyła” 66.5 MB.

 

FSB 133
DDR 400 333 266 266 333
Timingi 2.5-3-3-7 2-2-2-6
Avi do Rmvb 13:27 13:07 13:39 13:12 12:49
7z 14:02 12:52 14:13 12:41 11:55

Jak widać testy, w których większe jest zapotrzebowanie na moc i mocniej wykorzystujące
podsystem pamięci potwierdzają poprzednie spostrzeżenia:

  • Najlepszym ustawieniem (w wypadku tej konfiguracji) jest DDR333
  • Im krótsze timingi tym lepiej

Tylko niech nikogo nie zwiodą małe różnice w kodowaniu Avi do Rmvb. Po prostu zaważyła na tym mała ilość RAM-u i brak przygotowania systemu do tego typu zadań (celowo nie grzebałem „pod maską”).
Jest też nowe spostrzeżenie, które mną wstrząsnęło. Spójrzcie na wyniki DDR400 i DDR266 z CL 2.5. „świetny tryb synchroniczny” poległ na całej linii, jest wolniejszy od teoretycznie gorszego DDR400. I w sumie tym mało optymistycznym akcentem, po zmieszaniu trybu synchronicznego z błotem mógłbym zakończyć, ale pozostało jeszcze kilka rzeczy do sprawdzenia i wyjaśnienia. Skoro różnica miedzy najgorszym, a najlepszym trybem była aż tak duża i to bez podkręcania, a dzięki samej wizycie w BIOS-ie, podjąłem decyzje, że jeszcze tam nieco poszperam.

 

FSB 133 133 lepiej o [%]
DDR 400 333
Timingi 2.5-3-3-7 2-2-2-6
CCR – pamięć 8133 9285 11.4
Aida32 odczyt 1806 1959 10.8
Aida32 zapis 581 618 6.3
Sandra RAM INT ALU 1750 1992 11.3
Sandra RAM Float FPU 1649 1910 15.8
3D Mark 2001 SE 8705 9172 5.3
Winrar [s] 378 309 22.3
Avi do Rmvb 13:27 12:49 2.2
7z 14:02 11:55 17.7

 

W BIOS-ie są jeszcze trzy dosyć ciekawe opcje:

  • Bank Interleave (przeplot banków pamięci)
  • Burst Length (długość ciągu danych przesyłanych w trybie burst)
  • AGP Aperture Size (szczelina w pamięci RAM, która może być oddawana do dyspozycji procesora grafiki)

Wszystkie testy do tej pory były wykonywane z następującymi ustawieniami:

  • Bank Interleave = disable (wylaczony)
  • Burst Length = 4
  • AGP Aperture Size = 128 MB

Ale po kolei… najpierw zająłem się przeplotem, powszechnie uważa się, że im więcej banków pamięci się przeplata tym lepiej, wiec ustawiłem przeplot na 4 (DDR ma 4 banki). Potem z
wyłączonym przeplotem przetestowałem różnicę w wydajności po wydłużeniu ciągu bitów przesyłanych w trybie burst i otrzymałem bardzo ciekawe rezultaty:

 

FSB 133
DDR 333
Timingi 2-2-2-6
Bank Interleave 0 4 0
Burst Length 4 4 8
CCR – pamięć 9335 9588 9321
Aida32 odczyt 1965 1997 1962
Aida32 zapis 618 664 603
Sandra RAM INT ALU 1993 2021 1995
Sandra RAM Float FPU 1911 1944 1909
3D Mark 2001 SE 9172 9323 9189
Winrar [s] 309 295 309

O ile zmiana wartości Burst Length na 8 praktycznie nie wpływa na wydajność, o tyle poczwórny przeplot znakomicie spełnia swoje zadanie i bije wszelkie rekordy w dotychczasowych testach. Wynik z Sandry w końcu przekroczył magiczną granicę 2000pkt, a kompresja w Winrar zajęła mniej niż 300 sekund. Bez wątpienia przeplot znacznie poprawia wydajność pamięci.

Pozostało jeszcze ustawienie wartości AGP Aperture Size, z racji odrębnej procedury testowej omawiam ją na końcu. Ponieważ AAS ma z założenia poprawiać wydajność tylko w grach, jedynym benchmarkiem tu zastosowanym był 3D Mark 2001 SE. Teoria mówi, że AAS winno równać się połowie wielkości posiadanej w komputerze pamięci RAM, co powinno spowodować wzrost wydajności. Czyżby kolejny mit do obalenia? Najwyraźniej tak!

 

FSB 133 133 133 133
DDR 333 333 333 333
Timingi 2-2-2-6 2-2-2-6 2-2-2-6 2-2-2-6
Przeplot banków 4 4 4 4
AAS [MB] 128 64 128 64
VGU/ram karty 351/459 351/459 101/202 101/202
3D Mark 2001 SE 9319 9302 3572 3573
3D Mark 2001 SE 4AA 6380 6378 2284 2278

Chyba parę osób się zdziwiło widząc taktowania zegarów rdzenia i pamięci karty graficznej. To nie pomyłka tylko celowe działanie. Po prostu chciałem dać szanse wykazania się AAS w sytuacji zbliżonej do współpracy z kartą graficzną starszej generacji. Obniżyłem przepustowość pamięci karty graficznej z ~7.3 GB/s do ~3.2 GB/s, aby mogła się do czegokolwiek przydać pamięć na płycie głównej (DDR333 ~2.7 GB/s).

Wyniki są niemal identyczne i chyba warto się teraz zastanowić dlaczego teoria po raz kolejny się nie sprawdziła, a ustawienie AAS na 64 MB równie wydajne jak 128MB. Powodów jest kilka:

  1. AAS wskazuje, ile chipset może maksymalnie przeznaczyć pamięci RAM dla wsparcia karty graficznej, gdy tej zabraknie na tekstury. Było to skuteczne, gdy karty miały 16/32 MB swojej pamięci, a nie 128 i to szybkiego RAM-u (tu potrzeba naprawdę czegoś ostrego, a nawet DOOM III, który strasznie obciąża VGU, nie potrzebuje aż 128 MB na tekstury).
  2. Po za tym, jeśli nawet chipset skorzysta z pamięci dla GPU, to straci na tym główny procesor, który nie będzie miął przez pewien czas dostępu do całej objętości RAM (AAS ma charakter dynamiczny, czyli działa czasowo, nie ciągle).
  3. VGU dostaje wolną pamięć. Co z tego, że dwa kanały DDR 400 to 6.4 GB/s, skoro AGP 8x może wysłać max. 2 GB/s, a karty na PCI-Ex16 (~9.5 GB/s) maja takie pamięci, ze od 6.4GB/s to im się przepustowość zaczyna. A jeśli ktoś ma tylko jeden kanał to ma tylko 3.2 GB/s i to tylko teoretycznie…
  4. Z tych 128 MB VGU dostaje tylko 58MB. Dlaczego? Taka specyfikacja standardu, 12 MB na przestrzeń adresowa, a reszta na pół.

Wniosek jest oczywisty: AAS tak samo jak Fast Write to przestarzały dopalacz, nowy sprzęt już go nie potrzebuje i świetnie sobie radzi bez niego. Wychodzi tutaj przestarzała konstrukcja BIOS-u… może też całej architektury?

Podsumowanie

Po poświeceniu kilkunastu godzin na wykonanie powyższych testów muszę stwierdzić z zadowoleniem, że udało mi się wyjaśnić kilka kwestii i przy okazji przyspieszyć pracę swojego komputera. Różnica miedzy domyślnymi ustawieniami, a tymi które teraz używam jest niemal przepaścią: 7-28%!

 

FSB 133 lepiej o [%]
DDR 400 333
Timingi 2.5-3-3-7 2-2-2-6
Bank Interleave 0 4
CCR – pamięć 8133 9588 11.7
Aida32 odczyt 1806 1997 10.5
Aida32 zapis 581 664 14.3
Sandra RAM INT ALU 1750 2021 15.5
Sandra RAM Float FPU 1649 1944 17.9
3D Mark 2001 SE 8705 9323 7.1
Winrar [s] 378 295 28.1

Tryb synchroniczny w przypadku Athlonów XP FSB133 okazał się nieporozumieniem, podobnie jak AAS, który po prostu nic nie daje! Z kolei swoją przydatność udowodniły niskie timingi i przeplot banków pamięci. Chyba już wystarczy wniosków i tabelek jak na jeden artykuł, teraz możecie komentować, kłócić się, że wyniki nie są niewiarygodne itp. … Ale uprzedzam – ja już je dwa razy sprawdziłem.

Was też zachęcam do sprawdzania na własnej skórze (maszynie) różnych obiegowych opinii, zawsze może się okazać, że któraś jest już nieaktualna lub nigdy nie była prawdziwa!

Spis treści: Athlon 32 i pamięć – czyli mity i kity o wydajności

Słowa kluczowe: burst length

Click to rate this post!
[Total: 1 Average: 4]

Marcin Kluczek