SIMD

Материал из Википедии — свободной энциклопедии
Текущая версия страницы покане проверялась опытными участниками и может значительно отличаться отверсии, проверенной 19 января 2025 года; проверки требует1 правка.
Перейти к навигацииПерейти к поиску
Не следует путать сSIMD (хеш-функция).
Классификация по Флинну
 Одиночный поток команд
(single instruction)
Множество потоков команд
(multiple instruction)
Одиночный поток данных
(single data)
SISD
(ОКОД)
MISD
(МКОД)
Множество потоков данных
(multiple data)
SIMD
(ОКМД)
MIMD
(МКМД)

SIMD (англ. single instruction, multiple data —одиночный поток команд, множественный поток данных,ОКМД) — принцип компьютерных вычислений, позволяющий обеспечитьпараллелизм на уровнеданных. Один изклассов вычислительных систем вклассификации Флинна.

SIMD-компьютеры состоят из одного командногопроцессора (управляющего модуля), называемого контроллером, и нескольких модулей обработки данных, называемых процессорными элементами. Управляющий модуль принимает, анализирует и выполняет команды. Если в команде встречаются данные, контроллер рассылает на все процессорные элементы команду, и эта команда выполняется на нескольких или на всех процессорных элементах. Каждый процессорный элемент имеет свою собственную память для хранения данных. Одним из преимуществ данной архитектуры считается то, что в этом случае более эффективно реализована логика вычислений. До половины логических инструкций обычного процессора связано с управлением выполнением машинных команд, а остальная их часть относится к работе с внутренней памятью процессора и выполнениюарифметических операций. В SIMD-компьютере управление выполняется контроллером, а «арифметика» отдана процессорным элементам.

Векторные процессоры также использовали принцип SIMD, одной командой могли обрабатываться векторы размером до нескольких тысяч элементов.

SIMD-расширения различных архитектур

[править |править код]

Короткие SIMD инструкции (64 или 128 бит) стали появляться в процессорах общего назначения в 1990-х годах. В разной степени следующие процессорные архитектуры поддерживают SIMD-расширения или SIMD-инструкции:

Группа из IBM, Sony, Toshiba совместно разработала для процессораCell Processor сопроцессорSPU, набор команд которого в значительной степени использовал SIMD. NXP (Philips) разработала несколько SIMD-процессоровXetal, в котором имелось 320 процессорных элементов, работавших с 16-битными данными.

Современные видеоускорители (GPU) обычно основаны на SIMD-архитектуре с поддержкой векторов длины 128, 256 или более бит.

РасширениеAdvanced Vector Extensions компании Intel предоставляет набор SIMD-инструкций для обработкиданных в формате с плавающей запятой в группах длиной 256 бит.СопроцессорыIntel MIC включают в себя 512-битный набор инструкций.

x86-совместимые процессоры

[править |править код]
Информация в этой статье или некоторых её разделахустарела.
Вы можете помочь проекту,обновив её и убрав после этого данный шаблон.(10 февраля 2011)
  • MMX (англ.Multimedia Extensions) — коммерческое название набора SIMD-командIntel, предназначенного для ускорения кодирования/декодирования аудио- и видеоданных и впервые представленного 8 января 1997 года в процессорахIntel Pentium MMX.
  • MMX Extended — расширенный набор команд MMX, используемый в процессорахAMD иCyrix.
  • 3DNow! — расширение набора команд MMX процессоров AMD, начиная сAMD K6-2.
  • 3DNow! Extended — расширение набора команд 3DNow! процессоров AMD, начиная сAMD Athlon.
  • SSE (англ.Streaming SIMD Extensions) — набор 128-битных SIMD-команд Intel, впервые представленный в процессорах серииIntel Pentium III.
  • SSE2 — вторая версия набора SSE-команд Intel, впервые представленная в процессорах серииIntel Pentium 4.
  • SSE3 — третья версия набора SSE-команд Intel, впервые представленная 2 февраля 2004 года в процессорах Intel Pentium 4 на ядреPrescott.
  • SSSE3 — четвертая версия набора SSE-команд Intel, используемая в процессорахIntel Core 2 Duo.
  • SSE4 — пятая версия набора SSE-команд Intel, анонсированная 27 сентября 2006 года и представленная в 2007 году в процессорах архитектурыPenryn.
  • AVX (англ.Advanced Vector Extensions) — набор 256-битных SIMD-команд Intel, впервые представленный в 2010 году в процессорах архитектурыSandy Bridge.
  • AVX2
  • AVX512 — расширение системы команд при помощи кодировки с префиксом EVEX.

См. также

[править |править код]
Информация должна бытьпроверяема, иначе она может быть удалена. Вы можетеотредактировать статью, добавив ссылки наавторитетные источники в видесносок.(20 декабря 2012)
Перейти к шаблону «Наборы инструкций процессоров x86»
Intel
AMD
Cyrix
Перейти к шаблону «Технологии CPU»
Технологии цифровыхпроцессоров
Архитектура
Архитектура набора команд
Машинное слово
Параллелизм
Конвейер
Уровни
Потоки
Классификация Флинна
Реализации
Компоненты
Управление питанием
Источник —https://ru.wikipedia.org/w/index.php?title=SIMD&oldid=151120014
Категории:
Скрытые категории: