S-ar putea să fiți curios cu privire la modul în care generațiile mai noi de procesoare pot fi mai rapide la aceleași viteze de ceas ca procesoarele mai vechi. Este doar schimbări în arhitectura fizică sau este ceva mai mult? Postarea de astăzi a SuperUser Q&A are răspunsurile la întrebările unui cititor curios.
Sesiunea de Întrebări și Răspunsuri de astăzi ne vine prin amabilitatea SuperUser - o subdiviziune a Stack Exchange, un grup de site-uri web de întrebări și răspunsuri bazat pe comunitate.
Fotografie oferită de Rodrigo Senna (Flickr) .
Intrebarea
Cititorul SuperUser agz vrea să știe de ce generațiile mai noi de procesoare sunt mai rapide la aceeași viteză de ceas:
De ce, de exemplu, un Core i5 dual-core de 2,66 GHz ar fi mai rapid decât un Core 2 Duo de 2,66 GHz, care este și dual-core?
Acest lucru se datorează unor instrucțiuni mai noi care pot procesa informații în mai puține cicluri de ceas? Ce alte schimbări arhitecturale sunt implicate?
De ce generațiile mai noi de procesoare sunt mai rapide la aceeași viteză de ceas?
Răspunsul
Contribuitorii SuperUser, David Schwartz și Breakthrough, au răspunsul pentru noi. În primul rând, David Schwartz:
De obicei, nu se datorează unor instrucțiuni mai noi. Doar pentru că procesorul necesită mai puține cicluri de instrucțiuni pentru a executa aceleași instrucțiuni. Acest lucru poate fi din mai multe motive:
- Cache-uri mari înseamnă mai puțin timp pierdut în așteptarea memoriei.
- Mai multe unități de execuție înseamnă mai puțin timp de așteptare pentru a începe să funcționeze pe o instrucțiune.
- O predicție mai bună a ramurilor înseamnă mai puțin timp pierdut executând speculativ instrucțiuni care nu trebuie niciodată executate.
- Îmbunătățirile unității de execuție înseamnă mai puțin timp în așteptarea finalizării instrucțiunilor.
- Conducte mai scurte înseamnă că conductele se umple mai repede.
Si asa mai departe.
Urmat de răspunsul de la Breakthrough:
Referința definitivă absolută este Manuale pentru dezvoltatori de software pentru arhitecturi Intel 64 și IA-32 . Acestea detaliază schimbările dintre arhitecturi și reprezintă o resursă excelentă pentru a înțelege arhitectura x86.
Aș recomanda să descărcați volumele combinate de la 1 la 3C (primul link de descărcare de pe pagina legată mai sus). Volumul 1, capitolul 2.2 conține informațiile dorite.
Unele diferențe generale enumerate în acel capitol, mergând de la nucleul la micro-arhitecturile Nehalem / Sandy Bridge sunt:
- Predicția îmbunătățită a sucursalei, recuperarea mai rapidă a previziunii greșite
- Tehnologie HyperThreading
- Controler de memorie integrat, nouă ierarhie cache
- Manevrare mai rapidă a excepțiilor în virgulă mobilă (numai Sandy Bridge)
- Îmbunătățirea lățimii de bandă LEA (numai Sandy Bridge)
- Extensii de instrucțiuni AVX (numai Sandy Bridge)
Lista completă poate fi găsită în linkul furnizat mai sus (volumul 1, capitolul 2.2).
Asigurați-vă că citiți mai multe din această discuție interesantă prin linkul de mai jos!
Aveți ceva de adăugat la explicație? Sună în comentarii. Doriți să citiți mai multe răspunsuri de la alți utilizatori ai Stack Exchange? Consultați aici firul complet de discuție .