Discussione: pc per gaming...
View Single Post
Old 19-09-2008, 17:56   #7
emb
Senior Member
 
L'Avatar di emb
 
Iscritto dal: Feb 2008
Città: la spezia
Messaggi: 5720
Quote:
Originariamente inviato da kronos85 Guarda i messaggi
ma sinceramente anche io ho un dubbio... e non so quando mi verrà la voglia di rispendere dei soldi per una nuova configurazione quindi non so nemmeno io se andare sul quad 9550 o sul e8500...lo dico soltanto per il fatto che (penso) i quad siano + di ultima generazione (e sui quali si punterà in futuro)...
Vedi il problema è un altro. Non è che esiste un qualcosa ottimizzato per un dual o un qualcosa per un quad. Dipende da che software usi.

Ci sono determinati tipi di software che scalano bene in prestazioni in multithreading e quindi beneficiano molto di un numero di core piu alto. Ma la maggior parte dei software non può farlo, non perché i programmatori siano delle pippe o perché non vogliono farlo. Perché è proprio impossibile...

E' abbastanza facile da capire se ci ragioni sopra. I software sono sostanzialmente una sequenza di istruzioni eseguite una di fila all'altra che portano a un determinato risultato voluto.
Bene con un multithreading che si fa? Si fanno eseguire queste istruzioni due o quattro alla volta (a seconda di quanti core si hanno nella cpu)...
Bene mi dirai, ma allora piu core si hanno meglio è
Purtroppo no! Perché quasi tutte le istruzioni per potersi avviare hanno bisogno del risultato dell'istruzione precedente!!! Poi lo elaborano e lo "passano" all'istruzione successiva.
Capisci bene che è proprio impossibile eseguirle in parallelo...
Si possono sì ottimizzare delle porzioni di codice che si "prestano" particolarmente bene. Ma è una cosa percentualmente poco rilevante purtroppo. Con delle eccezzioni ovviamente!

Ci sono alcuni software come detto che scalano molto bene e sono: file servering (ma qua è roba da xeon o opetern), macchine virtuali, compressioni, rendering 3D raytracing, simulazioni di processi o calcolo distribuito. E poco, pochissimo altro (così su due piedi non mi viene in mente altro).

E allora dov'è che si può fare la differenza nelle prestazioni per i giochi e i programmi di uso comune? Con la frequenza della cpu e con la progettazione e l'efficienza dei core! La frequenza poi serve sempre. E a parità di spesa anche se un software è in grado di fare abbastanza bene multithreading (e come abbiamo visto è rarissimo) poi va a "perdere" parte del vantaggio perché viene eseguito a frequenza inferiore (ovviamente parliamo a parità di costi).

Inoltre il multithreading ha anche un "temibile" concorrente che è già "gratis" e compreso nelle cpu moderne: le istruzioni SIMD (single instruction multiple data)! Certo non sempre si possono usare ma quando lo è si ha un accelerazione davvero notevole!

Capit?

Ah già dimenticavo.

Forse ti verrà la curiosità di capire come mai intel e amd stiano "pompando" così tanto sui quad core...
Bene è per questione puramente di marketing. Putroppo tecnologicamente parlando siamo un pochino al limite con la frequenza e ottenere signficativi rialzi in tal senso diventa sempre piu difficile. Molto ma molto piu facile è invece raddoppiare, triplicare, quadruplicare e chi piu ne ha piu ne metta il numero dei core. Questo consente di vendere i processori a carissimo prezzo, tanto la maggior parte della gente non lo sa che sta buttando via i soldi perché è umanamente portata a pensare che 4 è maggiore di 2 e quindi è meglio! E per intel sono soldi che entrano a palate...
Inoltre hanno la "giustificazione" pronta per questa cosa. Ci sono in effetti dei software che hanno un ottimo beneficio dal numero alto dei core e quindi loro stanno "lavorando onestamente"...

Per ultimo una curiosità, è vero che il passaggio da due a quattro core per la maggior parte di noi non serve a una ceppa, ma il passaggio da uno a due non è affatto stato così inutile!! Anzi è servito tantissimo. Questo perché esiste anche il multitasking e non solo il multithreading, ma per un multitasking efficiente, e con la potenza e la frequenza dei core attuali due unità elaborative danno vantaggi enormi, salire oltre le due da dei vantaggi assolutamente marginalissimi.

Ultima modifica di emb : 19-09-2008 alle 18:02.
emb è offline   Rispondi citando il messaggio o parte di esso