If-Koubou

Защо по-новите поколения процесори по-бързо в една и съща часовникова скорост?

Защо по-новите поколения процесори по-бързо в една и съща часовникова скорост? (Как да)

Може да сте любопитни за това как по-новите поколения процесори могат да бъдат по-бързи при едни и същи часовникови скорости, както старите процесори. Просто промените във физическата архитектура или е нещо повече? Днешната публикация "Суперуслуги Q & A" има отговорите на въпросите на любознателен читател.

Днешната сесия за въпроси и отговори ни идва с любезното съдействие на SuperUser - подразделение на Stack Exchange - обединяване на уеб сайтове с въпроси и отговори.

Снимката е предоставена от Родриго Сена (Flickr).

Въпроса

Суперузерът reader agz иска да знае защо по-новите поколения процесори са по-бързи с една и съща скорост на часовника:

Защо например 2,66 GHz двуядрен Core i5 ще бъде по-бърз от 2,66 GHz Core 2 Duo, който също е двуядрен?

Това се дължи на по-нови инструкции, които могат да обработват информация в по-малко часовникови цикли? Какви други архитектурни промени са включени?

Защо новите поколения процесори се ускоряват с еднаква скорост?

Отговорът

Сътрудниците на SuperUser Дейвид Шварц и Пробив имат отговора за нас. Първо, Дейвид Шварц:

Обикновено това не се дължи на по-нови инструкции. Просто защото процесорът изисква по-малко цикли на инструкции, за да изпълни същите инструкции. Това може да се дължи на голям брой причини:

  1. Големите кешове означават по-малко губещо време, чакайки паметта.
  2. По-голяма част от изпълнението означава по-малко време, което чака да започне работа с инструкция.
  3. По-доброто предвиждане на клона означава по-малко време, което се губи, като се правят спекулативно изпълняващи инструкции, които никога не се нуждаят от изпълнение.
  4. Подобренията в отдел "Изпълнение" означават по-малко време, чакащо инструкциите да завършат.
  5. По-късите тръбопроводи означават, че тръбопроводите се запълват по-бързо.

И така нататък.

Следва отговор от пробив:

Абсолютната окончателна референция е Intel 64 и IA-32 Architectures Software Developer Manuals. Те описват подробно промените между архитектури и те са чудесен ресурс за разбирането на архитектурата x86.

Бих препоръчал да изтеглите обединените томове 1 до 3C (първа връзка за изтегляне на страницата, свързана по-горе). Том 1, Глава 2.2 има информацията, която искате.

Някои общи различия, изброени в тази глава, които преминават от микро-архитектурите Core към Nehalem / Sandy Bridge са:

  • Подобрено прогнозиране на клонове, по-бързо възстановяване от невярно предупреждение
  • Технология на хипервръзката
  • Интегриран контролер на паметта, нова йерархия на кеша
  • Управление на по-бързи планове с плаваща запетая (само за Sandy Bridge)
  • Оптимизиране на капацитета на LEA (само Sandy Bridge)
  • Разширения на инструкциите за AVX (само за Sandy Bridge)

Пълният списък може да бъде намерен в посочената по-горе връзка (том 1, глава 2.2).

Не забравяйте да прочетете повече от тази интересна дискусия чрез линка по-долу!

Имате ли нещо, което да добавите към обяснението? Звучи в коментарите. Искате ли да прочетете повече отговори от други потребители на Stack Exchange? Вижте цялата тема на дискусията тук.