Główna » jak » Dlaczego nowsze generacje procesorów są szybsze przy tej samej prędkości zegara?

    Dlaczego nowsze generacje procesorów są szybsze przy tej samej prędkości zegara?

    Być może zastanawiasz się, w jaki sposób nowsze generacje procesorów mogą działać szybciej z tymi samymi zegarami, co starsze procesory. Czy to tylko zmiany w architekturze fizycznej czy jest to coś więcej? Dzisiejszy post z pytaniami i odpowiedziami dla SuperUser zawiera odpowiedzi na ciekawe pytania czytelnika.

    Dzisiejsza sesja pytań i odpowiedzi przychodzi do nas dzięki uprzejmości SuperUser - poddziału Stack Exchange, opartego na społecznościach grupowania witryn z pytaniami i odpowiedziami.

    Zdjęcie dzięki uprzejmości Rodrigo Senny (Flickr).

    Pytanie

    Czytnik SuperUser agz chce wiedzieć, dlaczego nowsze generacje procesorów są szybsze z tą samą częstotliwością zegara:

    Dlaczego, na przykład, dwurdzeniowy rdzeń Core i5 2,66 GHz byłby szybszy niż 2,66 GHz Core 2 Duo, który jest również dwurdzeniowy?

    Czy to z powodu nowszych instrukcji, które mogą przetwarzać informacje w mniejszej liczbie cykli zegara? Jakie są inne zmiany architektoniczne?

    Dlaczego nowsze generacje procesorów są szybsze z tą samą szybkością zegara??

    Odpowiedź

    Współautorzy SuperUser, David Schwartz i Breakthrough, mają dla nas odpowiedź. Po pierwsze, David Schwartz:

    Zwykle nie jest to spowodowane nowszymi instrukcjami. Jest tak dlatego, że procesor wymaga mniejszej liczby cykli instrukcji, aby wykonać te same instrukcje. Może to wynikać z wielu przyczyn:

    1. Duże pamięci podręczne oznaczają mniej czasu zmarnowanego na oczekiwanie na pamięć.
    2. Więcej jednostek wykonawczych oznacza krótszy czas oczekiwania na rozpoczęcie pracy z instrukcją.
    3. Lepsze przewidywanie rozgałęzień oznacza mniej czasu zmarnowanego na spekulacyjne wykonywanie instrukcji, które nigdy nie muszą być wykonywane.
    4. Ulepszenia jednostek wykonania oznaczają krótszy czas oczekiwania na wykonanie instrukcji.
    5. Krótsze rurociągi oznaczają szybsze zapełnianie rurociągów.

    I tak dalej.

    Poniżej znajduje się odpowiedź od Breakthrough:

    Absolutnym odniesieniem są podręczniki dla programistów oprogramowania Intel 64 i IA-32 Architectures. Wyszczególniają zmiany między architekturami i są doskonałym źródłem do zrozumienia architektury x86.

    Zaleciłbym pobranie połączonych woluminów od 1 do 3C (pierwszy link do pobrania na stronie powyżej). Tom 1, rozdział 2.2 zawiera potrzebne informacje.

    Niektóre ogólne różnice wyszczególnione w tym rozdziale, przechodzące od mikro-architektur Nehalem / Sandy Bridge są następujące:

    • Ulepszone przewidywanie rozgałęzień, szybsza regeneracja po błędach
    • Technologia HyperThreading
    • Zintegrowany kontroler pamięci, nowa hierarchia pamięci podręcznej
    • Szybsza obsługa wyjątków zmiennoprzecinkowych (tylko Sandy Bridge)
    • Poprawa przepustowości LEA (tylko Sandy Bridge)
    • Rozszerzenia instrukcji AVX (tylko Sandy Bridge)

    Pełną listę można znaleźć w linku podanym powyżej (Tom 1, rozdział 2.2).

    Przeczytaj tę bardziej interesującą dyskusję, korzystając z linku poniżej!


    Czy masz coś do dodania do wyjaśnienia? Dźwięk w komentarzach. Chcesz przeczytać więcej odpowiedzi od innych użytkowników Stack Exchange, którzy znają się na technologii? Sprawdź cały wątek dyskusji tutaj.