Architektura systemów komputerowych. dr Artur Bartoszewski

Podobne dokumenty
Architektura systemów komputerowych. dr Artur Bartoszewski

Budowa i zasada działania komputera. dr Artur Bartoszewski

Architektura systemów komputerowych. dr Artur Bartoszewski

Organizacja typowego mikroprocesora

Architektura Systemów Komputerowych. Rozwój architektury komputerów klasy PC

ARCHITEKTURA PROCESORA,

Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa Wstęp... 11

Układ sterowania, magistrale i organizacja pamięci. Dariusz Chaberski

RDZEŃ x86 x86 rodzina architektur (modeli programowych) procesorów firmy Intel, należących do kategorii CISC, stosowana w komputerach PC,

Mikroprocesory rodziny INTEL 80x86

Logiczny model komputera i działanie procesora. Część 1.

Wydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle. Krzysztof Banaś, Obliczenia wysokiej wydajności.

Architektura systemów komputerowych

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

Budowa komputera Komputer computer computare

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

Architektura komputerów

Pamięć wirtualna. Przygotował: Ryszard Kijaka. Wykład 4

System pamięci. Pamięć wirtualna

Architektura komputerów

Budowa Mikrokomputera

UTK ARCHITEKTURA PROCESORÓW 80386/ Budowa procesora Struktura wewnętrzna logiczna procesora 80386

Architektura potokowa RISC

LEKCJA TEMAT: Współczesne procesory.

LEKCJA TEMAT: Zasada działania komputera.

Architektura komputerów

Sprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer

PROGRAMOWANIE WSPÓŁCZESNYCH ARCHITEKTUR KOMPUTEROWYCH DR INŻ. KRZYSZTOF ROJEK

Procesory. Schemat budowy procesora

Budowa systemów komputerowych

Architektura systemów komputerowych. dr Artur Bartoszewski

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Architektura komputerów

Przetwarzanie potokowe pipelining

Procesor ma architekturę rejestrową L/S. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset nand Rx, Ry, A add Rx, #1, Rz store Rx, [Rz]

Architektura komputera. Cezary Bolek. Uniwersytet Łódzki. Wydział Zarządzania. Katedra Informatyki. System komputerowy

Architektura komputerów

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Programowanie Niskopoziomowe

Systemy operacyjne. Wprowadzenie. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

Magistrala systemowa (System Bus)

System pamięci. Pamięć wirtualna

Architektura mikroprocesorów z rdzeniem ColdFire

dr inż. Jarosław Forenc

System pamięci. Pamięć wirtualna

UTK Można stwierdzić, że wszystkie działania i operacje zachodzące w systemie są sterowane bądź inicjowane przez mikroprocesor.

Architektura systemów komputerowych. Przetwarzanie potokowe I

Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych

Architektura komputerów

Wykład III. Procesor. Studia Podyplomowe INFORMATYKA Architektura komputerów

Architektura komputera. Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt

MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW

Wstęp do informatyki. System komputerowy. Magistrala systemowa. Architektura komputera. Cezary Bolek

Mikroprocesor Operacje wejścia / wyjścia

Wydajność obliczeń a architektura procesorów. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1

Systemy operacyjne i sieci komputerowe Szymon Wilk Superkomputery 1

Architektura komputerów

Zarządzanie zasobami pamięci

Sprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer

Architektura systemów komputerowych. dr Artur Bartoszewski

Wykład I. Podstawowe pojęcia. Studia Podyplomowe INFORMATYKA Architektura komputerów

Architektura Systemów Komputerowych

Systemy operacyjne. wykład dr Marcin Czarnota laboratorium mgr Radosław Maj

Architektura komputerów egzamin końcowy

Stronicowanie w systemie pamięci wirtualnej

Struktura i działanie jednostki centralnej

Wydajność systemów a organizacja pamięci. Krzysztof Banaś, Obliczenia wysokiej wydajności. 1

Projektowanie. Projektowanie mikroprocesorów

dr inż. Rafał Klaus Zajęcia finansowane z projektu "Rozwój i doskonalenie kształcenia i ich zastosowań w przemyśle" POKL

