Чому нові покоління процесорів швидше на одній і тій же швидкості?
Можливо, вам буде цікаво, як нові покоління процесорів можуть швидше працювати з такими ж тактовими частотами, що і старші процесори. Чи це просто зміни у фізичній архітектурі або це щось більше? Сьогоднішня посада SuperUser Q&A має відповіді на запитання цікавого читача.
Сьогоднішня сесія запитань та відповідей приходить до нас люб'язно SuperUser - підрозділ Stack Exchange, групування веб-сайтів із запитаннями та відповідями на рівні спільноти..
Фото надано Родріго Сенною (Flickr).
Питання
Читач від SuperUser agz хоче знати, чому нові покоління процесорів швидше при однаковій тактовій частоті:
Чому, наприклад, двоядерний процесор Core i5 розміром 2,66 ГГц буде швидшим, ніж 2,6 ГГц Core 2 Duo, який також є двоядерним?
Чи є це через нові інструкції, які можуть обробляти інформацію в меншій кількості тактових циклів? Які інші архітектурні зміни задіяні?
Чому нові покоління процесорів швидше при однаковій тактовій частоті?
Відповідь
Співробітники SuperUser Девід Шварц і Breakthrough мають відповідь для нас. Спочатку, Девід Шварц:
Зазвичай це не через нові інструкції. Це лише тому, що процесор вимагає меншої кількості циклів команд для виконання тих самих інструкцій. Це може бути з багатьох причин:
- Великі кеші означають менше часу, витраченого в очікуванні пам'яті.
- Більше виконання блоків означає менше часу очікування для початку роботи над інструкцією.
- Краще передбачення гілок означає, що менше часу витрачається на спекулятивні виконання інструкцій, які ніколи не повинні виконуватися.
- Покращення одиниць виконання означає менше часу в очікуванні завершення інструкцій.
- Коротші трубопроводи означають, що трубопроводи швидше засипаються.
І так далі.
Далі йде відповідь від Прориву:
Абсолютними остаточними посиланнями є посібники розробників програмного забезпечення Intel 64 і IA-32. Вони деталізують зміни між архітектурами, і вони є великим ресурсом для розуміння архітектури x86.
Я рекомендую вам завантажити об'єднані томи з 1 по 3C (перше посилання для скачування на сторінці, пов'язану вище). Том 1, глава 2.2 містить потрібну інформацію.
Деякі загальні відмінності, перелічені в цьому розділі, переходять від ядра до мікроархітектур Nehalem / Sandy Bridge:
- Поліпшення прогнозування гілок, швидше відновлення після неправильного прогнозування
- Технологія HyperThreading
- Інтегрований контролер пам'яті, нова ієрархія кеша
- Швидше обробка виключень із плаваючою точкою (лише Sandy Bridge)
- Поліпшення пропускної спроможності LEA (тільки Sandy Bridge)
- Розширення інструкцій AVX (лише для Sandy Bridge)
Повний список можна знайти у наведеному вище посиланні (том 1, глава 2.2).
Переконайтеся, що прочитали більше цієї цікавої дискусії за посиланням нижче!
Маєте щось додати до пояснення? Звучить в коментарях. Хочете прочитати більше відповідей від інших технологічних користувачів Stack Exchange? Перегляньте повний потік обговорення тут.