Co je mikrooperace?

Počítače jsou naprogramovány pomocí programovacích jazyků. Tyto jazyky jsou obecně čitelné pro člověka a umožňují programátorovi konfigurovat, co počítač dělá. Tento kód je pak potřeba zkompilovat do počítačových instrukcí. Přesné podrobnosti se liší v závislosti na architektuře Instruction Set Architecture nebo ISA, které zamýšlený počítač používá. To je důvod, proč existují různé odkazy ke stažení pro procesory x86 od Intel a AMD a procesory ARM používané v moderních zařízeních Apple. ISA x86 a ARM se liší; software musí být zkompilován samostatně. Jak Apple ukázal, je možné vytvořit efektní překladovou vrstvu; prostě to není běžné.

Možná si myslíte, že CPU vidí instrukce, které jsou mu předloženy, a pak je provádí v pořadí. Existuje mnoho triků, které moderní CPU dělají, včetně spouštění mimo pořadí, které umožňuje CPU měnit pořadí věcí za chodu, aby se optimalizoval výkon. Chytrou částí, která je však docela dobře skrytá, jsou mikrooperace.

Potrubí k mikroprovozu

Jednotlivé instrukce ve strojovém kódu lze nazvat instrukcemi nebo operacemi; termíny jsou zaměnitelné. Jednou z potíží s Complex Instruction Set Computing nebo architekturami CISC, jako je x86, je to, že instrukce se mohou lišit v délce. To konkrétně odkazuje na to, kolik dat potřebují k reprezentaci. V x86 může být instrukce krátká až jeden bajt nebo až 15. Porovnejte to se standardní architekturou RISC-V používanou moderními procesory ARM se 4bajtovými instrukcemi s pevnou délkou.

Tip: RISC je zkratka pro Reduced Instruction Set Computing.

Jedním z důsledků tohoto rozdílu ve struktuře je to, že RISC architektury mají tendenci být mnohem snazší efektivně propojit. Každá instrukce má několik fází své činnosti, které využívají jiný hardware. Pipelining spouští více instrukcí v těchto fázích současně, přičemž v každé fázi je přesně jedna instrukce. Pipelining nabízí značné zvýšení výkonu při efektivním použití. Jedním z klíčových faktorů efektivního využití potrubí je zajistit, aby se každý stupeň používal současně. Díky tomu vše plynule běží potrubím.

Vzhledem k tomu, že všechny instrukce mají stejnou délku, instrukce RISC obvykle vyžadují stejnou dobu zpracování jako každá jiná. V CISC, jako je x86, však některé instrukce mohou trvat mnohem déle než jiné. To vytváří velký problém s efektivitou při zřetězení CPU. Pokaždé, když přijde delší instrukce, uvízne v potrubí na delší dobu. To způsobí bublinu a zadrží vše za ní. Řešením jsou mikrooperace.

Efektivní mikroprovozy

Namísto toho, aby byla každá instrukce považována za jedinou úroveň operace, kterou lze provést, zavádějí mikrooperace novou nižší vrstvu. Každá operace může být rozdělena do mnoha mikrooperací. Pečlivým navržením mikrooperací můžete optimalizovat potrubí.

Zajímavé je, že to nabízí novou výhodu. Zatímco celkový ISA, řekněme x86, zůstává stejný mezi mnoha různými generacemi CPU, mikrooperace mohou být navrženy na míru pro každou generaci hardwaru. To lze provést s hlubokým pochopením toho, kolik výkonu lze vytlačit z každého stupně potrubí pro každou mikrooperaci.

V počátcích mikrooperací to byla pevně připojená připojení, která aktivovala nebo deaktivovala konkrétní funkce v závislosti na mikrooperaci. V moderním designu CPU je do vyrovnávací paměti pro změnu pořadí přidána mikrooperace. Je to právě tato vyrovnávací paměť, kterou může CPU provádět přeskupení orientované na efektivitu. Jsou to mikrooperace, ne skutečné instrukce, které jsou přeskupeny.

V některých případech, zejména u pokročilejších CPU, lze udělat ještě více. Mikrooperační fúze je tam, kde je více mikrooperací kombinováno do jedné. Například sekvence jednoduchých mikrooperací může provádět akci, kterou lze provést pomocí jediné, složitější instrukce. Snížením počtu prováděných mikrooperací může být proces dokončen rychleji. To také snižuje počet změn stavu a snižuje spotřebu energie. Úplné instrukce mohou být dokonce analyzovány a kombinovány do efektivnějších mikrooperačních struktur.

Některé procesory využívají mezipaměť mikro operací. Zde jsou uloženy plně dekódované mikrooperační sekvence, které mohou být znovu použity, pokud jsou znovu volány. Velikost takové mezipaměti se obvykle určuje podle počtu mikrooperací, které může uložit, spíše než podle kapacity bajtů.

Závěr

Mikrooperace je implementace instrukční sady specifická pro CPU. Instrukce jsou dekódovány do řady mikrooperací. Tyto mikrooperace se výrazně snáze a efektivněji propojují a tím lépe využívají zdroje CPU. Protože mikrooperace nejsou pevně zakódovány do instrukční sady, lze je přizpůsobit specifickému hardwaru každé generace CPU. Mikrooperace se často zkracují na mikrooperace nebo dokonce μops. To používá řecké písmeno μ ( vyslovuje se Mu ), symbol SI pro mikro předponu.


Leave a Comment

Základy 3D tisku: Kontrolní seznam údržby, který si musíte přečíst

Základy 3D tisku: Kontrolní seznam údržby, který si musíte přečíst

Udržování vašeho vybavení v dobrém stavu je nezbytné. Zde jsou některé užitečné tipy, jak udržet váš 3D tiskárnu v nejlepším stavu.

Jak nainstalovat SSD na desktop a notebooky

Jak nainstalovat SSD na desktop a notebooky

Právě jste zakoupili SSD a chtěli byste upgradovat interní úložiště svého počítače, ale nevíte, jak SSD nainstalovat? Přečtěte si tento článek nyní!

Canon Pixma MG5220: Skenování bez inkoustu

Canon Pixma MG5220: Skenování bez inkoustu

Jak povolit skenování na Canon Pixma MG5220, když dojde inkoust.

Jak najít IP adresu tiskárny

Jak najít IP adresu tiskárny

Máte problémy s nalezením IP adresy tiskárny? Ukážeme vám, jak ji najít.

Jak používat AirPods s telefony Samsung

Jak používat AirPods s telefony Samsung

Pokud si nejste jisti, zda koupit AirPods pro váš telefon Samsung, tento průvodce vám může pomoci. Nejvíce evidentní otázka je, zda jsou obě zařízení kompatibilní, a odpověď je: Ano, jsou!

Co dělat, když se Powerbeats Pro nenabíjí v pouzdře

Co dělat, když se Powerbeats Pro nenabíjí v pouzdře

Pokud se vaše Powerbeats Pro nenabíjí, zkuste jiný zdroj napájení a vyčistěte si sluchátka. Nechte pouzdro otevřené během nabíjení sluchátek.

Co je tepelné škrcení?

Co je tepelné škrcení?

Tepelné škrcení je ochranný mechanismus CPU, který snižuje výkon při vysokých teplotách, aby se zabránilo poškození.

Jak provozovat dva počítače s jedním monitorem

Jak provozovat dva počítače s jedním monitorem

Naučte se, jak efektivně používat jeden monitor pro dva počítače. Zjistěte, jaké jsou nejlepší možnosti připojení a užitečné tipy pro úsporu prostoru.

Jak vytvořit vlastní Gify v Whatsapp

Jak vytvořit vlastní Gify v Whatsapp

Jak vytvořit vlastní GIFy v aplikaci WhatsApp a sdílet je snadno s přáteli. Zjistěte, jak na to!

Jak vypnout zvuk spouště fotoaparátu – Galaxy S 21 Plus

Jak vypnout zvuk spouště fotoaparátu – Galaxy S 21 Plus

Foťte jako ninja a ztište zvuk závěrky na Galaxy S21 Plus. Podívejte se také, co můžete dělat, pokud tuto možnost nemáte.