Architektura systemów komputerowych. dr Artur Bartoszewski

Architektura systemu komputerowego. Działanie systemu komputerowego. Przerwania. Obsługa przerwań (Interrupt Handling)

3 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK SP.06 Rok akad. 2011/ / 22

Zrównoleglenie i przetwarzanie potokowe

Zarządzanie pamięcią w systemie operacyjnym

Zarządzanie pamięcią operacyjną

Wydajność systemów a organizacja pamięci. Krzysztof Banaś, Obliczenia wysokiej wydajności. 1

Rys. 1. Podłączenie cache do procesora.

System obliczeniowy laboratorium oraz. mnożenia macierzy

Zarządzanie pamięcią operacyjną

Architektura komputerów, Informatyka, sem.iii. Rozwiązywanie konfliktów danych i sterowania w architekturze potokowej

Wydajność systemów a organizacja pamięci. Krzysztof Banaś, Obliczenia wysokiej wydajności. 1

Programowanie współbieżne Wykład 2. Iwona Kochańska

Układ wykonawczy, instrukcje i adresowanie. Dariusz Chaberski

Architektura Systemów Komputerowych

Architektura komputera

Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne

Larrabee GPGPU. Zastosowanie, wydajność i porównanie z innymi układami

Architektura mikroprocesorów TEO 2009/2010

PAMIĘCI. Część 1. Przygotował: Ryszard Kijanka

Wykład 7. Zarządzanie pamięcią

Architektura komputerów

Hierarchia pamięci w systemie komputerowym

Architektura komputerów

dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1

Schematy zarzadzania pamięcia

Struktura i funkcjonowanie komputera pamięć komputerowa, hierarchia pamięci pamięć podręczna. System operacyjny. Zarządzanie procesami

Technika mikroprocesorowa. Linia rozwojowa procesorów firmy Intel w latach

Architektura Systemów Komputerowych

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

Transkrypt:

Architektura systemów komputerowych dr Artur Bartoszewski

Procesor część II

Rejestry procesora dostępne programowo A B D H PC SP F C E L A Akumulator Zawiera jeden z operandów działania i do niego przekazywany jest wynik B,C,D,E,H,L rejestry robocze (uniwersalne) SP - wskaźnik stosu F - rejestr znaczników PC - licznik rozkazów

Rejestry procesora dostępne programowo Licznikiem rozkazów (PC) nazywamy rejestr mikroprocesora zawierający adres komórki pamięci, w której przechowywany jest rozkaz przeznaczony do wykonywania jako następny Stosem nazywany wyróżniony obszar pamięci używany według następujących reguł: 1. informacja zapisywana jest do kolejnych komórek, żadnego adresu nie wolno pominąć, 2. odczyt informacji następuje w kolejności odwrotnej do zapisu, 3. informuje odczytujemy z ostatnio zapisanej komórki, natomiast zapisujemy do pierwszej wolnej.

Stos Stosem nazywany wyróżniony obszar pamięci używany według następujących reguł: 1. Informacja zapisywana jest do kolejnych komórek, żadnego adresu nie wolno pominąć, 2. Odczyt informacji następuje w kolejności odwrotnej do zapisu, 3. Informuje odczytujemy z ostatnio zapisanej komórki, natomiast zapisujemy do pierwszej wolnej. 1; 2; 3; 4; 5 5 4 3 2 5; 4; 3; 2; 1 1 5

Stos Stos jest rodzajem pamięci (buforem) typu LIFO (ang. Last In First Out). Stos ma stały wymiar i położenie w pamięci. Konieczna jest więc tylko znajomość adresu pierwszej wolnej komórki stosu (wierzchołka stosu). Do tego służy rejestr SP - wskaźnik stosu. Wskaźnik stosu 5 4 3 2 1 Wskaźnikiem stosu nazywamy rejestr zawierający adres ostatnio zapisanej komórki (wierzchołka) stosu

