Newsgroup: it.comp.os.linux.sys
Titolo: Flag Pentium 4 HT

Ciao a tutti.
al momento ho esportato le variabili per il gcc per il pentium 4.
però ho il pentium 4 HT che simula/emula il dual processor (tantoche nel
kernl è abilitata la funzione SMP)
che flag uso per il gcc per abilitare tale opzione??
grazie
ciao!
-- 
Powered by Slackware Linux 9.1
Linux Registered User #351107

 
Programmare usando thread sarebbe un buon inizio :), tieni presente che la
cache delle istruzioni sul processore e' piccola per cui da mie esperienze
personali ti consiglio di fare piccoli thread (in termini di righe di
codice).
Ciao
                Luca
-- 
<<>><<>><<>><<>><<>><<>><<<>><<>><<>><<
Luca Paredi
Computing technical supporter              
Universita' degli Studi dell'Insubria  
<<>><<>><<>><<>><<>><<>><<<>><<>><<>><<

 che flag uso per il gcc per abilitare tale opzione??
nessuna oltra a dirgli che è un pentium4. L'ht è gestito dal kernel,
devi avere un kernel che supporta l'smp

 codice).
Correggetemi se sbaglio (in Linux mi pare i thread fossero implementati in
modo particolare), ma converrebbe programmare usando processi e non
thread, perche` questi sono parte dello stesso processo, quindi vengono
elaborati sempre dalla stessa CPU senza sfruttare la seconda.
Bye.

 ha scritto:

Sotto linux la differenza tra thread e processo e` minima, in pratica
l'unica differenza e` che i thread condividono lo stesso address space.
E in ogni caso che siano thread o processi lo scheduler e` in grado di
piazzarli su CPU (logiche o fisiche) diverse.
Luca
-- 
Home: 
http://kronoz.cjb.net
42

 elaborati sempre dalla stessa CPU senza sfruttare la seconda.
questo è falso. vatti a vedere i contributi di molinar sulla gestione 
dei thread che sono state inserite nei kernel 2.5

 Bye.
Beh se vuoi sfruttare davvero l'HT e' consigliabile usare i thread. ( lo
dice anche il nome non trovi ? H. Threading <--> thread).
La seconda cpu che vedi non e' una cpu vera.


 dice anche il nome non trovi ? H. Threading <--> thread).
mi sembra una tesi abbastanza fantasiosa. Anche perché se così fosse 
forse allora tutti i sistemi operativi dovrebbero implementare i thread 
nello stesso modo, cosa che non succede.

 nello stesso modo, cosa che non succede.
Senza voler far flame ma hai fatto delle prove ? intendo hai scritto due
programmi che fanno lo stessa cosa uno scalare e uno con i thread  e visto
se c'e' un incremento/decremento di prestazioni ?
Io ho fatto una prova con un problema parallelo per antonomasia: il calcolo
di pi-greco con metodo montecarlo ed effettivamente usando due tread era
piu' veloce.
Posso avere il tuo codice ?
Sono interessato perche' io mi occupo di hpc e mi piacerebbe vedere se sono
davvero una cozza di programmatore :).
Ciao
        Luca
P.S.
ovviamente con i processori con supporto HT.


 se c'e' un incremento/decremento di prestazioni ?
dipende. Se hai un programma sfigato che fa molti branch alla fine hai 
un decremento delle prestazioni perché quando svuoti la lunga pipeline 
dello xeon non rallenti un solo processo ma due. E questo si verifica 
sia se usi thread che task.
Ho fatto delle prove su un dual xeon e credo che con il 2.4.26 
disabiliterò le cpu logiche al boot (so che si potrebbe fare da bios, ma 
sul bios della macchina su cui ho smanettato non c'è o non trovo 
l'opzione), visto che hanno integrato la patch necessaria.