Laicky řečeno - jedno jádro procesoru může v každém okamžiku plně(!) obsluhovat pouze jedno vlákno procesu. To, že ve Windows vidíte zdánlivě běh mnoha vláken, je dáno tím, že se ta vlákna o procesorová jádra rychle střídají, říká se tomu přepínání kontextu. Tzv, chvíli jádro CPU pracuje s jedním vláknem, pak práci dočasně ukončí a uloží do paměti jeho stav a načte stav jiného vlákna a chvíli pracuje s ním. To jak se přepíná kontext a kterému vláknu bude přidělen procesorový čas, obstarává operační systém a je to poměrně hodně sofistikovaný mechanismus, který se liší u různých operačních systémů.U hyperthreadingu je pak výhoda, že (zjednodušeně řečeno) každé jádro má dvě vyrovnávací paměti, takže při přepínání kontextu není nutné čekat na úklid jednoho vlákna, prostě se začne používat druhá vyrovnávací paměť, na které byl už kontext změněn, nebo se kontext přepíná jenom přepínáním cache. Zdánlivě tak procesor zpracovává dvě vlákně najednou (proto se říká, čtyři jádra a osm vláken). Ono to přepínání kontextu je totiž překvapivě poměrně pomalé i vzhledem k přidělenému procesorovému času. I proto se používají víceúrovňové vyrovnávací paměti, aby procesor (a neplatí to jen pro procesory) dělal co nejvíce věcí najednou a co nejméně se čekalo.