[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Hyper-Threading [ERA: atom 330]



Ciao!

> Come promesso ecco un po' di test su atom 330 con e senza HT.
>
> devo dire che se sono attendibili i risultati che ho ottenuto l'ht
> migliora di molto anche le prestazioni.
> anche del 30% come scritto sopra.
>
> Ho usato hyperpi come consigliatomi e Everest (come sconsigliatomi)

Se leggo bene, i risultati di hyperpi sono abbastanza lontani dal 30%!

Io avevo fatto dei test... almeno 7-8 anni or sono, l'impressione era che
dipendesse molto dall'uso. Allora amminisravo macchine che venivano
sfruttate per processi di calcolo piuttosto pesanti (roba che impiegava il
100% della CPU per ore), e di fatto avevo verificato che due processi
lancati in parallelo grazie a HT impiegavano _piu'_ tempo a terminare che
se lanciati in sequenza.
Questo e` facilmente spiegabile se ci si trova ad avere processi
estremamente ottimizzati, che sfruttano a pieno le pipeline del
processore, senza lasciar nulla o quasi di inutilizzato... che di fatto si
trovano a competere tra loro, col risultato di vedere alcune risorse (vedi
ad esempio la cache) dimezzate.
Diverso il discorso se i programmi non sono super-ottimizzati, e
soprattutto se fate girare due processi molto diversi (uno che magari
sfrutta a pieno la FPU, l'altro che non la usa affatto) o magari un
processo di calcolo e alcuni programmi interattivi... in questo caso HT
puo' permettere di usare tutte le risorse che altrimenti potrebbero essere
sottoutilizzate.

> Proverò phoronix in futuro anche per capire se l'ht funzia solo sotto
> microsoft o che cosa.

Sia chiaro, quanto detto sopra l'ho sempre sperimentato con Linux! Il
kernel ha delle strutture dati grazie alle quali sa quali CPU sono
correlate in che modo. Mettiamo di avere un sistema biprocessore, con
processori dual core e con HT attivato: vedremo 8 processori, ma non sono
mica tutti uguali! Il kernel Linux sa bene che se deve far girare due
processi, li metterà su processori diversi, se aumentano sfrutterà i core,
e solo in ultimo mettera` processi in concorrenza sullo stesso core con
HT. Il kernel sa anche che cambiare processore ad un programma costa,
mentre cambiarlo di "processore virtuale" nello stesso core, no...
Insomma, tranquillo... Linux sa benissimo usare ht.

> hyperpi
>
> no ht
> 2° 8m 08.375

> si ht
> 2° 7m 50.422

Ecco, hai esattamente mostrato il calcolo pesante con programma
ottimizzato: che da` miglioramento marginale...

Ciau,
m

-- 
http://bodrato.it/


Reply to: