TEMA 3 PROCESADORES VECTORIALES

Documentos relacionados
El procesador vectorial consta de:

Procesadores VLIW y Procesadores vectoriales

CAPÍTULO 2 PROCESADORES SUPERESCALARES

Procesadores Vectoriales

COMPUTADORES VECTORIALES (DLXV)

Tema 1: PROCESADORES SEGMENTADOS

Arquitectura de Computadores Problemas (hoja 4). Curso

T E X T O D E L M A N U A L D E H T M L, W E B M A E S T R O, P O R F R A N C I S C O A R O C E N A

13. Computadores vectoriales segmentados. 14. Computadores SIMD.

Tutorías con Grupos Reducidos (TGR) Sesión 2: Paralelismo a Nivel de Instrucción

PROBLEMAS TEMA 1: Estructuras de interconexión de un computador

Práctica 2 Procesadores vectoriales (I) 1. Práctica 2. Procesadores vectoriales (I)

Arquitectura de Computadores Problemas (hoja 2). Curso

Ejercicios de Paralelismo a Nivel de Instrucción

Paralelismo al nivel de instrucciones

Arquitectura e Ingeniería de Computadores. Examen Parcial. 7/02/2012

NOTICIAS DE ULTIMA HORA CONFIRMAN QUE LA NORMALIDAD REINA EN ESPAÑA : L as versiones que llegan de

202 PROBLEMAS DE ARQUITECTURA DE COMPUTADORES

Arquitectura de Computadoras. Clase 4 Segmentación de Instrucciones

3. SEGMENTACIÓN DEL CAUCE

Arquitectura de Computadoras Trabajo Práctico N 8 Pipeline de Instrucciones 1 Primer Cuatrimestre de 2016

INTRODUCCIÓN Y MEDIDAS DE RENDIMIENTO MEDIDAS DE RENDIMIENTO

Unidad 4 - Procesamiento paralelo. Arquitectura de computadoras. D o c e n t e : E r n e s t o L e a l. E q u i p o : J e s s i c a F i e r r o

Segmentación del ciclo de instrucción

Arquitectura de Computadoras Trabajo Práctico N 7 Pipeline de Instrucciones Primer Cuatrimestre de 2010

Multiplicación de matrices con DLX

ARQUITECTURAS PARALELAS examen de febrero de 2004

Planificación Dinámica - 1. Arquitectura de Computadores

Algorítmica y Lenguajes de Programación. Eficiencia y notación asintótica (i)

Autor: Longinos Recuero Bustos

Microcontroladores. Unidad 1

2. Formas cuadráticas. Expresiones diagonales. Clasificación respecto a su signo.

DIVISIÓN DE INGENIERÍAS CIVIL Y GEOMÁTICA DEPARTAMENTO DE ESTRUCTURAS FUNDAMENTOS DE LA MECÁNICA CLÁSICA

6 Vectores. Dependencia e independencia lineal.

Organización de Computadoras. Clase 6

5. Procesador: camino de datos y control

Arquitectura de los Ordenadores (Teoría) Final Junio Mañana Pág 1 APELLIDOS Y NOMBRE GRUPO Nº EXPEDIENTE

Tema 7: Procesadores superescalares

Principios básicos de la segmentación

Con estas consideraciones, Flynn clasifica los sistemas en cuatro categorías:

Taxonomía de las arquitecturas

Tabla 3 Diámetro de la Nombre Perímetro de la muñeca muñeca (aprox.) Cierre: (20 minutos) Perímetro de Nombre Tal a o

Tema 2: Conceptos básicos. Escuela Politécnica Superior Ingeniería Informática Universidad Autónoma de Madrid

Arquitectura de Computadores II Clase #16

2. SEGMENTACIÓN ENCAUZADA AVANZADA Y PARALELISMO DE INSTRUCCIONES: EJERCICIOS Y CUESTIONES

Ejercicios de Arquitectura de Computadoras

Estructura de Computadores Tema 1. Introducción a los computadores

Arquitectura de Computadores

Repaso concepto de programa

