Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Оргазм_шпоры.docx
Скачиваний:
22
Добавлен:
07.07.2019
Размер:
1.08 Mб
Скачать
  1. Почему появились многоядерные структуры процессоров и технологии многопоточности?

Корпорация Intel, лидер в разработке микропроцессоров с х86 архитектурой, ежегодно на протяжении долгого времени увеличивала производительность своих процессоров преимущественно за счет увеличения тактовой частоты и использования гиперконвейерной технологии выполнения команд, что в свою очередь значительно увеличивало энергопотребление и, соответственно, количество выделяемой процессором тепловой энергии. Это привело к тому, что компания уперлась в энергетический предел, ограничивающий возможности наращивания производительности процессорных кристаллов традиционными способами. Перед компанией Intel остро встала проблема разрешения противоречия между производительностью процессора и энергопотреблением.

Использование многоядерных структур процессора является одним из путей решения этой проблемы. Совмещение в одном процессоре двух вычислительных ядер позволяет удерживать рассеиваемую им мощность в допустимых пределах за счет сравнительно незначительного понижения тактовой частоты ядер: при снижении рабочей частоты на 20 % производительность ядра падает примерно на 13 %, а энергопотребление – на 50 %. При этом двухъядерный процессор все равно существенно выигрывает в производительности (при тех же условиях до 70 %) за счет увеличения количества команд, выполняемых в процессоре за один такт, но для этого необходимо на программном уровне обеспечить загрузку обоих ядер, для чего требуется соответствующая оптимизация программного кода.

Другим направлением развития микропроцессорной индустрии на ближайшие годы будет многопоточность. Многопотоковая обработка команд на одном процессоре (ядре) основывается на том, что в каждый момент времени только часть ресурсов процессора (ядра) используется при выполнении программного кода. Неиспользуемые ресурсы также можно загрузить работой, например, задействовать для параллельного выполнения еще одного приложения. В этом случае операционная система и приложения «видят» именно два логических процессора (ядра) и могут распределять работу между ними, как и в случае полноценной двухпроцессорной системы.

  1. Развитие cisc-системы команд x86 (по годам)

Изначально в базовом наборе команд 8086 были предусмотрены команды обработки чисел с плавающей запятой, которые до Intel 386-процессора включительно выполнялись на дополнительном сопроцессоре. Начиная с Intel 486 блок обработки чисел с плавающей запятой (FPU) стал составной частью микропроцессора.

Развитие системы команд процессоров архитектуры Intel

Год появления набора команд

Тип процессора, где набор был реализован впервые

Общее число команд

Смысл расширения

1979

i8086

170

Исходный набор команд х 86

1985

i386

220

50 новых команд, необходимых для перехода к 32-разрядной архитектуре

1997

Pentium/MMX

277

57 ММХ-команд для параллельной обработки видео- и аудиоинформации

1999

Pentium III

347

70 команд

SSE-расширения

2000

Pentium 4 Northwood

491

144 команды

расширения SSE-2

2004

Pentium 4 Prescott

504

13 команд

расширения SSE-3

Переход на 32-разрядную интеловскую архитектуру (IA-32) был осуществлен в процессоре Intel 386 с добавлением 50 новых команд. Все последующие модели процессоров, в том числе и Pentium IV, имеют IA-32 архитектуру, несмотря на то, что расширение системы команд происходило неоднократно.