|
|
|
![]() |
|
Strumenti |
![]() |
#21 |
Bannato
Iscritto dal: Jul 2002
Messaggi: 464
|
Come fa ad avere il 500% invece di 200%???
proprio perche utilizza quella parte di processore, registri, unita' o chiamatele come vi pare che in quel ciclo di clock non usa... (potenza sprecata o latente e lavora e che non lavora, mangia sempre come un bue) Ricordiamoci che il nostro facchino... ha due braccia ma normalmente ne usa solo una... ma nel frattempo cammina, invece di ritornare al piano terra per ricevere altri ordini.... gli squilla il cellulare col capo che gli dice... quanto torni giu passa prima al 3° piano e intanto pensa a quanto fa 2+2 e riferisci il risultato al capo del piano, intanto lui ci va ci pensa durante il tragitto... da la risposta esatta che era 4 al capo chegli ordina di riandare al 10 per portare un documento e di aggiungere 1 al risultato di prima... porta sto documento al piano 10 e gli dice... il risultato di prima piu quell'altro e' 5... Quando ritorna al piano terra il facchino, ha fatto piu cose, perche per ogni ordine non e' dovuto ritornare al piano terra e poi risalire per poi riscendere perche dal ventesimo piano ci deve passare per forza ![]() quando hai due cpu.... le due cpu si dividono i compiti... mezza io mezza tu... ma sempre in modo non efficente... cioe non sono sfuttate come la soluzione precedente... su e giu.... per ogni ordine prima invece ha fatto 4 cose invece di una alla volta... con lo stesso viaggio (ciclo) Quindi hai esettamente il doppio (200%) di inefficenza... di un qualcosa che e' gia inefficente di per se... perche il nostro omino prima non faceva una mazza.... ora durante il viaggio si spacca il c..o ![]() ecco perche raggiungi a volte e dico a volte il 500%.... Ripeto l'esempio e' banale ma ci calza a pennello... |
![]() |
![]() |
![]() |
#22 | ||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
E' chiaro, quindi, che per realizzare una "micro-operazione" bisognerà "sommare" i tempi di tutte le porte logiche coinvolte nell'operazione (la cosa è un tantino più complessa, ma rende bene l'idea... ![]() Sia chiaro che questo discorso è MOLTO semplificato: giusto per dare un'idea. Tornando a noi, più si sale in frequenza, più il tempo necessario per completare una micro-operazione diventa critico. Ecco perché si tende ad aumentare il numero di stadi di pipeline: le microoperazioni diventeranno più "piccole", e sarà necessario svolgere meno lavoro, per cui il tempo necessario per il loro completamento diminuirà e si potranno raggiungere valori di clock più elevati. Una prova lampante di ciò è, ad esempio, il fatto che il Pentium 4 impiega ben due stadi di pipeline (quindi due clock) per poter accedere ad un registro. Sembrano quasi i tempi di una cache L1 (2-3 cicli di clock le migliori), ma ciò si è reso necessario perché il numero di transistor è molto elevato e il tempo necessario affinché dalla parte di CPU che ne ha bisogno si possa accedere a un registro sarebbe stato troppo elevato. Con due stadi di pipeline il problema è "risolto", perché praticamente il tempo di accesso è raddoppiato (due cicli anziché uno) senza andare a toccare gli altri stadi di pipeline... Azz, mi sono dilungato un po' troppo, come al solito... ![]() Quote:
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
||
![]() |
![]() |
![]() |
#23 |
Bannato
Iscritto dal: Jul 2002
Messaggi: 464
|
cdimauro
eh... sei tornato.. pensavo fossi morto ![]() i pezzi ti sono arrivati? Domani metto le mani su un 2400+ a 266 con abit KT400 ![]() |
![]() |
![]() |
![]() |
#24 |
Senior Member
Iscritto dal: Nov 2001
Città: Trieste
Messaggi: 786
|
secondo me...
un processore senza HT deve lavorare a tranches, mentre quello con HT può lavorare contemporeaneamente su più processi ottimizzando i tempi. Per esempio, se ho Seti e 3dmark che girano insieme, un processore senza HT dedicherà, mettiamo, 2500 cicli ad uno, poi passerà all'altro, tornerà sull'altro ancora, etc. dovendo svuotare spesso la cache per recuperare i dati che servono... perdendo molti cicli preziosi. Con l'HT invece grazie al parallelismo questi tempi morti sono ridotti di molto... E le prestazioni così possono salire ben sopra al potenziale 200%. Può essere una spiegazione valida? |
![]() |
![]() |
![]() |
#25 | |||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
![]() No, è che in questo periodo ho poco tempo per scrivere messaggi cicciottelli... ![]() Quote:
Nel frattempo i pezzi me li ero già venduti e mi sono dovuto accontentare di un Celeron 1,1Ghz per il momento... Sob! 9 ore per comprimere un DivX di quasi due ore, quando il mio XP 1600+ ne impiegava soltanto 3! ![]() Quote:
![]() Ah. Ho scaricato i sorgenti di Prime95 ma non ho ancora avuto modo di darci un'occhiata come si deve. A prima vista sembra che utilizzi un algoritmo FFT, per cui il ricorso alla FPU è quasi d'obbligo. Quindi avevi ragione: impegna l'FPU. Vediamo se dopo le feste posso studiarmelo con più calma... ![]()
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
|||
![]() |
![]() |
![]() |
#26 | |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
![]() In poche parole: dove trova un "buco", cioè delle risorse che non vengono impiegate dal primo thread, le assegna SE E' POSSIBILE, al secondo thread. Ad esempio: il primo thread lascia libera una ALU e il secondo, giust'appunto necessità di una ALU per continuare, ecc. Con questo modello non è detto che i due thread possano andare sempre in parallelo, anzi! Molto spesso, senza codice ottimizzato appositamente, un thread potrebbe ciucciarsi quasi tutte le risorse lasciando il secondo praticamente "morto di fame". Oppure i due si potrebbero ostacolare a vicenda: uno impegna l'FPU con una divisione e l'altro nel frattempo è costretto a girarsi i pollici perché gli serve una moltiplicazione o un'altra divisione. Oppure appunto, entrambi utilizzando porzioni di codice e memoria diversi, per cui tutte le cache sono costrette ad essere svuotate e riempite in continuazione. Ecc. ecc. ecc. Insomma, l'HT richiede parecchio "fine tuning" del sistema e dei programmi in particolare per poter essere sfruttato, soprattutto senza arrecare danni (cioè senza far calare le prestazioni anziché aumentarle...)
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
|
![]() |
![]() |
![]() |
#27 |
Senior Member
Iscritto dal: Sep 2001
Messaggi: 1521
|
Il problema che qui si vuol spiegare una tecnica di miglioramento dello sfruttamento delle unità di esecuzione in maniera semplicistica, la cosa non è fattibile. Tutti gli articoli che ho visto spiegano l'HT ma accennano sempre a quello che fa e i risultati si vedono da questo thread dove le persone non hanno chiara la cosa. La colpa non è loro, ma il motivo è che c'è molta teoria da studiare dietro per capire il SIMULTANEOUS MULTITHREADING (altro che hyperthreadibng neanche l'avesse inventato intel, intel lo ha solo implementato adattandolo al P4), da articoli di ricerca si vede che a volte l'HT è migliore anche di un biprocessore, il motivo è che scrivendo codice ad hoc si può mandare particolarmente bene l'HT, ma si presume che compilatori come Watcom ad esempio non generano mai codice di questo genere (non cito intel che per chiari motivi potrebbe introdurre dei trucchetti per far sembrare migliore HT). Codice particolarmente schifoso potrebbe favorire molto l'HT, ma 500% è proprio tanto. L'unica situazione che riesco a immaginare è che uno dei due thread abbia un working set maggiore della cache di 1mo o di 2ndo livello, generando così vari miss. Nel caso sequenziale il tempo sale vertiginosamente (soprattutto se pensiamo ad un ciclo for) con l'HT l'altro thread prosegue sbattendosene............
__________________
Ciao a Tutti dal Pazzo!!! ![]() ![]() Asus M4A79XTD EVO + X3 720 + ati 9200 + 4Gb OCZ 1800Mhz + WD BLACK 750Gb |
![]() |
![]() |
![]() |
#28 |
Senior Member
Iscritto dal: Sep 2001
Messaggi: 1521
|
x jojo:
Guarda che le temp come ti è stato riportato variano di 3 gradi beh tutta la fatica che facciamo per guadagnare 3 gradi e loro ce li fottono con una tecnologia che allo stato attuale il 90% delle volte ci rallenta l'esecuzione dei programmi....ma non è che mi convinca tanto. Considera pure che più sale l'efficienza dell'HT coiè il guadagno che ottieni più sfrutti le risorse e + quindi generi calore cioè le cpu con l'HT scalderanno sempre di + ma almeno ce ne sarà motivo non come ora. Comunque come ho già scritto in altri thread l'HT mi piace perché con un idea intelligente si utilizza ciò che è inutilizzato all'interno di una cpu, considernado che si parla poi di due thread diversi saranno rare anche dipendenza logiche sui dati e quindi che i due thread si ostacolino tra loro, insomma l'idea c'è va solo implementata a modo e generato codice x utilizzarla anche se la cosa è molto complessa infatti ancora non si riesce ad ottimizzare a modo il codice di un thread (infatti le unità sono libere x un altro thread) figuriamoci di 2 addirittura.....insomma alla intel devono lavorare molto ![]()
__________________
Ciao a Tutti dal Pazzo!!! ![]() ![]() Asus M4A79XTD EVO + X3 720 + ati 9200 + 4Gb OCZ 1800Mhz + WD BLACK 750Gb |
![]() |
![]() |
![]() |
#29 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Guarda che è proprio nel caso in cui due thread sono diversi fra di loro e non generano dipendenze dei dati che l'HT dà quasi sempre il peggio di sé. Il motivo è che nella già esigua cache L1 e nella cache L2 debbono coesistere working set completamente diversi.
Infatti se è vero che in quel test si sono raggiunte punte del 500% (anche se comunque è tutto da verificare perché è alquanto anomala la cosa) sarà dovuto MOLTO probabilmente al fatto che i thread appartengono allo stesso processo e fanno lo stesso tipo di lavoro, quindi il codice e parte dei dati è condiviso da entrambi per cui non c'è assolutamente spreco di spazio nella cache. Ecco che, in queste condizioni e con una sapiente miscelazione delle istruzioni (il codice di quel test è stato ottimizzato appositamente per sfruttare l'HT), i due thread possono andare d'amore e d'accordo, aumentando le prestazioni del sistema...
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
![]() |
![]() |
![]() |
#30 | |
Senior Member
Iscritto dal: Sep 2001
Messaggi: 1521
|
Quote:
![]() Infatti è chiaro che due thread dello stesso processo debbano stare in CPU, altrimenti si dovrebbe avere cache sufficienti per + processi cosa non impossibile ma impossibile per 1 p4, questo comunque già riduce di molto la probabilità di dipendenze sui dati. Lo sò scrivo da cani............ma ho un mal di denti (maledetto dente ha aspettato le feste e natale!!!!!!!) ![]() Ciaoooooooo......... PS Nel tuo post per thread diversi fra loro intendevi di due diversi processi chiaramente.........
__________________
Ciao a Tutti dal Pazzo!!! ![]() ![]() Asus M4A79XTD EVO + X3 720 + ati 9200 + 4Gb OCZ 1800Mhz + WD BLACK 750Gb |
|
![]() |
![]() |
![]() |
#31 |
Registered User
Iscritto dal: Nov 2002
Messaggi: 99
|
![]() |
![]() |
![]() |
![]() |
#32 | |||||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
![]() Quote:
![]() Quote:
![]() ![]() Quote:
Un esempio potrebbe essere dato da un emulatore che utilizza un thread per "prestare orecchio" ai messaggi di Windows e interfacciarsi col sistema operativo, mentre un altro thread si occupa di emulare effettivamente la CPU, un altro ancora potrebbe occuparsi del grafica, un altro del sonoro, e così via...
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
|||||
![]() |
![]() |
![]() |
#33 | |
Senior Member
Iscritto dal: Nov 1999
Messaggi: 31875
|
Quote:
![]()
__________________
Epilogo... Se non ti rispondo... potresti essere tra quelli che ho messo in ignore list! ![]() Thread ufficiale Asus ZenWiFi AX - XT8 |
|
![]() |
![]() |
![]() |
#34 |
Bannato
Iscritto dal: Jan 2000
Città: Roma
Messaggi: 4302
|
"......guardi le conviene perké appena arriva HT, potrà navigare come se avesse fastweb, anke con un 56k"
![]() è quello ho sentito dire poki giorni fà in un negozio, il negoziante verso un cliente ke stava prendendo una P4PE ![]() io mi sono avvicinato al banco e jo detto "MSI KT4-ULTRA Grazie" ![]() byz |
![]() |
![]() |
![]() |
#35 |
Junior Member
Iscritto dal: Dec 2002
Messaggi: 9
|
Io Aspetto solo che uscirà il 3000+
Addio Pentium. ![]() |
![]() |
![]() |
![]() |
#36 |
Junior Member
Iscritto dal: Jan 2003
Messaggi: 6
|
HELP
non ne capisco molto, cmq adesso devo acquistere un nuovo pc ero intenzionato a prendere un amd athlon pero dopo tutto quello che ho letto sul forum ho cambiato un po idea....
ho sempre creduto che i processori intel erano + lenti e si bruciassero facilmente..e cosi? cosa mi consigliate un amd athlon o un intel p4? il mio indirizzo e-mail è bubici@hotmail.com rispondetemi per favore!! ciao grazie |
![]() |
![]() |
![]() |
#37 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
E' un po' troppo generica come richiesta: dovresti dirci almeno a cosa ti serve il PC e più o meno quanto vorresti spendere...
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
![]() |
![]() |
![]() |
#38 |
Junior Member
Iscritto dal: Jan 2003
Messaggi: 6
|
behh..
sarei disposto a spendere cira 1100,00 E
|
![]() |
![]() |
![]() |
#39 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Non ci hai ancora detto a cosa ti serve il PC: è un'informazione fondamentale per stabilire quale sistema è più adatto alle tue esigenze...
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
![]() |
![]() |
![]() |
#40 |
Junior Member
Iscritto dal: Jan 2003
Messaggi: 6
|
bhee, ho 16 anni e col pc non ci faccio moltissimo, scarico da internet, gioco (mi piaciono i giochi con alta grafica) navigo, uso programmi per la creazione di musica, ci masterizzo,gurdo film (divx, dvd) e e ora sto iniziando a usare 3D studioMax e autocad ecc ecc.....
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 19:46.