stringtranslate.com

Железный закон производительности процессора

В компьютерной архитектуре железный закон производительности процессора (или просто железный закон производительности) описывает компромисс производительности между сложностью и количеством примитивных инструкций , которые процессоры используют для выполнения вычислений. [1] Эта формулировка компромисса стимулировала разработку [ требуется ссылка ] компьютеров с сокращенным набором инструкций (RISC), чьи архитектуры наборов инструкций (ISA) используют меньший набор основных инструкций для повышения производительности. Термин был придуман Дугласом Кларком [2] на основе исследований, проведенных Кларком и Джоэлом Эмером в 1980-х годах. [3]

Объяснение

Производительность процессора — это время, необходимое для выполнения программы: . Это можно дополнительно разбить на три фактора: [4]

Выбор архитектуры набора инструкций влияет на , тогда как во многом определяется технологией производства. Классические сложные компьютерные наборы инструкций (CISC) ISA оптимизированы за счет предоставления большего набора более сложных инструкций ЦП . Однако, говоря в общем, сложные инструкции увеличивают количество тактовых циклов на инструкцию, поскольку они должны быть декодированы в более простые микрооперации, фактически выполняемые оборудованием. После преобразования двоичного кода X86 в микрооперации, используемые внутри, общее количество операций близко к тому, что производится для сопоставимой RISC ISA. [5] Железный закон производительности процессора делает этот компромисс явным и подталкивает к оптимизации в целом, а не только одного компонента.

Хотя железный закон считается толчком к развитию архитектуры RISC, [ требуется ссылка ] это не означает, что более простая ISA всегда быстрее. Если бы это было так, самая быстрая ISA состояла бы из простой двоичной логики. Одна инструкция CISC может быть быстрее, чем эквивалентный набор инструкций RISC, когда она позволяет выполнять несколько микроопераций за один такт. На практике, однако, регулярность инструкций RISC допускает конвейерную реализацию, в которой общее время выполнения инструкции составляло (обычно) ~5 тактов, но каждая инструкция следовала за предыдущей инструкцией ~1 такт позже [ требуется ссылка ] . Процессоры CISC также могут достигать более высокой производительности, используя такие методы, как модульные расширения, предиктивная логика, сжатые инструкции и слияние макроопераций. [6] [5] [7]

Смотрите также

Ссылки

  1. ^ Экхаут, Ливен (2010). Методы оценки производительности компьютерной архитектуры. Морган и Клейпул. стр. 5–6. ISBN 9781608454679. Получено 9 марта 2021 г. .
  2. ^ Джоэл, Эмер (2021-04-13), YArch 2021 Keynote , получено 2021-09-02
  3. ^ Характеристика производительности процессора в VAX-11/780, Джоэл С. Эмер, Дуглас В. Кларк, 1984, IEEE
  4. ^ Asanovic, Krste (2019). "Lecture 4 - Pipelining" (PDF) . Department of Electrical Engineering and Computer Sciences at UC Berkeley (Lecture Slides). стр. 2. Архивировано (PDF) из оригинала 2021-03-12 . Получено 2020-03-11 .
  5. ^ ab Celio, Christopher; Dabbelt, Palmer; Patterson, David A.; Asanović, Krste (2016-07-08). «Возобновленный случай для компьютера с сокращенным набором инструкций: избегание раздувания ISA с помощью слияния макроопераций для RISC-V». arXiv : 1607.02318 [cs.AR].
  6. ^ Энгхайм, Эрик (28.12.2020). "Гений микропроцессоров RISC-V". Medium . Получено 11.03.2021 .
  7. ^ Celio, Christopher (2016-07-26), Сравнение RISC V, ARM и x86 , получено 2021-03-11