Diit.cz - Novinky a informace o hardware, software a internetu

Rozkládání zátěže kódování x264 mezi jádra a vlákna: Core Parking ON, WinRAR bez Core Parkingu

Procesory v testu: AMD FX-8150, AMD Phenom II X6 1100T, AMD A8-3850, Intel Core i7 870 (ES), Intel Core i7 2600K, Intel Pentium 4 HT 3,6 GHz, Intel Pentium 4 EE HT 3,46 GHz
Naše recenze AMD Bulldozeru vás zaujala natolik, že se kolem ní rozhořela poměrně divoká diskuze, kterou z nemalé části obšťastnil jistý troll, o kterém nevíme, zda je skutečně tak zapálený pro AMD, nebo se snaží vědomě dělat AMD medvědí službu. Jinak byla ale v diskuzi řada přínosných podnětů, na které jsme se rozhodli zareagovat tím, co jsme pracovně nazvali „Service Pack 1 recenze Bulldozeru“ a co už tomuto článku zůstalo. Pojďme se tedy podívat na některá další měření a srovnání s jinými procesory, některými i poměrně starými, jako je třeba desktopová verze Xeonu Gallatin v podobě 3,46GHz Pentia 4 Extreme Edition HT…

Nyní situaci zkomplikujeme, přesněji řečeno uvedeme do normálu: necháme zapnutý Core Parking, což je výchozí stav. Pojďme rovnou na grafy zátěže, bude to veselé. Probíhá úplně stejný skript, stejná úloha, jen do toho začne kecat Core Parking.

Takto to vypadá ve Windows 8 s Bulldozerem na všechna jádra (Windows 7 nemá smysl ukazovat, tam to s Bulldozerem nefunguje):

Zátěž jader: Bulldozer, Win8, Core Parking ON, 11111111 Zátěž jader: Bulldozer, Win8, Core Parking OFF, 11111111
Bulldozer, zátěž všech jader, Windows 8, vlevo CoreParking ON, vpravo OFF

Jak vidíte, žádná změna. Teď vám ukážeme druhou a třetí instanci. (měli byste očekávat zátěž ve stylu 10101010 a 11110000):

Zátěž jader: Bulldozer, Win8, Core Parking ON, 10101010 Zátěž jader: Bulldozer, Win8, Core Parking ON, 11110000
Bulldozer, Windows 8, CoreParking ON, vlevo zátěž 10101010, vpravo 11110000

Co se stalo? I přesto, že jsme nastavili spřažení na 10101010, systém z vybraných jader dvě zaparkoval a udělal z toho 10100000. Zdá se vám to divné? Ano, takhle divně opravdu Core Parking funguje. Při třetí instanci se systém jakoby pokusil zaparkovat stejné moduly, ale protože první dva už byly zatížené a třetí potřeboval „pro strýčka Příhodu“, zaparkoval jen čtvrtý. Každopádně se systém v této situaci zachoval v podstatě dle očekávání.

Jestli to doteď nebylo složité, nyní to složité být začne. Přejdeme ke Core i7. Jak totiž už víte, Core Parking se chová ke Core i7 jinak ve Windows 7 a jinak ve Windows 8. Druhá instance tedy vypadá na Lynnfieldu (na Sandy Bridge je to stejné) takto:

Zátěž jader: Lynnfield, Win7, Core Parking ON, 10101010 Zátěž jader: Lynnfield, Win8, Core Parking ON, 10101010
Core i7, Core Parking ON, zátěž 10101010, vlevo Windows 7, vpravo Windows 8

Nyní nám to komplikuje už i operační systém, resp. rozdíl mezi Windows 7 a Preview verzí Windows 8. Zatímco ve Windows 7 to zafungovalo dle očekávání (a poněkud zbytečně byla zaparkována dvě Hyper-Threadingová vlákna), Windows 8 k procesoru přistoupily stejně jako k Bulldozeru (tedy z našeho pohledu logičtěji) a systém zaparkoval dvě jádra (v průběhu práce došlo k přeparkování, ale počet pracujících a zaparkovaných jader se nezměnil, jen si dvě jádra vyměnila roli). Z toho celkem logicky vyplývá, že ve Windows 7 bude tato činnost rychlejší, uvidíme to za chvilku ve výsledcích.

Ještě se podívejme na třetí instanci, tedy 11110000:

