Domanda

Sono interessato a padroneggiare funzioni legate al prefetch come

_mm_prefetch (...)

quindi quando eseguo operazioni che si sovrappongono ad array, la larghezza di banda della memoria viene completamente utilizzata. Quali sono le migliori risorse per conoscere questo?

Sto facendo questo lavoro in C usando la serie GCC 4 su una piattaforma Intel Intel.

È stato utile?

Soluzione

Esiste anche un eccellente documento di Ulrich Drepper, Ciò che ogni programmatore dovrebbe sapere sulla memoria . Copre il prefetching, oltre a molti altri argomenti relativi all'ottimizzazione delle prestazioni della memoria. È stato rilasciato nel novembre 2007 ed è estremamente rilevante per i processori di oggi. Se stai eseguendo operazioni su array molto grandi e ritieni che il tuo collo di bottiglia stia arrivando alla memoria, dovresti leggerlo.

Altri suggerimenti

Questo sito contiene dettagli sul supporto di prefetch gcc tra cui opzioni e funzioni di prefetch e include dettagli su diverse architetture tra cui Intel. Il gcc manuale contiene dettagli sul __builtin_prefetch funzione integrata nella sezione 5.46.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top