WinDLXV. Manual de usuario

6. PROCESADORES SUPERESCALARES Y VLIW

^^conocerán los EE. UU, en H. América a los gobiernos creados por las revoluciones

TEMA III: OPERACIONES CON LOS DATOS

TEMA VI DISEÑO DEL PROCESADOR

ARQUITECTURA DE COMPUTADORES

TEMA 1. INTRODUCCIÓN A LA PROGR. DISTRIBUIDA Y PARALELA

Bloques Aritméticos - Multiplicadores

El nivel ISA (II)! Conjunto de Instrucciones

Formato de instrucciones

Matemáticas I Grado de Administración y Dirección de Empresas Examen de Febrero Curso 2011/ ?

Electrotecnia General (Prof. Dr. José Andrés Sancho Llerandi) Tema 14 CORRIENTES ALTERNAS

ÍNDICE CAPÍTULO 1 FUNDAMENTOS DE LOS MICROCONTROLADORES

UNIVERSIDAD CARLOS III DE MADRID DEPARTAMENTO DE INFORMÁTICA GRADO EN INGENIERÍA INFORMÁTICA. ESTRUCTURA DE COMPUTADORES

TEORÍA (5 puntos) Puntuación: Desplazamiento

Procesador. Daniel Rúa Madrid

B) Arquitectura generalizada de una computadora

2. SEGMENTACIÓN ENCAUZADA AVANZADA Y PARALELISMO DE INSTRUCCIONES: EJERCICIOS Y CUESTIONES

FUNDAMENTOS DE COMPUTACION INVESTIGACION PROCESADORES DIANA CARRIÓN DEL VALLE DOCENTE: JOHANNA NAVARRO ESPINOSA TRIMESTRE II

Cuestionario Unidad 4: Procesamiento paralelo 2012

FUNDAMENTOS DE COMPUTADORES 18 de junio de Examen parcial del 2º cuatrimestre.

Unidad 5 Unidad central de proceso

VECTORES. A cada clase de vectores equipolentes se denomina vector libre.!

Tema 7 - Registros, contadores y memorias

Práctica 4. DESENROLLADO DE BUCLES.

Arquitectura de Computadoras. Clase 5 Posibles soluciones a atascos

Segmentación del ciclo de instrucción v.2016

PROBLEMAS RESUELTOS ÁLGEBRA LINEAL Tema 2. Espacios Vectoriales

EC - Estructura de Computadores

Estrategias de predicción dinámicas.

Microprocesador. Introducción. Instituto Sagrado Corazón de Jesús

Apunte Laboratorio ALPI - El lenguaje de programación Pascal

Tutorías con Grupos Reducidos (TGR) Parte 1: Evaluación de prestaciones

ASIGNATURA: Arquitectura de Computadores

3.1. Operaciones con matrices. (Suma, resta, producto y traspuesta)

Bloque 3. Geometría y Trigonometría Tema 2 Vectores Ejercicios resueltos

ARQUITECTURA DE COMPUTADORES Problemas TEMA 4: Microprocesadores avanzados

Transcripción:

TEMA 3 PROCESADORES VECTORIALES

A T 5 1 1 8 A r q u i t e c t u r a e I n g e n i e r í a d e C o m p u t a d o r e s I J u a n A n t o n i o M a e s t r o PROCESADORES VECTORIALES V e n t a j a s d e l o s p r o c e s a d o r e s v e c t o r i a l e s Proporcionan operaciones para trabajar con vectores. Una sola instrucción trabaja sobre todos los elementos de un vector: El cálculo sobre los elementos de un vector suele ser independiente. Menos riesgos de datos. Los accesos a memoria siguen un patrón fijo. Los elementos de los vectores están ordenados. Se eliminan bucles y dependencia de control. -Pueden trabajar también con operandos escalares.

ESQUEMA PROCESADOR VECTORIAL

