Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
міні-шпори - v3.doc
Скачиваний:
4
Добавлен:
01.09.2019
Размер:
834.05 Кб
Скачать

3 Питання з екзамена в якоїсь групи з попередніх років :

1)Приклади використання команд simd

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. SSSE3 - набір SIMD-інструкцій, що використовується в процесорах Intel Core 2 Duo.

  • SSE4 - нова версія SIMD-розширення Intel. Анонсований 27 вересня 2006 року. Представлений у 2007 році процесорах серії Penryn.

  • AVX - анонсована версія SIMD-розширення Intel, яка буде представлена в 2010 році в процесорах архітектури Sandy Bridge.

SIMD (single instruction stream / multiple data stream) – одиночний потік команд і множинний потік даних. Ці системи звичайно мають велику кількість процесорів, від 1024 до 16384, які можуть виконувати одну і ту ж інструкцію щодо різних даних в жорсткій конфігурації. Єдина інструкція паралельно виконується над багатьма елементами даних. Прикладами SIMD-машин є системи CPP DAP, Gamma II і Quadrics Apemille. Іншим підкласом SIMD-систем є векторні комп'ютери. Векторні комп'ютери маніпулюють масивами схожих даних подібно до того, як скалярні машини обробляють окремі елементи таких масивів. Це робиться за рахунок використання спеціально сконструйованих векторних центральних процесорів. Коли дані обробляються за допомогою векторних модулів, результати можуть бути видані на один, два або три такти частотогенератора (такт частотогенератора є основним тимчасовим параметром системи). При роботі у векторному режимі векторні процесори обробляють дані практично паралельно, що робить їх у декілька разів швидшими, ніж при роботі в скалярному режимі. Прикладами систем подібного типа є, наприклад, комп'ютери Hitachi S3600.