Hyperthreading & P4 Xeon

Petr Balas petr-news na balas.cz
Čtvrtek Leden 16 10:29:32 CET 2003


Matus fantomas Uhlar wrote:

> Milan Kerslager <milan.kerslager na pslib.cz> wrote:
> -> Pokusim se to vysvetlit (cesky).
> 
> A ja sa to pokusim vysvetlit inac (slovensky) :)
> 
> -> Finta HT je v tom, ze se vyuziji vicenasobne vyrobene komponenty v CPU.
> -> CPU muze mit treba 2 FPU (matematicky koprocesor), aby vyuzil
> -> superskalarity (tj. jsou-li za sebou 2 matematicke instrukce, ktere
> jsou -> na sobe nezavisle [druha nepouzije pri vypoctu vystup te prvni],
> muze je -> zpracovat procesor najednou, pripadne lze provadet instrukce
> -> spekulativne dopredu).
> 
> CPU nepotrebuje ani viac rovnakych komponentov - aj stare rozdelenie ALU +
> FPU moze sposobyt ze sa chvilu flaka ALU chvilu CPU. Od cias pentia sa
> procesor snazil tuto neefektivnost riesit tak ze dokazal vykonavat viac
> instrukcii naraz =- potrebovalo to vsak optimalizujuci kompilator ktory
> poprehadzoval instrukcie tym spravnym sposobom.
> 
> HT ide este dalej - nevykonavaju sa naraz viacere instrukcie jedneho
> procesu ale instrukcie viacerych procesov alebo threadov a teda sa
> procesor sprava akoby to boli dva CPU. Skratka, ide tu o maximalne
> vyuzitie komponmentov procesora, ku ktoremu sa pristupuje inac.
> 
> Osobne som ohlasom HT pesimista. Nestaci uz len kompilator aby spravne
> poprehadzoval instrukcie ale musi uz OS spravne detekovat ktory z procesov
> pouziva ktore instrukcie na to, aby vedel procesy spravne rozhodit.

IMHO se nedetekuji instrukce ale akorat se pri preplanovani threadu
nepreferuje jen procesor, na kterem dany thread pred chvili bezel ale
i vsichni jeho "sourozenci (v ramci tehoz fyzickeho procesoru) - je
sance, ze potrebna data uz budou v jeho cache, ktera je pro vsechny
logicke procesory na jednom fyzickem spolecna.

Prijde mi, ze si vetsina lidi neuvedomuje, jak zoufale pomala je
hlavni pamet v porovnani s procesorem.

-- 
Petr Balas (petr at balas dot cz) 


Další informace o konferenci Linux