A T 5 1 1 8 A r q u i t e c t u r a e I n g e n i e r í a d e C o m p u t a d o r e s I J u a n A n t o n i o M a e s t r o Características del procesador D vectorial L X v e c t o r i genérico a l : D L X V Registros vectoriales: Hay de 8 a 256 registros para almacenar vectores de 64 elementos por lo general(cada elemento de 64 bits). Unidades Funcionales Vectoriales: Totalmente segmentadas. Aceptan una nueva operación cada ciclo. Las hay Punto Flotante y enteras. Unidades Vectoriales de Carga y Almacenamiento: Totalmente segmentadas. También se ocupan de los accesos a memoria escalares. Registros escalares

A T 5 1 1 8 A r q u i t e c t u r a e I n g e n i e r í a d e C o m p u t a d o r e s I Características procesadores vectoriales comerciales J u a n A n t o n i o M a e s t r o E j e m p l o s d e p r o c e s a d o r e s v e c t o r i a l e s

A T 5 1 1 8 A r q u i t e c t u r a e I n g e n i e r í a d e C o m p u t a d o r e s I J u a n A n t o n i o M a e s t r o Operaciones vectoriales O p e r a c i o n e s t í p i c a s e n e l D L X V

A T 5 1 1 8 A r q u i t e c t u r a e I n g e n i e r í a d e C o m p u t a d o r e s I J u a n A n t o n i o M a e s t r o E e m l o : S A X P Y / D A X P Y O p e r a c i ó n S A X P Y ( D A X P Y e n d o b l e p r e c i s i ó n ) : de manera escalar Operaciones vectoriales Y = a X + Y V e c t o r e s d e 6 4 e l e m e n t o s d e 6 4 b i t s

A T 5 1 1 8 A r q u i t e c t u r a e I n g e n i e r í a d e C o m p u t a d o r e s I J u a n A n t o n i o M a e s t r o Strip mining (troceado del vector) Ejemplo MVL: máxima longitud del vector (64) VLR: longitud del vector en cada momento

A T 5 1 1 8 A r q u i t e c t u r a e I n g e n i e r í a d e C o m p u t a d o r e s I Operaciones vectoriales por filas o columnas D L X V C = A B

Operaciones vectoriales condicionales

A T 5 1 1 8 A r q u i t e c t u r a e I n g e n i e r í a d e C o m p u t a d o r e s I J u a n A n t o n i o M a e s t r o Operaciones vectoriales O p e r a c i o n e s v e c t o r i a condicionales l e s c o n d i c i o n a l e s R e g i s t r o V e c t o r - M a s k ( V M ) : V e c t o r d e l o n g i t u d M V L. L a s o p e r a c i o n e s v e c t o r i a l e s s e a p l i c a r á n a l e l e m e n t o i d e l v e c t o r, s i y s ó l o s i e l b i t i - é s i m o d e l V M e s t á a 1

A T 5 1 1 8 A r q u i t e c t u r a e I n g e n i e r í a d e C o m p u t a d o r e s I MEDIDA DEL RENDIMIENTO DE UN FRAGMENTO S DE t r i p - CÓDIGO m i n i n g VECTORIAL J u a n A n t o n i o M a e s t r o T i e m p o d e e j e c u c i ó n T n T arranque nt elemento n: número de elementos en cada vector Tarranque: latencia de producir el primer resultado Telemento: tiempo que se tarda en calcular el resto de elementos R n n FLOPS / T (n elementos Operaciones en coma n flotante)/ T n

R n n FLOPS T n Convoy: conjunto de instrucciones que pueden ser emitidas simultáneamente al no existir dependencias verdaderas entre ellas ni riesgos estructurales DEPENDENCIA RAW. SIN ENCADENAMIENTO

DEPENDENCIA RAW Encadenamiento: La salida de una instrucción se anticipa a la entrada de la siguiente. El tiempo de ejecución viene dado por el número de elementos del vector (número de ciclos) más las iniciaciones de las instrucciones. No se permite riesgos estructurales Convoy: conjunto de instrucciones que pueden ser emitidas simultáneamente al no existir dependencias verdaderas entre ellas ni riesgos estructurales Encadenamiento sin solapamiento

Encadenamiento con solapamiento