Rejestry procesora dostępne programowo Stos jest rodzajem pamięci (buforem) typu LIFO (ang. Last In First Out). Stos ma stały wymiar i położenie w pamięci. Konieczna jest więc tylko znajomość adresu pierwszej wolnej komórki stosu (wierzchołka stosu). Do tego służy rejestr SP - wskaźnik stosu. Wskaźnikiem stosu nazywamy rejestr zawierający adres ostatnio zapisanej komórki (wierzchołka) stosu Stos wykorzystywany jest najczęściej do zapamiętania adresu bazowego programu przy wywołaniu podprogramu.

Wykorzystanie stosu do wywołania podprogramów

Zasada przetwarzania potokowego Przypomnienie: cykl rozkazowy składa się z wielu faz w najprostszej wersji z fazy pobrania i wykonania rozkazu

Zasada przetwarzania potokowego Jeżeli w procesorze wydzielić dwa stanowiska obsługi" - jedno dla pobierania rozkazów, a drugie dla ich wykonywania (rys), wówczas można równocześnie realizować obie fazy cyklu rozkazowego: pobieranie następnego rozkazu odbywa się w czasie, gdy jest wykonywany rozkaz poprzedni. Takie działanie, analogiczne do obróbki na taśmie produkcyjnej, nazywa się potokowym (pipeline).

Dwustopniowy potok rozkazów Zakładając, że czas trwania każdej fazy cyklu jest taki sam, uzyskuje się dwukrotne skrócenie czasu kończenia kolejnych rozkazów (uzyskiwania wyników), mimo że sumaryczny czas cyklu pozostaje niezmieniony.

Powody przestojów w przetwarzaniu potokowym Wystąpienie w programie rozgałęzień zależnych od efektów poprzedzającej operacji (skoków warunkowych) - w takim przypadku kolejny pobrany rozkaz może okazać się nieprzydatny i trzeba pobierać inny, wskazany przez wykonywany rozkaz skoku. Następuje wówczas opróżnienie potoku (flush) powodujące chwilowy przestój jednostki wykonawczej, Z kolei przestoje jednostki pobierającej rozkazy pojawiają się wtedy, gdy samo wykonanie rozkazu wymaga kontaktu z pamięcią dla odczytania lub zapisania argumentów.

Potoki wielostopniowe Współczesne procesory stosują wielostopniowe przetwarzanie potokowe (liczba stopni wynosi od kilku do kilkunastu), a dla zredukowania strat wydajności wprowadza się rozwiązania sprzętowo-programowe, takie jak równoczesny dostęp do pamięci rozkazów i pamięci danych czy dynamiczne przewidywanie skoków.

Potok pięciostopniowy Blok IF pobiera rozkazy, odczytując pamięć I-cache według licznika rozkazów. Słowo rozkazowe jest następnie przekazywane do bloku dekodowania ID i powoduje odczytanie argumentów operacji z właściwych rejestrów i przekazanie ich do bloku wykonawczego EX/AC. Blok ten zawiera jednostkę arytmetyczno-logiczną i wykonuje odpowiednie działanie na argumentach. Stopień MA obsługuje pamięć danych i jest aktywny tylko w rozkazach load i store, na jego wyjściu pojawia się słowo odczytane z D-cache lub wynik przekazany ze stopnia EX. W ostatniej fazie cyklu, WB następuje wpisanie wyniku do rejestru docelowego.

