1. [Уики](https://feex.it/wiki/)
2. [Хардуер](https://feex.it/wiki/hardware/)
3. [Системи и архитектура](https://feex.it/wiki/hardware/system/)
4. SSE2

# SSE2

Архитектурна справка: Feex

SSE2 разширява 128-битовия XMM програмен модел с операции с плаваща запетая с двойна точност и целочислени операции. То е част от обичайната базова линия за x86-64, но не е съкращение за всяко по-късно разширение на SSE.

## Какво трябва да знаете

SSE2 разширява 128-битовия XMM програмен модел с операции с плаваща запетая с двойна точност и целочислени операции. То е част от обичайната базова линия за x86-64, но не е съкращение за всяко по-късно разширение на SSE.

## Как работи

Един 128-битов XMM регистър може да съдържа 2 стойности с двойна точност или целочислени елементи с различна ширина. SSE2 премества голяма част от целочислената SIMD работа в XMM регистри вместо модела за припокриване на MMX/x87. Скаларните и пакетираните форми, знакът, насищането и изискванията за подравняване остават специфични за инструкцията.

## Къде е полезно

Дадена математическа библиотека може да изчислява с двойки стойности с двойна точност, докато ядро за обработка на байтове може да сравнява или пренарежда пакетирани целочислени данни. Броят на елементите в даден регистър не е изявление за пропускателната способност на инструкциите или ускорението на дадено приложение.

## Как се проверява поддръжката и активирането

CPUID.01H:EDX бит 26 изброява SSE2. Потвърдете, че работещата среда запазва състоянието на XMM и че двоичната базова линия на приложението съвпада. Използвайте документирания наследен билд на приложението, когато текущият му билд изисква по-късно разширение.

SIMD функционалност описва инструкции, а не допълнителни ядра. Формата на инструкцията определя ширината на елемента, знака, закръгляването, подравняването и кои пътеки (lanes) взаимодействат. Софтуерът трябва да запазва регистровото състояние според ABI и да използва поддържана среда за изпълнение.

## Какво не гарантира тази функция

SSE2 не предполага SSE3, SSSE3, SSE4.1 или SSE4.2. Софтуер, компилиран за по-нова базова линия, може да се срине на иначе напълно функционална система с поддръжка на SSE2. Флагът SSE2 не е цялостна оценка за съвместимост с операционната система или приложението.

## Съвместимост и производителност на практика

По-късните наименования в семейството на SSE имат отделни битове за функционалност. За внедрен изпълним файл проверете пълния минимален набор от функционалности, включително библиотеките и стартиращия код. Резервният вариант е полезен само ако нито една неподдържана инструкция не се изпълнява преди стъпката за избор.

## Практически контролен списък за проверка

1. Запишете точния модел на процесора или платформата, както и използваните версии на приложението, операционната система и средата за изпълнение. Запазете точния текст на действителната грешка или изискване.
2. Проверете документацията от производителя за този точен модел, след което инспектирайте действителните възможности и активираното състояние в средата, където работи програмата.
3. Сравнете всяко изискване на избрания двоичен файл или бекенд. Подобно наименувана функция, псевдоним или общ технологичен етикет не са достатъчни.
4. Потвърдете, че приложението е избрало планираната реализация. Използвайте неговата документирана диагностика и поддържан резервен вариант, когато изискванията не са изпълнени.
5. Правете по една поддържана промяна наведнъж и повтаряйте същото работно натоварване. Запазете достъпни оригиналната конфигурация и плана за възстановяване.

## Ако функцията е посочена, но софтуерът не може да я използва

Започнете с точния компонент, който дава грешка. Хардуерната база данни описва записаните възможности; операционната система или хипервайзорът могат да предоставят различна ефективна среда. Грешка за невалидна инструкция (illegal-instruction) също изисква разследване на действителната сриваща се инструкция и компилацията на двоичния файл, тъй като повреда или несвързана неподдържана инструкция може да предизвика подобен симптом.

Инсталирайте версията на приложението, драйвера или средата за изпълнение, която се поддържа за точната платформа, и използвайте документираната от производителя базова или резервна компилация, ако е необходимо. Софтуерна актуализация не може да създаде инструкция, която липсва в процесора. Промените във фърмуера и политиките за сигурност трябва да следват процедурата на производителя на системата и план за възстановяване, а не общи съвети за оптимизация.

## Свързани функции и полезни разграничения

[SSE](https://feex.it/wiki/l/bg/hardware/system/sse/) · [SSE3](https://feex.it/wiki/l/bg/hardware/system/sse3/) · [SSE4.2](https://feex.it/wiki/l/bg/hardware/system/sse4-2/) · [x86-64-v2](https://feex.it/wiki/l/bg/hardware/system/x86-64-v2/)

## Източници и обхват на това обяснение

[Intel 64 and IA-32 Architectures Software Developer's Manual](https://www.intel.com/content/www/us/en/developer/articles/technical/intel-sdm.html) · [x86-64 psABI: нива на процесорна архитектура и микроархитектура](https://gitlab.com/x86-psABIs/x86-64-ABI/-/blob/master/x86-64-ABI/low-level-sys-info.tex)

Тези източници установяват архитектурното поведение и софтуерните изисквания. Те не проверяват независимо всяка стойност на параметър на свързана страница за хардуерен модел. За поддръжка на даден модел използвайте данните от производителя на съответната страница и проверете ефективната системна конфигурация. Тази статия не предоставя бенчмарк, сертификация или дата на независим преглед.

## Свързани

Тези обекти са свързани с тази статия. Типът се показва на всяка връзка.

[SSE: Архитектурна справка](https://feex.it/wiki/l/bg/hardware/system/sse/)[SSE3: Архитектурна справка](https://feex.it/wiki/l/bg/hardware/system/sse3/)[SSE4.2: Архитектурна справка](https://feex.it/wiki/l/bg/hardware/system/sse4-2/)[x86-64-v2: Архитектурна справка](https://feex.it/wiki/l/bg/hardware/system/x86-64-v2/)

## Източници и проверка

Редакционна собственост: Feex. Не е записана дата на независим преглед. [Как проучваме](https://feex.it/wiki/research/).

- [Intel 64 and IA-32 Architectures Software Developer's Manual ](https://www.intel.com/content/www/us/en/developer/articles/technical/intel-sdm.html)· Томове 1 и 2 описват посочените семейства инструкции и CPUID; Том 3 описва състоянието, страницирането, VMX и контролите за защита. Документацията за архитектурата не гарантира поддръжка за конкретен модел.
- [x86-64 psABI: нива на процесорна архитектура и микроархитектура ](https://gitlab.com/x86-psABIs/x86-64-ABI/-/blob/master/x86-64-ABI/low-level-sys-info.tex)· Машинен интерфейс, процесорна архитектура: базова и кумулативна таблица с функции за v2/v3/v4, проверки на състоянието на ОС и препоръки за внедряване.

## Беше ли полезна тази статия?

Достатъчно е "да" или "не". Изберете причина, ако желаете, или добавете кратка бележка.

Бързи факти

Кратката идентичност на тази страница. Спецификациите, източниците и пълната история остават в статията.

---

Source: [Canonical Feex Wiki page](https://feex.it/wiki/l/bg/hardware/system/sse2/)

[Developer guide](https://feex.it/wiki/developers/) | [API policy](https://feex.it/developers/api-policy/) | [Agent guidance](https://feex.it/wiki/llms.txt)
