2Aug
Du kan være nysgerrig om, hvordan nyere generationer af processorer er i stand til at være hurtigere ved samme ur-hastighed som ældre processorer. Er det bare ændringer i fysisk arkitektur eller er det noget mere? Dagens SuperUser Q & A-indlæg har svarene på en nysgerrig læsers spørgsmål.
Dagens Spørgsmål &Svar session kommer til os høflighed af SuperUser-en underafdeling af Stack Exchange, en community-drevet gruppe af Q & A-websteder.
Foto courtesy of Rodrigo Senna( Flickr).
Spørgsmål
SuperUser-læser agz ønsker at vide, hvorfor nyere generationer af processorer er hurtigere med samme clock-hastighed:
Hvorfor ville en 2,66 GHz dual-core Core i5 være hurtigere end en 2,66 GHz Core 2 Duo, som erogså dual-core?
Er dette på grund af nyere instruktioner, der kan behandle oplysninger i færre urcyklusser? Hvilke andre arkitektoniske ændringer er involveret?
Hvorfor er nyere generationer af processorer hurtigere med samme clock-hastighed?
Svaret
SuperUser bidragsydere David Schwartz og gennembrud har svaret for os. Først op, David Schwartz:
Normalt er det ikke på grund af nyere instruktioner. Det er bare fordi processoren kræver færre instruktionscykler at udføre de samme instruktioner. Dette kan være af mange årsager:
- Store caches betyder mindre tid spildt og venter på hukommelse.
- Flere udførelsesenheder betyder mindre tid, der venter på at starte driften på en instruktion.
- Bedre grunde forudsigelse betyder mindre tid spildt spekulativt udførelse instruktioner, der aldrig rent faktisk skal udføres.
- Forbedringsenhed forbedringer betyder mindre tid venter på instruktioner at fuldføre.
- Kortere rørledninger betyder, at rørledninger fylder hurtigere.
Og så videre.
Efterfulgt af svaret fra gennembrud:
Den absolutte endelige reference er Intel 64 og IA-32 Architectures Software Developer Manuals. De beskriver ændringerne mellem arkitekturer, og de er en stor ressource for at forstå x86-arkitekturen.
Jeg anbefaler at du downloader de samlede mængder 1 til 3C( første download link på siden linket ovenfor).Volumen 1, kapitel 2.2 har de ønskede oplysninger.
Nogle generelle forskelle, der er angivet i dette kapitel, går fra Core til Nehalem / Sandy Bridge-mikroarkitekturerne er:
- Forbedret filialforudsigelse, hurtigere genopretning fra forkert forudsigelse
- HyperThreading Technology
- Integreret hukommelsescontroller, nyt cache-hierarki
- Hurtigere flytende punkt undtagelsehåndtering( kun Sandy Bridge)
- LEA båndbreddeforbedring( kun Sandy Bridge)
- AVX instruktionsudvidelser( kun Sandy Bridge)
Den komplette liste findes i linket ovenfor( Volumen 1, Kapitel 2.2).
Sørg for at læse mere af denne interessante diskussion via linket nedenfor!
Har du noget at tilføje til forklaringen? Lyde af i kommentarerne. Vil du læse flere svar fra andre tech-savvy Stack Exchange brugere? Tjek den fulde diskussionstråd her.