LA UNIDAD FUNCIONAL DE CARGA/ALMACENAMIENTO VECTORIAL Es capaz de mantener un ancho de banda sostenido de una palabra por ciclo de reloj tras la latencia de acceso inicial. El tiempo de arranque corresponde con los tiempos de acceso a memoria. El tiempo de elemento es el tiempo empleado desde un banco de memoria hasta un registro o viceversa Instrucción de carga Instrucción de almacenamiento

A T 5 1 1 8 A r q u i t e c t u r a e I n g e n i e r í a d e C o m p u t a d o r e s I J u a n A n t o n i o M a e s t r o Medida del rendimiento de un bucle vectorizado S t r i p - m i n i n g Y = a X + Y V e c t o r e s d e 6 4 e l e m e n t o s d e 6 4 b i t s Strip mining (troceado)

A T 5 1 1 8 A r q u i t e c t u r a e I n g e n i e r í a Medida del rendimiento de un bucle vectorizado S t r J u a n A n t o n i o M a e s t r o Tiempo de ejecución de un bucle con stripmining: T n T base n MVL ( T bucle T arranque ) n T elemento n: número de elementos en cada vector MVL: Longitud máxima del vector en la arquitectura Tbase: tiempo que consumen las instrucciones escalares antes de abordar el bucle exterior (que secciona el vector en secciones) Líneas 1,2,3 Tbucle: Tiempo de gestión del bucle con operaciones escalares para realizar el seccionamiento. Líneas 4,5,9,10 y 11 Tarranque: Tiempo de inicio de las operaciones vectoriales de los convoyes de instrucciones Telemento: número de grupos vectoriales (convoyes) Líneas 6,7 y 8 R Operaciones vectoriales n lim( ) n T n

MVL es 64 y la frecuencia de reloj es 500 Mhz. Todas las operaciones vectoriales están segmentadas. En el PROCESADOR VECTORIAL, la suma tiene un tiempo de inicio de 6 ciclos, y la multiplicación de 7. Las operaciones aritméticas tienen latencia 1. Las cargas y almacenamientos en memoria también están segmentadas, con un tiempo de inicio de 12 ciclos. Pueden realizarse operaciones en paralelo, siempre que existan múltiples puertos de lectura y escritura en la memoria. Tbase=10 ciclos, Tbucle=15 ciclos

CASO 1: Sin encadenamiento de resultados entre unidades T n n Tbase Tbucle Tarranque nt MVL ( ) elemento 64 64 64 64 ciclos T elemento 4ciclos 64elementos

CASO 1: Sin encadenamiento de resultados entre unidades T n n Tbase Tbucle Tarranque nt MVL ( ) elemento

CASO 1: Sin encadenamiento de resultados entre unidades

CASO 2: Con encadenamiento de resultados entre unidades 64 64 64 ciclos T elemento 3ciclos 64elementos

CASO 2: Con encadenamiento de resultados entre unidades T n n Tbase Tbucle Tarranque nt MVL ( ) elemento

CASO 2: Con encadenamiento de resultados entre unidades

CASO 3: Con encadenamiento y dos unidades de carga/almacenamie nto 64 64 ciclos T elemento 2ciclos 64elementos

CASO 3: Con encadenamiento y dos unidades de carga/almacenamie nto T n n Tbase Tbucle Tarranque nt MVL ( ) elemento

CASO 3: Con encadenamiento y dos unidades de carga/almacenamie nto

CASO 4: Con encadenamiento, dos unidades de carga/almacenamiento y solapamiento entre convoyes dentro de la misma iteración

CASO 4: Con encadenamiento, dos unidades de carga/almacenamiento y solapamiento entre convoyes dentro de la misma iteración T n n Tbase Tbucle Tarranque nt MVL ( ) elemento

CASO 4: Con encadenamiento, dos unidades de carga/almacenamiento y solapamiento entre convoyes dentro de la misma iteración

examen 2012 (muy similar al ejercicio 3.11 y 3.12) está resuelto en Alf carpeta documentos. Allí están todas las soluciones a problemas de examen de procesadores vectoriales)