Pentium 4 - teoria kontra praktyka

Długo oczekiwany, skonstruowany na podstawie zupełnie nowej architektury procesor Pentium 4 pojawił się wreszcie na rynku. Zamiast zachwytów wzbudził niezliczone wątpliwości, a nawet konsternację - jego wydajność w większości testów jest daleka od oczekiwanej.

Długo oczekiwany, skonstruowany na podstawie zupełnie nowej architektury procesor Pentium 4 pojawił się wreszcie na rynku. Zamiast zachwytów wzbudził niezliczone wątpliwości, a nawet konsternację - jego wydajność w większości testów jest daleka od oczekiwanej.

Podstawowym testem wykorzystywanym w naszej redakcji jest PC WorldBench 2000, mierzący wydajność komputera w typowych aplikacjach. Intel od samego początku informował, że w tego typu testach nie należy się spodziewać znacznego wzrostu wydajności. Faktycznie, w naszej testowej konfiguracji z procesorem w wersji 1,5 GHz, 256 MB pamięci, kartą Creative GeForce2 GTS Ultra i dyskiem IBM 45 GB UltraATA 100 udało nam się osiągnąć okrągły rezultat 200 punktów. Jest to wynik nieco lepszy od większości komputerów z procesorem Pentium III 1 GHz, ale wyraźnie gorszy od zestawów wykorzystujących procesory Thunderbird 1,1 i 1,2 GHz (wyniki na poziomie 210-225 punktów).

Nowy procesor powinien jednak pokazać swoją siłę w aplikacjach, które wykazują dużo większe zapotrzebowanie na moc obliczeniową, czyli przede wszystkim w grach i w programach przetwarzających bardzo duże ilości danych.

Na pierwszy ogień poszedł Quake 3 Arena, co okazało się trafnym wyborem - Pentium 4 wreszcie mogło rozwinąć skrzydła. Przy ustawieniach standardowych (tryb Normal) osiągnęliśmy wynik 180 klatek/s. Dla porównania, przy tej samej karcie graficznej (Creative GeForce2 GTS Ultra) zainstalowanej w komputerze z procesorem Pentium III 800 MHz wynik był o ponad 70 procent gorszy (105 klatek/s). Po przełączeniu do rozdzielczości 1280x1024 i włączeniu maksymalnych ustawień wydajność spadła do 71 klatek/s, co wciąż jest bardzo dobrym rezultatem, o 11 klatek/s lepszym od procesora Pentium III 800 MHz.

Niestety, kolejne testy w programie 3DMark2000 to kolejne rozczarowanie. Wynik 6842 punkty jest tylko o 100 punktów lepszy niż na służącym do porównań procesorze Pentium III 800 MHz, a znacznie gorszy od zestawów zbudowanych na podstawie procesorów AMD Thunderbird 1 GHz i szybszych. Jednak wedle wszelkiego prawdopodobieństwa kolejna wersja tego testu, wykorzystująca wbudowane w procesor Pentium 4 rozszerzenia SSE2, pozwoli osiągnąć wyniki o kilkadziesiąt procent lepsze.

Po testach przeprowadzonych z użyciem programu FlaskMPEG, służącego do konwersji na format DivX, mamy mieszane uczucia. Program ten pozwala wybrać jeden z kilku sposobów wykonywania obliczeń związanych z odwróconą dyskretną transformacją kosinusową (iDCT). Gdy wybraliśmy tryb MMX iDCT (obliczenia wykonywanie są na liczbach całkowitych, z wykorzystaniem rozszerzeń MMX), wówczas Pentium 4 wyraźnie wyprzedził wszystkich swoich konkurentów, osiągając prędkość 18 klatek/s (dla porównania AMD Thunderbird 900 MHz uzyskał tylko 11 klatek/s). Jednak po przełączniu w tryb IEEE-1180 (obliczenia na liczbach zmiennoprzecinkowych, najwyższa możliwa jakość konwersji) wydajność spadła do zaledwie 2,7 klatki na sekundę. Pozwoliło to wysunąć się na prowadzenie Thunderbirdowi 900 MHz z wynikiem 3,7 klatki/s (prawie o 30 procent szybciej!).

Poczekajmy na nowe testy?

Natychmiast po opublikowaniu przez serwis www.tomshardware.com pomiarów wydajności Pentium 4, przeprowadzonych przy użyciu programu FlaskMPEG, rozgorzała gorąca dyskusja na temat wiarygodności pomiarów przeprowadzonych przy użyciu jakiegokolwiek oprogramowania do edycji wideo. W czym problem? Otóż okazuje się, że kod tego typu programów jest często ręcznie optymalizowany w celu osiągnięcia maksymalnie wysokiej wydajności. Wszystkie współczesne procesory mają architekturę potokową, która pozwala im wykonywać kilka niezależnych operacji w tym samym czasie. Załóżmy, że mamy do wykonania dwie operacje a=b*c oraz d=a+e. Jak widać, do obliczenia wyniku drugiej operacji musimy znać wynik pierwszej. W architekturze Pentium III mnożenie dwóch liczb to 5 cykli zegara. Jeśli jednak mamy jeszcze do wykonania operację f=g+h, która nie zależy od wyniku mnożenia, wówczas możemy ją bez problemu wykonywać w tym samym czasie co mnożenie, optymalnie wykorzystując czas procesora.

W Pentium 4 potok został znacznie wydłużony, pozwalając na wyższe taktowanie procesora. Z drugiej jednak strony, poszczególne etapy zostały uproszczone, co spowodowało, że np. instrukcja mnożenia potrzebuje aż 7 cykli zegara, czyli o 2 więcej niż w Pentium III. Podobnie jest z instrukcją dodawania - tylko 3 cykle zegara w Pentium III i aż 5 cykli w Pentium IV. Ponieważ nie zostało to uwzględnione podczas optymalizacji, procesor nie będzie wykonywał żadnych innych operacji podczas nadmiarowych cykli zegara. W ten sposób traci praktycznie całą przewagę wynikającą z wyższego taktowania.

Poza tym Intel niemal całkowicie skoncetrował się na projektowaniu nowej jednostki SSE2, która ma zapewnić mu przewagę w aplikacjach multimedialnych. Dopóki jednak programy wykorzystują standardową jednostkę zmiennoprzecinkową, która nie uległa szczególnej modyfikacji, dopóty potencjał nowego procesora pozostanie ukryty. Potwierdzają to wyniki osiągnięte w programie FlaskMPEG, specjalnie zmodyfikowanym przez Intela - wydajność konwersji z najwyższą jakością wzrosła do ponad 14 klatek/s.

Dlatego musimy poczekać jeszcze kilka miesięcy, aby ocenić rzeczywistą wydajność najnowszego procesora Intela. Jeśli jednak już dzisiaj musimy kupić bardzo szybki procesor, w większości zastosowań lepiej będą sprawdzać się produkty firmy AMD z serii Thunderbird.


Zobacz również