Potok pięciostopniowy Każdym cyklu jest przetwarzanych jednocześnie 5 rozkazów znajdujących się na różnych etapach realizacji (a kolejne rozkazy są kończone w każdym takcie zegara.

Konflikty w przetwarzaniu potokowym Konflikt zasobów (structural hazard) powstaje wówczas, gdy w tym samym czasie rozkazy będące w różnych fazach swojego cyklu korzystają z tych samych zasobów komputera

Konflikty w przetwarzaniu potokowym Konflikt danych (data hazard) polega na tym, że zmiany danych w rejestrach lub w pamięci następują w innym czasie, niż wynika to z logicznego następstwa rozkazów w programie. Można uniknąć przestoju potoku, gdyż wprawdzie zawartość rejestru nie została zaktualizowana, ale w takcie 3. jest już dostępna na wyjściu bloku EX i można ją przekazać jako argument kolejnego rozkazu - wymaga to utworzenia w strukturze potoku drogi na skróty" i układu wykrywającego tę sytuację

Konflikty w przetwarzaniu potokowym Najbardziej kłopotliwe, trudne do usunięcia i obniżające efektywność przetwarzania potokowego są konflikty sterowania (control hazard). Powstają one przy wykonywaniu rozkazów rozgałęzienia programu, które z natury rzeczy zakłócają sekwencję rozkazów, a jeżeli są późno zidentyfikowane, to powodują konieczność zapełniania potoku od nowa, co skutkuje stratą kilku cykli (tzw. kara za skok").

Procesory logiczne technologia HT Rejestry Rejestry Aparat wykonawczy (ALU) Pamięć podręczna (CACHE) Magistrala systemowa Pamięć operacyjna (RAM) Hyper-Treading (HT) procesor posiada dwa zestawy rejestrów dzięki czemu emuluje obecność dwóch układów nazywanych procesorami logicznymi Pamiętajmy: program widzi procesor jako zestaw rejestrów.

Procesory fizyczne - rdzenie Rejestry Rejestry Rejestry Rejestry Aparat wykonawczy Aparat wykonawczy Aparat wykonawczy Aparat wykonawczy Pamięć podręczna (CACHE) CACHE CACHE Magistrala systemowa Magistrala systemowa Pamięć operacyjna (RAM) Pamięć operacyjna (RAM)

Procesory fizyczne - rdzenie W praktyce spotykam też hybrydę dwu powyższych schematów. W procesorze Intel Core i7 każdy z rdzeni posiada własną pamięć podręczną poziomów L1 i L2, natomiast pamięć poziomu L3 jest wspólna. L2 L2 L2 L2 Źródło: http://nvision.pl/img/art/procesory/intel_core_i7/intel_core_i7-2.jpg

Procesory fizyczne rdzenie + HT Rejestry Aparat wykonawczy CACHE L2 Rejestry Rejestry Rejestry CACHE L3 Aparat wykonawczy CACHE L2 Magistrala systemowa Pamięć operacyjna (RAM) W najnowszych procesorach (Core i7) dla każdego z fizycznych rdzeni zastosowano technologię Hyper- Treading. Oznacza to, że każdy rdzeń widziany jest jako dwa procesory logiczne i może robić dwie rzeczy naraz, np. czterordzeniowy procesor Core i7 może wykonywać 8 wątków jednocześnie.

Pamięć CACHE CACHE zewnętrzny CACHE wbudowany 23

Zasoby pamięciowe komputera

Zasoby pamięciowe komputera System zarządzania pamięcią zapewnia dostęp procesora do tych różnorodnych zasobów w sposób niewidoczny dla programu użytkowego. Zadanie to jest realizowane sprzętowo na poziomie pamięci cache i programowo - przez system operacyjny - na poziomie pamięci wirtualnej. W obu przypadkach obowiązuje ta sama koncepcja: niewielki fragment pamięci wyższego poziomu jest w miarę potrzeby kopiowany do pamięci niższego poziomu, bliższego procesora.

poziomy pamięci cache Pamięci wielodrożne są często stosowane w różnych konfiguracjach i na różnych poziomach hierarchii - obecnie w procesorach spotyka się pamięci cache wielopoziomowe: poziom pierwszy (L1), zintegrowany z procesorem, stanowią osobne pamięci rozkazów (l-cache) i danych (D-cache), poziom drugi (L2) zajmuje większa i wolniejsza wspólna pamięć również umieszczona w module procesora, trzeci poziom cache (L3) można dołączyć w osobnym module.

Organizacja pamięci CHAHE CPU CACHE L1 CACHE L2 CACHE L3 RAM Granice kości krzemowej procesora

Architektura Look-aside ( patrz w bok ) W układzie konwencjonalnym (często określany nazwą Look- Aside) którym mamy do czynienia w procesorach x86 i Pentium, pamięć podręczna dołączona jest równolegle do magistrali pamięciowej. procesor odwołuje do pamięci cache wykorzystując magistralę pamięciową. częstotliwości pracy cache jest więc taka sama jak pamięci głównej, jedynie czas dostępu może ulec skróceniu.

Pamięć buforowa cache Działanie pamięci buforowej cache, (zwanej pamięcią podręczną): prawie zawsze, kiedy procesor poszukuje jakiegoś miejsca w pamięci, jego kopia jest w cache - przypadek taki nazywa się trafieniem (hit); jeżeli odczytywany adres nie jest odwzorowany w cache, czyli próba odczytu jest chybiona (miss); wówczas następuje odczyt z pamięci głównej, ale równocześnie do cache jest przepisywany blok (zwany linią) kilku lub kilkunastu sąsiednich bajtów wraz z ich adresem. W ten sposób chybienia powodują uzupełnianie pamięci buforowej aż do momentu, kiedy nie będzie w niej miejsca i wtedy usuwa się jedną linię - np. tę, która była najdawniej używana.

Pamięć buforowa cache Efektywność pamięci buforowej określa tzw. współczynnik trafień, czyli procent trafionych prób odczytu pamięci. W rzeczywistych systemach współczynnik trafień wynosi zależnie od programu 97% - 99%.

Architektura Look-throught ( patrz w bezpośrednio ) Drugi sposób podłączenia pamięci CACHE określany jest mianem Look- Through lub Inline Cache. Procesor, zanim sięgnie do pamięci głównej, napotyka układ pamięci podręcznej. Ta z kolei, sprzężona jest z pamięcią główną poprzez właściwą magistralę pamięciową. Cache może więc być taktowany z prędkością większą niż sama magistrala pamięciowa, na przykład dwa razy szybciej - takie rozwiązanie zastosowano w procesorze Pentium II.

Pamięć buforowa cache W e współczesnej architekturze procesorów nie jest już możliwe odwołanie się procesora do pamięci RAM bez pośrednictwa pamięci CAHE

Pamięć buforowa cache Ponieważ w pamięci buforowej znajdują się fragmenty pochodzące z różnych, niespójnych, obszarów przestrzeni adresowej, muszą w niej być skopiowane nie tylko dane, ale i ich adresy. W katalogu adresów mogą być zapisane również inne informacje dotyczące np. aktywności poszczególnych linii, które są używane przez algorytmy usuwania niepotrzebnych bloków.

Zasoby pamięciowe komputera

Pamięć wirtualna Pamięć wirtualna, ma stwarzać wrażenie, iż każde zadanie dysponuje pamięcią o wielkości wynikającej z dostępnego formatu adresu. W rzeczywistości fizyczna pojemność pamięci głównej (RAM) jest mniejsza i zamierzony efekt może być osiągnięty, jeżeli do pamięci głównej będą w porę przenoszone potrzebne fragmenty wirtualnej przestrzeni adresowej fizycznie umieszczone w odpowiednio dużej pamięci zewnętrznej (dyskowej). Zadanie to jest realizowane metodą tzw. stronicowania (paging) z użyciem środków sprzętowych wbudowanych w strukturę systemu zarządzania pamięcią procesora oraz środków programowych, którymi dysponuje system operacyjny.

Pamięć wirtualna Informacja o aktualnym położeniu wszystkich stron wirtualnych jest przechowywana przez system operacyjny w katalogu zwanym tablicą stron.

Pamięć wirtualna Ponieważ translacja adresu wirtualnego następuje przy każdym kontakcie z pamięcią (pobranie rozkazu, odczytanie i zapisanie danych), musi odbywać się na tyle szybko, żeby nie spowalniać cyklu rozkazowego. Z tego względu część tablicy stron jest realizowana w postaci pamięci cache zwanej TLB (translation lookaside buffer) zawierającej ostatnio używane pozycje katalogu stron.

Pamięć wirtualna mechanizm stronicowania pozwala traktować pamięć masową jako przedłużenie pamięci operacyjnej; część kodu programu znajduję się w pamięci operacyjnej, pozostała w pamięci masowej, jeżeli w trakcie realizacji programu następuje odwołanie do pamięci masowej, blok danych z tej pamięci ładowany jest do pamięci RAM, a inny blok danych z pamięci RAM do pamięci masowej (dla zwolnienia miejsca); długie adresy (wirtualne) zawarte w programie tłumaczone są na krótsze (fizyczne) adresy pamięci operacyjnej; w trakcie translacji sprawdzana jest także dostępność danych do których odwołuje sie program;

Tryby pracy procesora Tryb rzeczywisty: procesor przełącza sie w stan odwzorowujący zachowanie procesora 16-to bitowego pracuje jako bardzo szybki procesor 8086. Tryb chroniony: tryb wprowadzony w celu ochrony poszczególnych zadań pracujących pod kontrolą wielozadaniowego systemu operacyjnego; układy sprzętowe wbudowane w procesor kontrolują odwołania do pamięci i wydają zezwolenie na dostęp.

Tryby pracy procesora tryb wirtualny: stanowi kombinacje duch wcześniej omawianych trybów; każdy z programów (procesów) widzi swój własny procesor 8086 pracujący w trybie rzeczywistym; system jako całość dysponuje jednak zaczerpniętymi z trybu chronionego mechanizmami uniemożliwiającymi kolizje pomiędzy współuczestniczącymi zadaniami

Rozwój procesora

Rozwój procesora

Najważniejsze spośród rozszerzeń dodanych do architektury procesorów MMX (MultiMedia extenntion) miała na celu lepszy przydział mocy obliczeniowej i zasobów procesora dla operacji związanych z przetwarzaniem multimediów. Zmiany w architekturze: Zgrupowanie rozkazów w większe bloki (SIMD) Nowe zespoły rejestrów (rejestry MMX) Nowe rozkazy Zwiększona pamięć podręczna, bufor rozkazów oraz długość potoków przetwarzania instrukcji

Najważniejsze spośród rozszerzeń dodanych do architektury procesorów 3DNow! - rozszerzenie architektury procesorów x86 stworzone przez firmę AMD, znacznie zwiększające wydajność obliczeń zmiennoprzecinkowych, potrzebne do odtwarzania grafiki trójwymiarowej i multimediów. Był to pierwszy przypadek wprowadzenia takich istotnych zmian przez firmę inną niż Intel. Technologia 3DNow! uzupełnia i rozszerza możliwości akceleratorów graficznych, przyspieszając obliczenia zmiennoprzecinkowe występujące w początkowych etapach przetwarzania grafiki. Technologia ta pozwala uzyskać do 4 wyników zmiennoprzecinkowych w ciągu jednego cyklu pracy procesora.

Najważniejsze spośród rozszerzeń dodanych do architektury procesorów SSE ok. 70 nowych poleceń. SSE 2 poszerza środowisko działania procesora o nowe typy danych i nowe instrukcje SSE 3 13 nowych poleceń oraz przyspieszenie wykonywania dotychczasowych SSE 4 - wprowadza 54 nowe instrukcje - rozszerzenie istniejących instrukcji wektorowych operujących na liczbach całkowitych oraz zmiennoprzecinkowych SSE 5 (planowane) dodaje 82 nowe rozkazy: 30 działających na liczbach zmiennoprzecinkowych oraz 52 na liczbach całkowitych

Najważniejsze spośród rozszerzeń dodanych do architektury procesorów AVX (Advanced Vector Extensions) - kolejne rozszerzenie zestawu instrukcji SSE opublikowane w marcu 2008 przez firmę Intel. Pierwsze implementacje sprzętowe są zapowiadane na 2010 rok. Najważniejsze zmiany: 1. W AVX wprowadzono 256-bitowe rejestry - 2 razy większe niż wykorzystywane dotychczas w SSE. Nowych rejestrów jest 16 i w asemblerze noszą nazwy YMM0...YMM15. W dalszych wersjach AVX mogą pojawić się jeszcze większe rejestry, 512-, a nawet 1024- bitowe. 2. Dodano kilka rozkazów działających wyłącznie na rejestrach YMM (19 instrukcji). 3. Dodane 4-argumentowe rozkazy akumulujące wyniki mnożenia wektorów liczb zmiennoprzecinkowych 4. Dodane specjalizowane instrukcje wspomagające szyfrowanie AES (6 instrukcji).

Dziękuję za uwagę