Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
DokladSovrArchKompSOKR.doc
Скачиваний:
3
Добавлен:
24.11.2019
Размер:
318.98 Кб
Скачать
  • MMX (Multimedia Extensionsмультимедийные расширения) — коммерческое название дополнительного набора инструкций, выполняющих характерные для процессов кодирования/декодирования потоковых аудио/видео данных действия за одну машинную инструкцию.

  • 3DNow! — дополнительное расширение mmx для процессоров amd, начиная с amd k6 3d.

  • Суперскалярность — архитектура вычислительного ядра, использующая несколько декодеров команд, которые могут нагружать работой множество исполнительных блоков. Планирование исполнения потока команд является динамическим и осуществляется самим вычислительным ядром.

  • Hyper-threading (англ. Hyper-threading — гиперпоточность). Торговая марка компании Intel для реализации технологии «одновременной мультипоточности».

Hyper-Threading – это название технологии, существовавшей и ранее вне x86 мира, технологии одновременной многопоточности (Simultaneous Multi-Threading, SMT). Идея этой технологии проста. Один физический процессор представляется операционной системе как два логических процессора, и операционная система не видит разницы между одним SMT процессором или двумя обычными процессорами. В обоих случаях операционная система направляет потоки как на двухпроцессорную систему. Далее все вопросы решаются на аппаратном уровне.

В процессоре с Hyper-Threading каждый логический процессор имеет свой собственный набор регистров (включая и отдельный счетчик команд), а чтобы не усложнять технологию, в ней не реализуется одновременное выполнение инструкций выборки/декодирования в двух потоках. То есть такие инструкции выполняются поочередно. Параллельно же выполняются лишь обычные команды.

  • Многоядерность — наличие двух и более вычислительных ядер на одном процессорном кристалле или в одном корпусе в центральном процессоре.

Во всех существующих на сегодняшний день многоядерных процессорах кэш-память первого уровня у каждого ядра своя, а кэш 2-го уровня существует в нескольких вариантах:

  1. разделяемый — кэш расположен на одном с обоими ядрами кристалле и доступен каждому из них в полном объёме. Используется в процессорах семейств Intel Core.

  2. индивидуальный — отдельные кэши равного объёма, интегрированные в каждое из ядер. Обмен данными из кэшей L2 между ядрами осуществляется через контроллер памяти — интегрированный (Athlon 64 X2) или внешний (Pentium D).

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

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

Примеры конвейерной обработки: выполнение циклов команд, арифметика чисел с плавающей точкой, циклы.

  • Предсказание ветвлений

В любой более-менее сложной программе присутствуют команды условного перехода: «Если некое условие истинно — перейти к исполнению одного участка кода, если нет — другого». До тех пор, пока не станет известно, какой участок кода после условного перехода окажется «актуальным» — его невозможно начать декодировать и исполнять. Для того чтобы как-то примирить концепцию внеочередного исполнения с командами условного перехода, предназначается специальный блок: блок предсказания ветвлений.

Он пытается предсказать, на какой участок кода укажет команда условного перехода, ещё до того, как она будет исполнена. Процессором производятся вполне реальные действия: предсказанный участок кода загружается в кэш (если он там отсутствует), и даже начинается декодирование и выполнение его команд. Причём среди выполняемых команд также могут содержаться инструкции условного перехода, и их результаты тоже предсказываются, что порождает целую цепочку из пока не проверенных предсказаний! Разумеется, если блок предсказания ветвлений ошибся, вся проделанная в соответствии с его предсказаниями работа просто аннулируется.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]