Hjemmeside » hvordan » Hvorfor er nyere generationer af processorer hurtigere med samme urhastighed?

    Hvorfor er nyere generationer af processorer hurtigere med samme urhastighed?

    Du kan måske være nysgerrig om, hvordan nyere generationer af processorer er i stand til at være hurtigere ved samme clock-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 med venlig hilsen af ​​SuperUser-en underafdeling af Stack Exchange, en community-driven gruppe af Q & A-websteder.

    Foto høflighed af Rodrigo Senna (Flickr).

    Spørgsmålet

    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 også er dual-core?

    Er dette på grund af nyere instruktioner, der kan behandle oplysninger i færre urcykler? Hvilke andre arkitektoniske ændringer er involveret?

    Hvorfor er nyere generationer af processorer hurtigere med samme clock-hastighed?

    Svaret

    SuperUser bidragyderne 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:

    1. Store caches betyder mindre tid spildt og venter på hukommelsen.
    2. Flere eksekveringsenheder betyder mindre tid på at vente på at starte driften på en instruktion.
    3. Bedre filial forudsigelse betyder mindre tid spildt spekulativt at udføre instruktioner, der aldrig rent faktisk skal udføres.
    4. Forbedringsenhedsforbedringer betyder mindre tid, der venter på, at instruktionerne er færdige.
    5. 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 vil anbefale at du downloader de samlede mængder 1 til 3C (første download link på siden linket ovenfor). Volumen 1, kapitel 2.2 indeholder de ønskede oplysninger.

    Nogle generelle forskelle, der er opført i dette kapitel, går fra Core til Nehalem / Sandy Bridge mikroarkitekturer er:

    • Forbedret filial forudsigelse, hurtigere opsving fra misprediction
    • HyperThreading Technology
    • Integreret hukommelsescontroller, nyt cache-hierarki
    • Hurtigere flydende punkt undtagelseshåndtering (kun Sandy Bridge)
    • LEA båndbreddeforbedring (kun Sandy Bridge)
    • AVX instruktionsudvidelser (kun Sandy Bridge)

    Den komplette liste kan 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.