Розділ IV. Розширення SSE, SSE2, SSE3 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Розділ IV. Розширення SSE, SSE2, SSE3



 

SSE (Streaming SIMD Extensions) - розширення інструкцій процесора для потокової обробки в режимі SIMD (Single Instruction Multiple Data), тобто коли потрібно застосовувати однотипні операції до потоку даних.

Розширення SSE розроблено компанією Intel і було вперше застосовано в процесорі Intel Pentium III з ядром Katmai. Звідси початкове назва KNI (Katmai New Instructions). Технологія SSE дозволила подолати проблеми MMX - при використанні MMX неможливо було одночасно використовувати інструкції співпроцесора, так як його регістри задіяні для MMX і роботи з речовими числами.

У загальному випадку, до архітектури процесора додається ряд самих інструкцій і кілька 128-бітних регістрів з різною інтерперетаціей. Тим не менш, хоча спочатку кожен регістр трактується як два значення з плаваючою точкою подвійної точності (2 * 64-біт), операції можуть застосовуватися практично до всіх типів, "вміщує" в 16 байт:

Розширення процесорів ММХ - SSE, та наступні версії SSE2, SSE3 має наступні основні переваги у порівнянні з попередником:

Більш велике розширення і високу якість перегляду зображень і маніпуляції для графічних програм;

-   Високоякісне аудіо, відео у форматі MPEG2, а також одночасне кодування і декодування MPEG2 для мультимедійних додатків;

    Зниження завантаження процесора для розпізнавання мовлення, а також високу точність і малий час відгуку при роботі розпізнавання мови програмного забезпечення;

SSEx інструкції особливо корисні при декодування MPEG2, який є стандартною схемою використовується на дисках DVD-відео. Процесори обладнані SSE мають більшу здатність до декодування MPEG2 в програмному забезпеченні на повній швидкості, не вимагаючи додаткової MPEG2 карти.

У лютому 1999 року корпорація Intel представила процесор Pentium III на базі MMX з розшеренням Streaming SIMD Extensions (SSE). Celeron 533A і подальші версії Celeron процесорів на базі ядра Pentium III ​​також підтримують SSE інструкцій. Раніше Pentium II і Celeron 533 і нижче (на основі Pentium II ядро) не підтримують SSE.

Одним з основних переваг SSE в порівнянні зі звичайним MMX є те, що SSE підтримує операцію одиничної точності з плаваючою комою, так звані SIMD операції, які є вузьким місцем в обробці 3D-графіки. Так само, як з простим MMX, SIMD підтримує багатопотоковість. Зокрема, SSE підтримує до чотирьох операцій з плаваючою комою за один такт, тобто одна інструкція може працювати над чотирмя частини даних одночасно. Інструкції SSE з плаваючою точкою можуть використовуватись з MMX інструкціями, без втрати продуктивності.

Для того, щоб інструкції SSE були ефективними, необхідно щоб ці інструкції були передбаченими програмним забезпеченням, та SSE-додатками. Більшість компаній що пишуть графічні і звукові додатки відповідного програмного забезпечення сьогодні ініціалізують і використовують можливості SSE. Наприклад, потужні графічні додатки, такі як Adobe Photoshop підтримують інструкцій SSE для підвищення продуктивності процесорів оснащених SSE. Microsoft включає підтримку SSE в DirectX 6.1, а потім відео та звукових драйверів, які поставляються з Windows 98 Second Edition, Windows Me, Windows NT 4.0 (з пакетом оновлень 5 або пізнішої версії), Windows 2000 і Windows XP.є розширенням MMX, SSE2 є розширенням SSE і SSE3 є розширенням SSE2. Таким чином, процесори, що підтримують SSE3 також підтримують набір інструкцій SSE2, що підтримують SSE, що підтримує оригінальні інструкції MMX.включає в себе 70 нових інструкцій для графіки та обробки звуку у порівнянні з MMX. SSE включає в архітектуру процесора вісім 128-бітних регістрів і набір інструкцій, які працюють із скалярними і упакованими типами даних. Перевага в продуктивності досягається в тому випадку, коли необхідно зробити одну і ту ж послідовність дій над різними даними. В такому випадку блоком SSE здійснюється розпаралелювання обчислювального процесу між даними.був представлений в листопаді 2000 року разом з процесором Pentium 4, і додає 144 додаткових інструкцій SIMD. SSE2 також включає в себе всі попередні інструкції MMX і SSE. SSE2 використовує вісім 128-бітних регістра (xmm0 до xmm7), що увійшли до архітектури x86 з вводом розширення SSE, кожний з яких трактується як послідовність 2 значень з плаваючою точкою подвійної точності. SSE2 включає в себе набір інструкцій, котрий виконує операції зі скалярними і упакованими типами даних. Також SSE2 містить інструкції для потокової обробки цілочислових даних в тих же 128-бітних xmm регістрах, що робить це розширення більш прийнятним для цілочислових обрахунків, ніж використання набору інструкцій MMX, що з'явилися набагато раніше. Перевага у швидкості обчислень досягається в тому випадку, коли необхідно виконати одну і ту саму послідовність дій над різними даними.була введена в лютому 2004 року разом з Pentium 4 Prescott процесора, і додає 13 нових інструкцій SIMD для поліпшення складної математики, графіки, кодування відео і синхронізації потоків. SSE3 також включає в себе всі попередні MMX, SSE, SSE2 і інструкції. Найбільш помітна зміна - можливість горизонтальної роботи з регістрами. Якщо говорити більш конкретно, додані команди додавання і віднімання кількох значень, що зберігаються в одному регістрі. Ці команди спростили ряд DSP і 3D-операцій. Існує також нова команда для перетворення значень з плаваючою комою в цілі без необхідності вносити зміни в глобальному режимі округлення.

 


