Boost na jednom jádru CPU: Jak to funguje?

Návrháři procesorů přicházejí s novými triky, jak ze svých nových architektur vytěžit maximum, jedním z nich je zvýšení taktu jednoho jádra nad společnou hranici celé procesor. Tomu se říká jednojádrová podpora a v tomto příspěvku vám vysvětlíme, z čeho se skládá a jaké výhody přináší vašim počítačům.

Největší veterán si bude pamatovat roky, ve kterých byly procesory jednojádrové a nemohly běžet více než jedno vlákno, to byla doba, kdy závod byl o největší množství MHz, první GHz později, dokud nemohli jít více na fyzickou omezení a musel přejít na vícejádrový.

Zvyšte na jednom jádru CPU

Funkce, kterou uvidíme v nových procesorech, je jednojádrový boost, který spočívá v tom, že jedno jádro vícejádrového procesoru dosahuje vyšší rychlosti hodin než boost pro několik jader, a to vše díky schopnosti odpojte zbývající jádra procesoru, snižte jejich taktovací frekvenci nebo způsobte, že nebudou schopni dosáhnout urychlovací rychlosti.

Jednojádrový boost, přerozdělování výkonu CPU

Zvyšte sólo núcleo

Rychlost hodin, které procesor může dosáhnout, závisí na množství energie, které má k dispozici, ale CPU mají pasti pro lepší optimalizaci spotřeby energie, ačkoli většina je založena na schopnosti odpojit nepoužívané části procesoru vždy, aby nespotřebovávaly energii, zatímco nicnedělání.

Na úrovni jádra má mnoho návrhů, které mohou pracovat s více vlákny, tendenci provádět určité instrukce s využitím duplikace jednotky určitých částí řídicí jednotky, aby se zabránilo sporům a zvýšení výkonu, ale u jiných návrhů tomu tak není a deaktivuje SMT nebo Hyperthreading za účelem zvýšení rychlosti hodin.

Za stejných principů je možné úplně deaktivovat všechna jádra kromě jednoho a dokonce z něj odstranit SMT nebo Hypethreading tak, aby rychlost jednoho jádra byla co nejvyšší.

Co to přidává k celkovému výkonu procesoru?

Komunikace CPU

Existuje mnoho standardů, které měří výkon jednoho jádra CPU, tyto standardy se nepoužívají k vyhodnocení absolutního výkonu CPU a nevycházejí ani z realistických scénářů. Prostě nám slouží srovnávacím způsobem, abychom věděli, jak se jedna architektura vyvinula ve vztahu k jiné, a porovnávají jádro za jádrem.

U programů, které existují na trhu, protože po celá léta, kdy mají spotřebitelé k dispozici několik jader, je většina programů navržena tak, aby většinu času pracovala souběžně, ale je třeba vzít v úvahu, že programy mají část, kterou lze paralelně a jiný, který nemůže.

Ley Amdahl

Pokud věnujeme pozornost Amdahlovu zákonu, doba provádění každé z paralelizovatelných částí kódu se sníží přidáním dalších jader, ale existuje část kódu, která je sériová, a proto ji nelze provést paralelně, ta část programy závisí na rychlosti jednoho jádra.

Pokud vypneme všechna jádra kromě jednoho, pak bude negativně ovlivněn kód, který pracuje paralelně, ale pokud u všech jader zachováme základní rychlost a v jednom z nich použijeme podporu nebo nepatrnou výhodu, pak část části kód, který běží sériově v rámci programu, bude zrychlen, čímž se zvýší výkon systému.

Je jednojádrový boost stejný jako big.LITTLE?

velký.MALÝ diagram

Ačkoli nám to může připomínat koncept big.LITTLE určitých nízkoenergetických jader, není to stejné, protože v tomto konceptu je myšlenka použít jádro s nízkým výkonem k provádění určitých instrukcí, které jsou dostatečně jednoduché na to, aby nemožné to optimalizovat. z hlediska spotřeby v jádře, proto se ke snížení spotřeby energie doporučuje použít jednodušší jádro.

V „big.LITTLE“ se rychlost hodin jader nezvyšuje ani nesnižuje, ale spíše se mění jádro, které provádí uvedený program nebo část programu, takže v procesoru s tímto typem designu máme heterogenní tvorbu jader, zatímco zvýšení rychlosti soustředěné na jedno jádro může nastat v homogenních i heterogenních sadách jader.

Vzhledem k tomu, že rychlost hodin je přímo svázána s napětím ve spotřebě energie, můžeme bezpečně dojít k závěru, že zvýšení rychlosti hodin jádra na rozdíl od „bit.LITTLE“ není způsob, jak ušetřit spotřebu energie procesoru.