Benchmarking je metoda měření výkonu pomocí srovnání se standardem nebo s jinými systémy. Výsledkem je obvykle číselné skóre nebo hodnota (např. snímky za sekundu, počet operací za sekundu), která umožňuje přímé porovnání dvou či více subjektů.
V závislosti na tom, co testujeme, dělíme benchmarking do několika kategorií:
Zaměřuje se na čistý výkon fyzických komponent.
Testuje, jak efektivně běží konkrétní aplikace na daném systému. Může jít o rychlost kompilace kódu, čas exportu videa nebo odezvu databáze.
Měření parametrů sítě, jako je šířka pásma, latence a ztrátovost paketů.
Srovnávání výkonu různých cloudových poskytovatelů (např. AWS vs. Azure) při provádění stejných úloh.
Aby byl benchmark validní, musí splňovat tři základní podmínky:
| Typ | Popis | Výhody | Nevýhody |
|---|---|---|---|
| Syntetické | Uměle vytvořené programy (např. 3DMark, Geekbench). | Snadné srovnání, rychlé provedení. | Nemusí odrážet výkon v reálných aplikacích. |
| Reálné | Použití skutečných aplikací (např. čas renderování v Blenderu). | Přesný obraz toho, co uživatel pocítí. | Hůře se standardizují a opakují. |
V historii IT došlo k několika případům, kdy výrobci (zejména u mobilních telefonů nebo procesorů) optimalizovali hardware tak, aby rozpoznal spuštění benchmarku a dočasně zvýšil výkon nad bezpečné limity, což vede ke zkresleným výsledkům.
Zlaté pravidlo: Jeden benchmark nikdy neřekne celý příběh. Pro objektivní posouzení je nutné kombinovat výsledky z několika různých testů.
Související pojmy: Latence, Bandwidth, CPU, GPU, IOPS, Overclocking.