Висновки

 

Отже оперативна пам’ять комп’ютера відіграє дуже важливу роль у комп’ютері. Вона призначена для тимчасового зберігання даних і команд, необхідних процесору для виконання ним операцій. Оперативна пам'ять передає процесору дані безпосередньо, або через кеш-пам'ять. Еволюція оперативної пам’яті носила яскраво виражений спадкоємний характер - кожне нове покоління пам'яті практично повністю наслідувало архітектуру попереднього, включаючи, в тому числі, і властиві йому обмеження. Ядро ж пам'яті (за винятком вдосконалення проектних норм таких, наприклад, як ступінь інтеграції) і зовсім не зазнавало жодних принципових змін.

Пам'ять ставала вузьким місцем комп'ютера, а, як відомо, швидкодія всієї системи визначається швидкодією самого повільного її елемента. І ось кілька років тому хвиля технологічного буму докотилася і до оперативної пам'яті. Швидке удосконалення оперативної пам'яті дозволило крім її удосконалення, значно знизити ціну на неї.

Пам'ять ставала вузьким місцем комп'ютера, а, як відомо, швидкодія всієї системи визначається швидкодією самого повільного її елемента. І ось кілька років тому хвиля технологічного буму докотилася і до оперативної пам'яті. Швидке удосконалення оперативної пам'яті дозволило крім її удосконалення, значно знизити ціну на неї.

Фактично, поява процесорів Pentium MMX ознаменувала той факт, що "залізо" і програми повинні крокувати в ногу. Як до цього звичайно розробляли і упроваджували нові типи процесорів - спочатку з'являлася нова мікросхема з оригінальною архітектурою, а потім для неї створювалися програми, в яких ураховувалися особливості нового процесора. Причому, розробники "заліза" виходили з своїх уявлень про призначення нового процесора, а програмісти самостійно намагалися використовувати нові можливості для вдосконалення своїх продуктів. А ось процесор Pentium MMX був розроблений під конкретний програмний продукт - операційну систему Windows 95.

Якщо заглянути в минуле, то можна пригадати, що всі ігри з відмінною графікою працювали в DOS, не використовуючи можливості Windows. Тобто користувач, працюючи в середовищі Windows, запускав сесію DOS, а вже в ній починала працювати "наворочена" гра. Значення такого багатоступінчастого підходу було в тому, що швидкість відображення складної графіки в Windows 95 виявилася вкрай низка. Максимум графічних можливостей для Windows 95 - це досить популярна гра "пасьянс".

Для прискорення роботи з графікою в процесорі Pentium MMX з'явилися додаткові регістри і типи даних, а також інструкції (команди) для їх використання.

Не дивлячись на переваги технології MMX, в ній виявилися досить серйозні недоліки. В першу чергу, це неможливість одночасного використання співпроцесора і інструкцій MMX, оскільки регістри MMX відображалися на регістри співпроцесора. Якщо не враховувати таку особливість при написанні програми, то замість прискорення роботи можна було отримати різке падіння продуктивності комп'ютера. Окрім технології MMX, в процесорах Pentium MMX застосовані технології, які були розроблені для процесора Pentium Pro, наприклад, більш ефективний механізм прогнозів.

Комп'ютери з процесором Pentium MMX до цих пір ефективно використовуються з операційними системами Windows 95/98, показуючи цілком достойну продуктивність в офісних додатках.



Поделиться:


Последнее изменение этой страницы: 2020-03-26; просмотров: 189; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.129.22.135 (0.005 с.)