Zátěž jader: Lynnfield, Win7, Core Parking ON, 11110000 Zátěž jader: Lynnfield, Win8, Core Parking ON, 11110000
Core i7, Core Parking ON, zátěž 11110000 vlevo Windows 7, vpravo Windows 8

Možná jste to po pochopení dosavadního průběhu už očekávali: situace se obrátila. Windows 7 zaparkovaly všechna HT vlákna bez ohledu na to, že první dvě jsme chtěli využít, naproti tomu Windows 8 to udělaly správně (občasné špičky na jiném jádru a propady v pracujících jádrech berte s rezervou, Windows 8 to takhle divně občas kreslí, přestože s realitou tyto výkyvy moc společného nemají - však to není ještě ani betaverze).

Zbývá vše shrnout do skriptgrafu a nakreslit výsledek:

Protože je toho v grafu hodně, rozebereme si to v bodech:

  • Windows 8 při snaze zatížit jádra bez vlivu Hyper-Threadingu (moduly bez vlivu druhých jader) značně komplikují situaci a výkon se propadá, a to jak u Bulldozeru, tak u Core i7.
  • Podobný, ale shodou okolností ne tak markantní problém způsobují Windows 7 při snaze zatížit první dvě celá jádra včetně HT (u AMD všechna jádra prvních dvou modulů).
  • Pokud máte zapnutý Core Parking, pak se ani na Windows 7, ani na Windows 8 (zatím) nemůžete spolehnout na to, že systém bude dělat, co očekáváte, pokud rozdělíte práci vícevláknových úloh ručně mezi jádra tak, jak sami uznáte za vhodné.

Core Parking je prostě divná věc, bohužel to, že je ve výchozím nastavení zapnut, z něj dělá element, se kterým musíme při recenzování počítat. A faktem je, že jsme s tím v minulé recenzi Bulldozeru v jedné aplikaci nepočítali:

WinRAR 4.10 beta 1

To je právě ten typ aplikace, ve které Bulldozer exceloval a porazil i Core i7. Proč? Protože jsme měli zapnutý Core Parking. Poté, co jsme ho vypnuli a přetestovali pouze s Core i7 (přidali jsme také další procesory), to vypadá takto (vše ve Windows 7):

Bulldozer je definitivně poražen (v tomto testu dokonce i procesorem Core i7 870), můžeme jít domů.

WIFT "WIFT" WIFT

Bývalý dlouholetý redaktor internetového magazínu CDR-Server / Deep in IT, který se věnoval psaní článků o IT a souvisejících věcech téměř od založení CD-R serveru. Od roku 2014 už psaní článků fakticky pověsil na hřebík.

více článků, blogů a informací o autorovi

Diskuse ke článku Test mikroarchitektury AMD Bulldozer a vliv Core Parkingu ve Windows 7 i Windows 8

Pondělí, 21 Listopad 2011 - 08:45 | Hirogen | Tak jelikož stále nic nepřišlo, začínám...
Čtvrtek, 17 Listopad 2011 - 19:23 | Hirogen | Tak já se také přidávám, neb by mne zajímalo, co...
Čtvrtek, 17 Listopad 2011 - 16:59 | TESKATLIPOKA | Ja som tiez zvedavy na vysledky. e-mail: KRONOSFX...
Čtvrtek, 17 Listopad 2011 - 16:41 | radax.cz | Můj mail by měl být viditelný registrovaným, ale...
Čtvrtek, 17 Listopad 2011 - 14:02 | MiMo007 | Myslim ze prave proto se o tom diskutuje, aby to...
Čtvrtek, 17 Listopad 2011 - 12:23 | terrorist | prijde mi legracni, jak nekteri amd fanbois...
Čtvrtek, 17 Listopad 2011 - 09:29 | MiMo007 | Tomu nerozumim. Ty tvrdis, ze BIOS nastavi klidne...
Čtvrtek, 17 Listopad 2011 - 00:46 | Pavel Tongel | Jeste jsem zapomnel,tem nevericim co chteji videt...
Čtvrtek, 17 Listopad 2011 - 00:43 | Pavel Tongel | Myslim si,ze na pevno to vyply v biosu nemel....
Středa, 16 Listopad 2011 - 17:44 | MiMo007 | A mel jsi vypnuty Turbo a napevno nastavene...

Zobrazit diskusi