Procesory nie wyposażone w technologię Hyper-Threading potrafią obrabiać tylko jeden wątek w danym momencie. Nie oznacza to, że nie można na nich uruchamiać systemów i programów wielowątkowych - owszem, można, jednak przy wykonywaniu dwóch wątków każdemu będą przydzielane krótkie szczeliny czasowe; procesor będzie się zatem między wątkami przełączał: pierwszemu poświęci ułamek sekundy, potem przeskoczy na kolejny ułamek do drugiego wątku i już po chwilce wróci do pierwszego. I tak do całkowitego wykonania zadania.
Najprostszym sposobem zwiększenia wydajności procesora jest podnoszenie jego taktowania. Nie da się go podnosić bez końca, a wydajności w niektórych zastosowaniach nigdy za wiele (np. przewidywanie pogody, sumulacje wybuchów jądrowych czy zderzeń samochodów). Jedyną metodą na zwiększenie wydajności całego komputera jest... wyposażenie go w dodatkowy procesor. Wówczas każdemu procesorowi zostanie przydzielony pojedynczy wątek, co - teoretycznie - może nawet umożliwić dwukrotne zwiększenie wydajności na komputerze z dwoma procesorami.
Systemy wieloprocesorowe nie cieszą się jednak zbyt dużym powodzeniem wśród użytkowników domowych czy biurowych. Przyrost wydajności, jakie daje dodatkowy procesor (czy dodatkowe procesory), w zdecydowanej większości aplikacji biurowych (edytory tekstu, arkusze kalkulacyjne, przeglądarki internetowe), a nawet w grach, jest niestety praktycznie żaden. Wina tkwi po stronie samych aplikacji, a nie sprzętu. Także popularne systemy operacyjne, Windows 98 czy Millennium, umożliwiają korzystanie tylko z pojedynczego CPU. Nawet najnowszy Windows XP Home Edition także wspiera tylko systemy jednoprocesorowe.
By w ogóle móc wykorzystać moc, jaką otrzymujemy dzięki drugiemu CPU, musimy pracować pod odpowiednim systemem operacyjnym. Obsługę dwóch (lub więcej) procesorów zapewnia tylko Windows NT 4.0, Windows 2000 oraz Windows XP Professional, a także wszystkie systemy Uniksopodobne. Jako że większość typowych aplikacji biurowych (a także gier) przeznaczona jest do uruchamiania na komputerach pracujących pod kontrolą Windows 98, Me, ewentualnie XP HE (Home Edition), więc programiści nawet nie zadają sobie trudu implementacji obsługi drugiego procesora (a konkretnie: implementacji wielowątkowości). Nie jest to zadanie wcale takie łatwe, bowiem naturalnym sposobem myślenia człowieka jest myślenie sekwencyjne: "Najpierw zrób to, potem tamto, a jeszcze później - coś innego". Tworzenie aplikacji wielowątkowych wymusza od programisty analizowania dwóch lub więcej procesów, które będą się odbywać jednocześnie. Aby program możliwie optymalnie wykorzystywał wszystkie dostępne procesory, nie może dojść do sytuacji, że jeden wątek będzie czekał na zakończenie się innego. Wątki powinny być od siebie możliwie niezależne.
Dość teoretyzowania. Wszak mieliśmy się zająć nowym Pentium 4. Procesor nie różni się wyglądem od swoich wolniejszych braci:
Wydziela blisko 82 W ciepła (!), więc wymaga stosowania nowego, specjalnego wentylatora, zaprojektowanego przez inżynierów z Intela:
Jest dużo większy od dołączanego do wolniejszych procesorów Pentium 4, a od spodu ma małą, miedzianą wstawkę:
Prócz zwiększonego zegara do 3,06 GHz, nowy Pentium 4 został wyposażony w technologię Hyper-Threading. Mówiąc w skrócie, umożliwia ona uruchamianie dwóch wątków jednocześnie (na jednym procesorze!).
Żeby było ciekawiej, także starsze procesory Pentium 4 mają wbudowane mechanizmy do pełnej obsługi Hyper-Threading, jednak są one wyłączone. Intel zdecydował się tę opcję uaktywnić dopiero w modelu 3,06 GHz. Mądre głowy pracują teraz - oczywiście ku niezadowoleniu Intela - nad włączeniem tej opcji w starszych P4. Niektórym się to nawet udaje, o czym pisaliśmy tutaj.
Przez systemy operacyjne (a także niektóre płyty główne) nowy Pentium 4 jest widziany... jako dwa oddzielne procesory. Mamy bowiem tylko jeden procesor fizycznie, ale... dwa procesory logiczne. Oczywiście wszystkie systemy operacyjne ze wsparciem dla konfiguracji wieloprocesorowych powinny sobie radzić z takim rozwiązaniem. W rzeczywistości nawet Windows XP Home Edition, mimo że obsługuje tylko jeden procesor fizyczny, wykorzysta technologię Hyper-Threading, bowiem poprawnie współpracuje z dwoma procesorami logicznymi (jego licencja zezwala na posiadanie jednego procesora fizycznego).
Nie liczmy jednak na to, że nowy P4 z technologią HT będzie dwukrotnie szybszy. W praktyce jego wydajność może być - jak twierdzi Intel - do 30% wyższa od takiego samego procesora, jednak pozbawionego HT. Bierze się to z faktu, że technologia HT podnosi efektywność wykorzystania jednostek wykonawczych procesora. Przeciętnie ich wykorzystanie wynosi zaledwie około 30%, a w połączeniu z technologią HT - podnosi się do 50%.
Technologii Hyper-Threading poświęcimy oddzielny artykuł, w którym zgłębimy jej tajniki bardziej szczegółowo. Przejdźmy teraz do testowanego zestawu.
Komputer Intra trade SPINEL
Testom poddaliśmy komputer firmy Intra trade o następujących parametrach:
Komputer miał bardzo ładną obudowę, Mode Com Angel:
Zainstalowaliśmy na nim Windows XP Professional, najnowszy dostępny w chwili testu (początek tego tygodnia) pakiet Intel Chipset Installation Utility oraz Intel Application Accelerator, a także sterowniki ATI 6.13.10.6166 dla karty RADEON 9700 Pro. Przy takiej konfiguracji przeprowadziliśmy kilka benchmarków.
Przypomnijmy, że we wrześniu testowaliśmy podobny komputer, ale z procesorem Pentium 4 2,8 GHz (patrz tutaj). Różnił się on jednak trochę konfiguracją - miał 512 zamiast 256 MB pamięci oraz kartę GeForce3 zamiast RADEON 9700 Pro. W zestawie Intra trade dołożyliśmy zatem pamięci (do całkowitej pojemności 512 MB RDRAM PC1066) oraz wymieniliśmy kartę graficzną na Gainward GeForce3, której zainstalowaliśmy sterowniki Detonator 29.80 - te same, jakich użyliśmy we wrześniu. Nowe Detonatory 40.xx są szybsze, ale przy nich nie mielibyśmy odniesienia. Przy tak otrzymanej konfiguracji zdjęliśmy kolejny komplet wyników.
Na początek ciekawostka - w BIOS-ie płyty Intel D850EMV2 można włączyć lub wyłączyć technologię Hyper-Threading. Możliwość wyłączenia HT pojawiła się dlatego, że niektóre systemy niepoprawnie radzą sobie z tą technologią i potrafią nawet zwolnić po jej włączniu. Przykładem jest tu Windows 2000. Dlatego zaleca się instalować na komputerach z procesorami P4 3,06 system Windows XP lub nowszy.
Przy włączonym Hyper-Threadingu Windows XP wykrywa dwa procesory:
Także WCPUID rozpoznał obecność dwóch procesorów:
Po wyłączeniu w BIOS-ie technologii Hyper-Threading wszystko "wraca do normy" - w Menedżerze Urządzeń pokazuje się już pojedynczy Pentium 4 3,06 GHz:
Przeprowadziliśmy testy wydajności przy obu ustawieniach - z włączoną technologią HT i z wyłączoną. Zobaczmy zatem, jak szybki jest najnowszy Pentium 4 - na początek przy aktywnej hiperwątkowości.
Testy syntetyczne
Zacznijmy od testów syntetycznych. Na początek - SiSoft Sandra 2002. Trzeba zaznaczyć, że ta wersja programu nie rozpoznaje jeszcze technologii Hyper-Threading. Obsługę HT zaimplementowano dopiero w Sandra 2003, zatem w tej wersji programu wyniki są wyższe. O ile - za chwilę to pokażemy.
Najpierw pokażemy zrzuty ekranu z testów CPU Arithmetic Benchmark i CPU Multi-Media Benchmark, a potem uzyskane wyniki porównamy do tych, jakie zanotowaliśmy przy procesorach Pentium 4 2,8 GHz i Athlon XP 2600+.
A jak mają się powyższe wyniki do uzyskanych przez P4 2,8 GHz i Athlona XP 2600+?
Jak widać, nawet mimo braku wsparcia dla Hyper-Threadingu, wyniki uzyskane przez P4 3,06 są wyraźnie wyższe od P4 2,8. Najwyraźniej procesor wpuścił po dwa wątki jednocześnie do swoich jednostek wykonawczych.
Tutaj Pentium 4 3,06 wręcz miażdży swojego poprzednika i konkurencję - zwłaszcza w teście jednostek zmiennoprzecinkowych.
SiSoft Sandra 2003
Dość ciepłym jeszcze benchmarkiem jest SiSoft Sandra 2003, który potrafi już wykorzystać technologię HT. Spójrzmy zatem na otrzymane wyniki:
Wyniki testu CPU Arithmetic Benchmark są wyraźnie wyższe, niż te prezentowane w teście Sandra 2002. Niestety nie mamy żadnych wyników porównawczych, bowiem Sandrę 2003 uruchomiliśmy po raz pierwszy właśnie na komputerze z procesorem Pentium 4 3,06 GHz.
PCMark2002
Kolejnym testem syntetycznym jest PCMark2002:
Tutaj różnica nie jest aż tak duża, jak poprzednio. Czyżby program nie zauważył obecności hiperwątkowości?
Testy rzeczywiste
Po przedstawionych wynikach, zwłaszcza z SiSoft Sandra 2002, można by się spodziewać, że Pentium 4 3,06 GHz zostawi swego poprzednika, Pentium 4 2,8 GHz, w kurzu. Zobaczmy, czy tak jest w istocie.
Quake III Arena
Na początek test Quake III Arena. Zawarto w nim pewne procedury wielowątkowe, jednak z przeprowadzonych przez nas testów na komputerach wieloprocesorowych wynika, że wzrost wydajności na nich jest bardzo niewielki.
I rzeczywiście, P4 3,06 nie popisał się zbyt szczególnie - jest tylko ciut szybszy od 2,8 GHz. Technologia HT nic mu nie dała w Quake III Arena.
Z kartą RADEON 9700 Pro komputer Intra trade uzyskał w Quake III Arena 365 fps w rozdzielczości 640x480x16 i - uwaga - 329 fps w 1024x768x32. Wow!
3DMark2001 SE
W 3DMarku również nie widać dużej różnicy:
Na karcie RADEON 9700 Pro uzyskaliśmy wynik 17 tysięcy punktów w 640x480x16 i 15 tys. w 1024x768x32. Oto małe porównanko GF3 i R9700 w rozdzielczości 640x480x32:
Serious Sam: Secound Encounter
Sytuacja podobna do 3DMarka i Quake III Arena przedstawia się w grze Serious Sam: Second Encounter.
Jak widać, w grach raczej nie powinniśmy się spodziewać przyrostu wydajności płynącego z posiadania technologii Hyper-Threading w procesorze. Wyższe wyniki P4 3,06 zawdzięcza tu tylko wyższemu zegarowi.
3ds max
Zobaczmy natomiast, jak zachowa się 3ds max 4.2.6 - program, który intensywnie korzysta z wielowątkowości. Gdy testowaliśmy pod nim platformy dwuprocesorowe, te liczyły testowe sceny w czasie blisko dwukrotnie krótszym, niż ich odpowiedniki wyposażone w pojedynczy procesor.
A jednak nie ma jak dwa niezależne procesory :-)
Jako ciekawostkę przedstawiamy wyniki testów w dwóch scenach - Islands i GlassGoblet. Co ciekawe, w scenie Islands prawie nie widać różnicy. Zaś w GlassGoblet jest widoczna, ale - ponownie - wcale nie taka duża.
LightWave
W teście NewTek LightWave 3D v7.5 także nie zaobserwowaliśmy zbyt dużych różnic:
Konwersja WAV do MP3
W teście konwersji pliku WAV do MP3 po raz pierwszy widać wyraźną przewagę 3-gigahercowego Pentium 4:
Program GOGO-no-coda wykorzystuje wszystkie możliwe bajery, jakie się pojawiają w nowych procesorach - w tym instrukcje 3DNow!, SSE2, a także wielowątkowość. Stąd dobre wyniki.
Konwersja VOB do DivX
Test konwersji pliku VOB do DivX znowu nie zwrócił jakichś powalających na kolana wyników:
HT włączone vs HT wyłączone
Oczywiście z ciekawości wyłączyliśmy w BIOS-e płyty Intel D850EMV2 technologię Hyper-Threading i ponownie przeprowadziliśmy kilka testów. Oto wyniki:
A jednak widać różnicę w 3ds max - jest nawet dość spora. Celowo przeprowadziliśmy test na scenie GlassGoblet, bo w niej widoczna jest przewaga technologii HT.
Tutaj też 3,06 zwolnił po wyłączeniu HT. Ponieważ zaokrągliliśmy wyniki do całej sekundy, więc nie widać, że przewaga Pentium 4 3,06 z włączoną technologią Hyper-Threading nad tym samym procesorem po wyłączeniu HT wynosi nie jedną, a półtorej sekundy (dokładne wyniki to: 10.98 sekundy z HT włączoną, 12.51 sekundy po wyłączeniu HT).
No a w Quake III Arena - różnica jest mikrusia.
Jak przedstawiają powyższe testy, w większości obecnych aplikacji nie powinniśmy się spodziewać wyraźnego przyrostu wydajności wynikającego z technologii Hyper-Threading. Ale, ale! Pod warunkiem, że pracujemy tylko na jednej aplikacji jednocześnie. Ponoć sytuacja zmienia się diametralnie w sytuacji, gdy na komputerze uruchamiamy dwa równolegle działające programy, a więc - jednocześnie skanowanie dysku twardego pod kątem obecności wirusów i test w Quake III Arena (czy kompresja pliku VOB do MP3). Niestety wcześniej takich testów nie przeprowadzaliśmy i nie mamy jeszcze opracowanej procedury testowej dającej się powtórzyć na różnych komputerach z zachowaniem powtarzalności wyników. Komputer z procesorem P4 3,06 GHz został nam jednak wypożyczony na zbyt krótko, więc nie zdążyliśmy jeszcze opracować odpowiednich testów.
Niniejszy artykuł należy jednak traktować dokładnie tak, jak to sugeruje jego tytuł - "pierwsze spojrzenie". Do tematu Pentium 4 3,06 GHz na pewno jeszcze wrócimy, gdy uda nam się wypożyczyć jeszcze raz procesor na dłużej, wraz z jego troszkę wolniejszym bratem, P4 2,8 GHz. Wówczas przeprowadzimy dodatkowe testy, ze szczególnym uwzględnieniem tych, gdy uruchamianych jest kilka programów na raz. No i oczywiście - podkręcanie :-)
Prosimy zatem wszystkich, którzy przeczytali niniejszy artykuł, żeby nie nastawiali się do technologii Hyper-Threading negatywnie (zaprezentowane powyżej wyniki nie wyglądają zbyt różowo). To tylko przedsmak kolejnego artykułu, który postaramy się opublikować za kilka dni.
Propozycje testów do tego artykułu już teraz możecie składać w tym wątku na naszym forum.
Podziękowania dla firmy Intra trade za wypożyczenie komputera do testów..