09.06.2013 Views

Oltre la legge di Moore: evoluzioni architetturali dei processori Intel ...

Oltre la legge di Moore: evoluzioni architetturali dei processori Intel ...

Oltre la legge di Moore: evoluzioni architetturali dei processori Intel ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Mo<strong>di</strong>fiche <strong>architetturali</strong> per il miglioramento delle prestazioni 45<br />

Se uno <strong>dei</strong> due deve attendere, ad esempio per un cache-miss (sia <strong>di</strong><br />

primo che <strong>di</strong> secondo livello), l’altro può continuare l’esecuzione<br />

evitando <strong>di</strong> <strong>la</strong>sciare <strong>la</strong> CPU in attesa. È il caso dell’HyperThrea<strong>di</strong>ng del<br />

Pentium ® 4. In casi limite, il multi-threa<strong>di</strong>ng su CPU virtuali può portare<br />

a peggioramento delle prestazioni.<br />

• Multi-core: consente un vero multi-threa<strong>di</strong>ng e permette in certi casi <strong>di</strong><br />

aumentare notevolmente le prestazioni. Es. Core 2 Duo <strong>di</strong> <strong>Intel</strong> ® .<br />

• Più core eterogenei nel chip: ingloba nello stesso chip due o più core<br />

ma con funzionalità specializzate. Es. Cell <strong>di</strong> IBM/Sony/Toshiba.<br />

3.2.1 Instruction Level Parallelism<br />

L’ “Instruction Level Parallelism” (ILP ovvero parallelismo a livello<br />

d’istruzione) è <strong>la</strong> possibilità <strong>di</strong> eseguire delle istruzioni <strong>di</strong> un programma in<br />

parallelo da parte un sistema <strong>di</strong> calcolo.<br />

La ricerca <strong>di</strong> rendere il co<strong>di</strong>ce parallelo a livello <strong>di</strong> istruzioni è <strong>di</strong>ventata una<br />

priorità nei moderni micro<strong>processori</strong>. Questi ultimi infatti sono dotati <strong>di</strong> molte<br />

unità <strong>di</strong> calcolo e usualmente seguono una struttura a pipeline: l’in<strong>di</strong>viduazione<br />

e lo sfruttamento delle istruzioni eseguibili in parallelo permette pertanto <strong>di</strong><br />

utilizzare le unità funzionali <strong>dei</strong> <strong>processori</strong> contemporaneamente innalzando le<br />

prestazioni del microprocessore.<br />

Consideriamo il seguente frammento <strong>di</strong> pseudoco<strong>di</strong>ce:<br />

Istruzione 1:<br />

h =<br />

a + b

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!