SIMD
Одиночный поток команд (single instruction) |
Множество потоков команд (multiple instruction) | |
---|---|---|
Одиночный поток данных (single data) |
SISD (ОКОД) |
MISD (МКОД) |
Множество потоков данных (multiple data) |
SIMD (ОКМД) |
MIMD (МКМД) |
SIMD (англ. single instruction, multiple data — одиночный поток команд, множественный поток данных, ОКМД) — принцип компьютерных вычислений, позволяющий обеспечить параллелизм на уровне данных.
SIMD-компьютеры состоят из одного командного процессора (управляющего модуля), называемого контроллером, и нескольких модулей обработки данных, называемых процессорными элементами. Управляющий модуль принимает, анализирует и выполняет команды. Если в команде встречаются данные, контроллер рассылает на все процессорные элементы команду, и эта команда выполняется на нескольких или на всех процессорных элементах. Каждый процессорный элемент имеет свою собственную память для хранения данных. Одним из преимуществ данной архитектуры считается то, что в этом случае более эффективно реализована логика вычислений. До половины логических инструкций обычного процессора связано с управлением выполнением машинных команд, а остальная их часть относится к работе с внутренней памятью процессора и выполнению арифметических операций. В SIMD компьютере управление выполняется контроллером, а «арифметика» отдана процессорным элементам.
SIMD-процессоры называются также векторными.
SIMD-расширения, используемые в процессорах архитектуры x86
- MMX — Multimedia Extensions. Коммерческое название дополнительного набора инструкций, выполняющих характерные для процессов кодирования/декодирования потоковых аудио/видео данных действия за одну машинную инструкцию. Впервые появился в процессорах Pentium MMX.
- MMX Extended — расширенный набор инструкций MMX, используемый в процессорах AMD и Cyrix.
- 3DNow! — расширение набора команд MMX процессоров AMD, начиная с AMD K6-2.
- 3DNow! Extended — расширение набора команд 3DNow! процессоров AMD, начиная с AMD Athlon.
- SSE — набор инструкций, разработанный Intel, и впервые представленный в процессорах серии Pentium III как ответ на аналогичный набор инструкций 3DNow! от AMD, который был представлен годом раньше.
- SSE2 — набор инструкций, разработанный Intel, и впервые представленный в процессорах серии Pentium 4.
- SSE3 — третья версия SIMD-расширения Intel, потомок SSE, SSE2 и x87. Представлен 2 февраля 2004 года в ядре Prescott процессора Pentium 4.
- SSSE3 — набор SIMD-инструкций, используемый в процессорах Intel Core 2 Duo.
- SSE4 — новая версия SIMD-расширения Intel. Анонсирован 27 сентября 2006 года. Представлен в 2007 году процессорах серии Penryn.
- AVX — анонсированная версия SIMD-расширения Intel, которая будет представлена в 2010 году в процессорах архитектуры Sandy Bridge.
Процессор | MMX | EMMX | 3DNow! | SSE | E3DNow! | SSE2 | SSE3 |
---|---|---|---|---|---|---|---|
Intel Pentium II | + | — | — | — | — | — | — |
Intel Celeron до 533 MHz | + | — | — | — | — | — | — |
Intel Pentium III | + | — | — | + | — | — | — |
Intel Celeron 533—1400 MHz | + | — | — | + | — | — | — |
Intel Pentium 4 | + | — | — | + | — | + | +/—* |
Intel Celeron от 1700 MHz | + | — | — | + | — | + | — |
Intel Celeron D | + | — | — | + | — | + | + |
Intel Pentium 4 eXtreme Edition | + | — | — | + | — | + | +/—* |
Intel Pentium eXtreme Edition | + | — | — | + | — | + | + |
Intel Pentium D | + | — | — | + | — | + | + |
AMD K6 | + | + | — | — | — | — | — |
AMD K6-2 | + | + | + | — | — | — | — |
AMD K6-III | + | + | + | — | — | — | — |
AMD Athlon | + | + | + | — | + | — | — |
AMD Duron до 900 MHz | + | + | + | — | + | — | — |
AMD Athlon XP | + | + | + | + | + | — | — |
AMD Duron от 1000 MHz | + | + | + | + | + | — | — |
AMD Athlon 64 / Athlon FX | + | + | + | + | + | + | +/—* |
AMD Sempron | + | + | + | + | + | +/—* | +/—* |
AMD Athlon 64 X2 | + | + | + | + | + | + | + |
VIA C3 | + | + | +/—* | +/—* | — | — | — |
Это заготовка статьи об аппаратном обеспечении. Помогите Википедии, дополнив её. |