====== SMT (Simultaneous Multithreading) ====== **SMT** (Simultaneous Multithreading) je technologie, která umožňuje jednomu fyzickému jádru procesoru vykonávat více instrukčních vláken (**threads**) současně. Cílem je zvýšit celkovou efektivitu CPU tím, že se využijí jeho volné výpočetní kapacity, které by jinak během cyklu zahálely. V komerčním světě se nejčastěji setkáváme s implementací od společnosti Intel pod názvem **Hyper-Threading**. ===== Jak SMT funguje? ===== Moderní jádro procesoru je velmi složité a obsahuje mnoho specializovaných jednotek (pro celá čísla, pro desetinná čísla, pro přístup do paměti). Málokterý program dokáže v jeden okamžik využít úplně všechny tyto jednotky. * **Bez SMT:** Pokud program čeká na data z paměti, jádro "stojí" a čeká. * **S SMT:** Zatímco první vlákno čeká na data, jádro využije své volné jednotky k práci na druhém vlákně. Z pohledu operačního systému se jedno fyzické jádro s SMT jeví jako **dvě logická jádra**. ===== Výhody a přínosy ===== * **Zvýšení výkonu:** V optimalizovaných aplikacích (střih videa, renderování, kompilace kódu) může SMT zvýšit výkon o **15–30 %**. * **Lepší odezva systému:** Multitasking je plynulejší, protože systém má k dispozici více logických procesorů pro rozdělení úloh. * **Efektivita:** SMT přidává na čip jen minimum fyzických tranzistorů, ale přináší výrazný nárůst propustnosti dat. ===== Omezení a nevýhody ===== Je důležité pochopit, že SMT **nenahrazuje skutečná fyzická jádra**: * Pokud obě vlákna vyžadují stejnou část procesoru (např. obě chtějí provádět těžké matematické výpočty), musí na sebe stejně čekat. * V některých specifických úlohách (např. starší hry) může SMT výkon mírně snížit kvůli režii spojené se správou vláken. * **Bezpečnost:** Technologie SMT byla v minulosti zdrojem bezpečnostních zranitelností (např. *Spectre* nebo *L1TF*), které umožňovaly jednomu vláknu "špehovat" data druhého vlákna ve stejné cache. ===== Terminologie u výrobců ===== ^ Výrobce ^ Obchodní název ^ Poznámka ^ | **Intel** | **Hyper-Threading (HT)** | Uvedeno již v roce 2002 u procesorů Pentium 4. | | **AMD** | **SMT** | Představeno u architektury Zen (procesory Ryzen). | | **Apple** | Nepoužívá | Apple u svých čipů řady M sází na vysoký počet fyzických jader bez SMT. | --- //Související pojmy: [[klicove_parametry_cpu|Klíčové parametry CPU]], [[architektury_cpu|Architektury CPU]], [[hlavni_vyrobci_cpu|Hlavní výrobci CPU]]//