„Hack“ zvyšuje výkon procesorů AMD o desítky procent. Ale jen v SuperPi

23. 6. 2013

Sdílet

 Autor: Redakce

Je obecně známo, že procesory AMD na tom s výkonem v jednovláknových aplikacích nejsou moc dobře. Jedním z testů, který je toho důkazem, je SuperPi. Finský overclocker Roger Tolppola vystupující pod přezdívkou The Stilt ale zjistil, že čipy architektury Bulldozer a Piledriver brzdí i něco jiného.

Během experimentů a testování původně za jiným účelem The Stilt objevil několik deaktivovaných registrů a jednotku v procesoru jménem NRAC. „Je to buď oprava nějaké chyby (errata) nebo nepodařená oprava chyby. Pokud je to programátorská chyba, kterou si nikdo za poslední dva roky nevšiml, z toho bych byl hodně smutný,“ napsal The Stilt na fórum XtremeSystems.

K čemu blok NRAC (přítomný a aktivní už u předprodukčních vzorků čipu Zambezi) slouží, a proč AMD deaktivovalo oněch několik registrů, není známo a dostupná dokumentace se tomuto tématu vůbec nevěnuje. Jisté však je, že když se registry zapnou a NRAC naopak deaktivuje – což můžete na vlastní riziko vyzkoušet s utilitou Bulldozer Conditioner – výkon v benchmarku SuperPi vzroste prý až o 30 %. Čím delší výpočet (více desetinných míst), tím větší rozdíl je, což ověřili i redaktoři serveru X-bit labs na AMD A10-6800K.

V jiných testech se však zrychlení neprojeví. SuperPi je totiž hodně specifický test s velmi pochybnou vypovídací hodnotou pro reálný výkon. Ludolfovo číslo totiž počítá skrz zastaralé floating-point instrukce x87, které dnes prakticky žádné programy nepoužívají – s instrukcemi SSE lze totiž docílit téhož a jsou nepoměrně rychlejší.

 

Existují tak všehovšudy přibližně dva scénáře, kdy instrukce x87 použijete. Buď jste autor zátěžového testu SuperPi a chcete, aby aplikace potrápila i paměťový subsystém počítače a efektivita výpočtu je vedlejší, nebo jste Nvidia a potřebujete zkriplit výkon PhysXu na procesorech (tři roky staré zjištění už ale nemusí platit – troufne si to někdo otestovat?). Teoreticky by ze zvýšení výkonu v x87 mohly profitovat některé aplikace pro Linux zkompilované pro staré 32bitové procesory (balíčky označené i386 a podobně). Alternativy sestavené pro architekturu AMD64 budou ale s největší pravděpodobností beztak rychlejší.

ICTS24

Právě zastaralost a vzácnost instrukcí x87 mohla být důvodem, proč se AMD výkonem v nich nezabývalo. Alternativně by procesory po Stiltově tuningu mohly být náchylné k nějakým chybám, na které zatím nikdo nepřišel.

Zdroj: HWbot.org, techPowerUp, X-bit labs