Pre-preluare

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

Prefetch (din latinescul pre , „before” și fetch , în engleză „to fetch”) este o tehnică utilizată în microprocesoare pentru a accelera execuția programelor prin reducerea stărilor de așteptare .

Microprocesoarele moderne sunt de fapt mult mai rapide decât memoria RAM care conține programe și date, astfel încât instrucțiunile programului nu pot fi citite suficient de rapid pentru a menține procesorul ocupat.

Operațiune

Activitatea de pre-preluare ar putea consta în preîncărcarea următoarei instrucțiuni a programului în timpul executării instrucțiunii curente; de fapt, s-a limitat la aceasta în primele sale implementări (ca în cazul Intel 8086 ). Cu toate acestea, atunci când instrucțiunea de executat a fost o instrucțiune de salt, munca depusă s-a dovedit total inutilă și preluarea cozii a fost golită, cu pierderea eficienței.

În cele mai avansate procesoare, activitatea de pre-preluare se realizează prin intermediul unui algoritm complex de predicție, cu care procesorul încearcă să identifice următoarea instrucțiune corectă de încărcat. În cazul familiei Intel , această tehnică se numește Branch Target Buffer și poate ajunge la predicții exacte în 90% din cazuri.

Plăci grafice

În cazul hardware-ului dedicat (cum ar fi CPU-urile plăcilor grafice sau GPU-urile ), instrucțiunea de pre-preluare poate beneficia de procesul de coerență spațială prezent de obicei în maparea texturilor . În acest caz, datele încărcate de activitatea de preluare nu sunt instrucțiuni, ci elemente de textură ( texeluri ) care pot fi mapate pe un poligon.

Elemente conexe

Alte proiecte

Informatică Portal IT : accesați intrările Wikipedia care se ocupă cu IT