Tématický týden: Uvnitř procesoru - lze věřit benchmarkům?

Procesory bývají podrobovány různým výkonnostním testům, ať už analytickým nebo aplikačním. V článku si popíšeme vhodnost použití výkonových testů, jejich výhody či možná úskalí.

Užitečný výkon nelze vyjádřit jedním univerzálním číslem. Zkusme si totéž na příkladu auta. Maximální rychlost je řekněme 200 km/h. Za jakých okolností? Můžeme například testovat vozidlo jen s řidičem a téměř prázdnou nádrží na testovacím okruhu za bezvětří, po rovině. Můžeme také takový vůz pustit do skutečného provozu s určitým zatížením. Potom se rozhodně nedotkneme 200 km/h, ale pojedeme pomaleji.

Mezi další parametry může patřit dojezd, spotřeba paliva, užitečné zatížení, počet pasažérů atd. A zkuste všechny tyto hodnoty nacpat do jediného čísla…

U procesorů je to podobné. Mnoho parametrů má vliv na výkon, což se navíc projevuje různě. Pro jeden způsob využití je výhodné mít rychlou cache L1, jindy je podstatná velikost cache. Pro další je nutné mít hodně matematických koprocesorů, nebo lpí na propustnosti sběrnice, výkonu SIMD jednotek (MMX, 3DNow!, SSE/SSE2/SSE3…) atd.

Analytické testy

Dají se přirovnat například k testování samotného motoru auta na testovací stolici. Dokážeme tím změřit jednu součástku bez toho, aby její výkon ovlivnilo okolí. Víme tedy poměrně dobře, co takový motor dokáže. V autě ale není jen motor, a tak samotné charakteristiky motoru neříkají nic o tom, co se stane, když takový motor osadíme do skutečného vozidla. Také to neříká nic o tom, jak vlastně onen motor použijeme.

Analytické testy mají nízkou vypovídající hodnotu pro běžnou laickou veřejnost. Neznamená to, že by nestály za nic, naopak. Specialisté na hardware či software mohou na základě analytických testů ladit své aplikace a produkty na ještě vyšší výkon. Odborná veřejnost může lépe posuzovat kupované či prodávané produkty.

Mezi uznávané testy patří SiSoftware a jejich balík Sandra, který se nyní dostal do verze 2007a. Ta zohledňuje dokonce i tak žhavé novinky, jako je příkazová sada SSE4, procesory AMD pro patici AM2, platformu kolem procesoru Intel Core Duo, VIA C7 a další.

Vhodnost použití

Pro přirovnání použiji příklad ze světa automobilismu. Srovnejme formuli 1 a traktor. A kde? Zkusíme nejdříve oraniště. Traktor bez problémů projede polem, zatímco formule zůstane stát hned na začátku. Můžeme tedy tvrdit, že traktor je rychlejší než F1. Stupidní, že?!

Za prvé to nejsou konkurenti, za druhé směšujeme jablka a hrušky, navíc jsme použili nepřiměřenou metodiku měření. Podobně šílené kombinace ale ve světě počítačů přecházíme někdy bez mrknutí oka a ještě jim věříme.

Aplikačním testem pro hráče je testování právě tou hrou, kterou chce použít. Používá se například Quake 3 Arena či Unreal Tournament 2003. Chceme-li konvertovat video, je ideální testovat přímo aplikací, již chceme používat. Pokud se vybírá program pro kancelářské aplikace, není vhodné používat pro testování třeba Quake.

Na tuto chybu doplatil například procesor VIA C3. Ten neměl nijak oslnivý výkon, ale pro kancelářské aplikace postačil (pro ně byl také navržen). V kombinaci s hrou typu Quake 3 s enormními nároky na matematický koprocesor to ale byla hotová tragédie. Tvůrci procesoru totiž minimalizovali tu část, která téměř není využívána u kancelářských aplikací a která naopak drží hru jako Quake.

Měření něčeho jiného

Program pro výpočet Ludolfova čísla SuperPI je v drtivé většině používán pro měření výkonu procesoru (a nikoli proto, že by si někdo chtěl ověřit 3,14159…). Tato aplikace je psána pro procesory typu 486 či Pentium (a kompatibilní). Klade velký důraz na cache a klasický matematický koprocesor.

Program ignoruje všechny moderní způsoby výpočtu (3DNow!, SSE / SSE2 / SSE3), které stojí za vysokým výpočetním výkonem současných procesorů / aplikací. Nepodporuje ani více vláken, a tak technologie SuperThreading či HyperThreading nebo více jader či procesorů výkon programu SuperPI nezvýší. Není tedy vhodný pro objektivní testování dnešních procesorů; přesto je mohutně používán.

Mimochodem, pokud si nechcete pamatovat, kolik je π, stačí vědět jméno webové stránky, kde se o tom dočtete (http://3.141592653589793238462643383279502884197169399375105820974944592.com).

Více procesorů, vícejádrové procesory

To je nová metla na testovací programy. Některé testy jsou stále založeny na starším způsobu programování typu „one-man-show“ (neboli jediné vlákno). Tento způsob lze efektivně použít na procesorech s jediným jádrem a bez SuperThreadingu či HyperThreadingu. Podobně jako když může jeden člověk otestovat, jak se pracuje s jedinou lopatou. Jestliže je v počítači dvou a vícejádrový procesor, nebo více procesorů, nelze tuto metodu použít.

Má-li jediný člověk otestovat třeba čtyři lopaty najednou, nezbývá mu než chvilku držet první lopatu, pak druhou, třetí… V jednu chvíli ale pracuje jen s jedinou lopatou, ostatní nečinně leží. Totéž se děje ve chvíli, kdy testujeme například dvoujádrový procesor jednovláknovou aplikací. Pak vlastně zkoušíme jen polovinu procesoru.

Do programů, které dodnes nejsou vhodné pro testování nejmodernějších dvoujádrových procesorů, patří bohužel i aplikační testy typu PovRay. Přestože si tato úloha vysloveně říká o více procesorů, programátoři doposud nový směr tvorby počítačů nezohlednili.

Aplikační testy

Takovým testem je například cesta na dovolenou (a zpět, samozřejmě). Teprve reálný provoz a zatížení dokáží užitečnost celého řešení. Takové testy bývají nejblíže skutečnosti.

Mezi známé aplikační testy patří ty z dílny konsorcia BAPCo (Business Application Performance Corporation). Členy jsou firmy AMD, Atheros Communications, ATi Technologies, ARCintuition, CNET, Computer Shopper, Dell, Hewlett-Packard, Intel, Microsoft, NVIDIA, Seagate, Toshiba, Transmeta, VNU Business Publications Limited (UK), ZDNet a Ziff Davis Media.

SYSmark 2004 SE

Patří ke klasice aplikačních testů. Obsahuje ostré verze programů, které se nainstalují jen proto, aby se na nich předstírala práce uživatele. SYSmark si tedy nehraje na určité aplikace, ale přímo je obsahuje:

• Adobe® Acrobat® 5.0.5
• Adobe® After Effects® 5.5
• Adobe® Photoshop® 7.01
• Adobe® Premiere® 6.5
• Discreet® 3ds max™ 5.1
• Macromedia® Dreamweaver® MX
• Macromedia® Flash MX
• Microsoft® Access 2002 (10.4302.4219) SP-2
• Microsoft® Excel 2002 (10.4302.4219) SP-2
• Microsoft® Internet Explorer 6.0.2800.1106.xpsp1
• Microsoft® Outlook® 2002 (10.4219.4219) SP-2
• Microsoft® PowerPoint® 2002 (10.4205.4219) SP-2
• Microsoft® Word 2002 (10.4219.4219) SP-2
• Microsoft® Windows Media™ Encoder 9 Series v9.00.00.2980
• Network Associates® McAfee® VirusScan® Home Edition 7.01.6000.0
• ScanSoft® Dragon NaturallySpeaking® 6 Preferred
• WinZip Computing WinZip® 8.1 SR-1

Vliv testů si lze ukázat na reálném příkladu. Tvůrci testu SYSmark 2004 SE použili jako příklad porovnání stejného počítače, jen s procesorem s vnitřní frekvencí 2,6 GHz, 2,8 a 3,0 GHz. Jak vše dopadlo?

Akce 2,6 GHz 2,8 GHz 3,0 GHz
vnitřní frekvence   8% 15%
vytváření obsahu internetu   7% 14%
tvorba 3D   7% 13%
tvorba 2D   7% 15%
publikace webu   6% 13%
produktivita - MS Office   1% 4%
komunikace   0% 3%
tvorba dokumentů   5% 9%
datová analýza   -1% 3%
SYSmark® 2004 Rating   4% 9%

Počítač má procesor Intel Pentium 4, základní desku s čipsetem i865G, 512 MB RAM, pevný disk Maxtor 6E040L0 s kapacitou 37 GB, s rozhraním ATA a operační systém MS Windows XP. Při záměně procesoru za rychlejší model je znát, pro které aplikace může být vnitřní frekvence podstatná a pro které nikoli. Některé programy byly urychleny poměrně znatelně, s jinými to ani nehnulo.

Konkurenční srovnání

Pokud se někde nechá veřejnost poměrně účinně klamat, je to právě zde. Jen zkušený odborník pozná, že se srovnávají jablka a hrušky. Může se porovnávat nejnovější model s konkurencí o půl či o celou generaci starší. Mezi další nešvar patří srovnání produktů byť jen trochu odlišných zaměření (pracovní stanice versus server, herní stroj versus pracovní stanice apod.). Mezi účinné zbraně patří i zvýraznění jen některých parametrů a zamlčení jiných.


Úplné divy se mohou dělat s grafickým vyjádřením. Pokud měřítko grafu začíná na nule, je spravedlivě vykreslen. Pokud se zobrazí jen výřez, může to vypadat, že jeden výrobek vítězí s obrovským předstihem (i když je to jen o trapných pár procent). To se používá tehdy, chceme-li udělat z komára velblouda. Výřez se tedy má používat spíš jako lupa, jako doplněk klasického zobrazení.

Rozdíl je 5 procent…, ale vizuálně šestinásobek

Jen občas se zneužívá logaritmického měřítka. Potom dvoj- či trojnásobný výkon může vypadat jako nepatrný náskok. Tento trik se užívá, aby se z velblouda stal komár.

Rozdíl je pětinásobek…, ale vizuálně ani ne dvojnásobek

Závěrem

Výkonnostní testy zajímají kupujícího před nákupem či majitele před inovací stávajícího stroje. Cílem je nakoupit nejvýhodněji, abychom měli co nejvíce muziky za co nejméně peněz. Musíme si ale dávat pozor a mít oči otevřené. A někdy i číst mezi řádky.

Diskuze (14) Další článek: Testujeme Windows Vista beta 2 - ptejte se nás

Témata článku: , , , , , , , , , , , , , , , , , , , , , , , ,