Apellidos... Nombre... Nº matrícula... Contesta a las siguientes cuestiones (rodea con un círculo la respuesta correcta):

Documentos relacionados
1ª Prueba Parcial de Arquitectura de Computadores 25 de octubre de 2013

Arquitectura de Computadores

Arquitectura de Computadores Problemas (hoja 2). Curso

Apellidos Nombre Grupo. Arquitectura e Ingeniería de Computadores. Examen Final (Teoría parte primer cuatrimestre). 18/06/2012

Ejercicios de Paralelismo a Nivel de Instrucción

ARQUITECTURA DE COMPUTADORES

Problema. Dispone del siguiente fragmento de código intermedio:

Soluciones a ejercicios de Paralelismo a Nivel de instrucción

Arquitectura de Computadores Problemas (hoja 2). Curso

1) En un DLX con segmentación ejecutamos el siguiente fragmento de código:

Nombre: Carnet: Examen Parcial 1 (35 Puntos)

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

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

Departamento de Automática

Arquitectura e Ingeniería de Computadores Problemas (hoja 3). Curso

3. SEGMENTACIÓN DEL CAUCE

Arquitectura de Computadores Problemas (hoja 4). Curso

EXAMEN DE ARQUITECTURA II Septiembre, 2010

OBJETIVOS ALGUNAS CONSIDERACIONES SOBRE WINDLX

Paralelismo al nivel de instrucciones

Tema 7: Procesadores superescalares

PROCESADORES DE EMISIÓN MÚLTIPLE

Aspectos avanzados de arquitectura de computadoras Pipeline. Facultad de Ingeniería - Universidad de la República Curso 2017

Aspectos avanzados de arquitectura de computadoras Superescalares I. Facultad de Ingeniería - Universidad de la República Curso 2017

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

PROCESADORES DE EMISIÓN MÚLTIPLE

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

Arquitectura de Computadores Segmentación del Cauce - 1

COMPUTADORES SEGMENTADOS (DLX)

2. ARQUITECTURA BÁSICA DE MIPS 64

Práctica 4. DESENROLLADO DE BUCLES.

Autor: Longinos Recuero Bustos

Definición de prestaciones

ADDI R4,R0,#2 ADDI R1,R0,#40 LOOP: LW R2,0(R1) SUBI R3,R2,#1 MUL R2,R3,R2 DIV R2,R3,R4 SW 0(R1),R2 SUBI R1,R1,#4 BNEZ R1, LOOP ADDI R4,R0,#0

Estrategias de predicción dinámicas.

Tema 5. Segmentación: conceptos básicos

Arquitectura de Computadoras. Simulador WINMIPS64

Tema 10. Introducción a la op5mización de código

Multiplicación de matrices con DLX

Superescalares. Scheduling dinámico: algoritmo de Tomasulo

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

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

#define MAX 1024 void escala_vect (float A[MAX], float B[MAX], float k) { int i; for (i=0; i < MAX; i++) B[i]=k*A[i]; }

ARQUITECTURA DE COMPUTADORES Problemas TEMA 4: Microprocesadores avanzados

Procesadores segmentados. El DLX.

TEMA 3 PROCESADORES VLIW (Very Long Instruction Word)

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

ARQUITECTURA DE COMPUTADORES. Práctica 8

El procesador. Datapath y control

Departamento de Automática

2EMHWLYRV 5HIHUHQFLDV

Arquitectura de Computadores II Clase #5

1. Motivación. 2. Procesadores superescalares. 3. Procesadores VLIW. 4. Procesadores supersegmentados.

Ejercicios del Tema 3. Fundamentos de la programación en ensamblador

Arquitectura de Computadoras. Clase 4 Segmentación de Instrucciones

6. PROCESADORES SUPERESCALARES Y VLIW

Tema 1: PROCESADORES SEGMENTADOS

Riesgos de Control. Problemas con el Control de Flujo Saltos en el MIPS R3000 Métodos de Resolución

TEMA 3. PLANIFICACIÓN (SCHEDULING) DE INSTRUCCIONES Arquitectura de Sistemas Paralelos 1. pág 2. direcc MEM

Arquitectura y Tecnología de Computadores. Curso 07/08

TEMA I PROCESADORES SEGMENTADOS. UNED Manuel Fernandez Barcell

ARQUITECTURA SPARC: FORMATO DE INSTRUCCIÓN

Segmentación del ciclo de instrucción

Segmentación de instrucciones

Procesadores superescalares. Introducción

Centro Asociado Palma de Mallorca. Tutor: Antonio Rivero Cuesta

Arquitectura del MIPS: Introducción

Ejercicios del Tema 3. Fundamentos de la programación en ensamblador

Ejercicio 1. Considere el siguiente fragmento en ensamblador:

Segmentación de cauce

Ejercicios del tema 4. El procesador

El procesador. Datapath para las instrucciones de brinco

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

Pipelining. Introducción

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

Tema 3 (III) Fundamentos de la programación en ensamblador

COMPUTADORES SEGMENTADOS (DLX)

Tratamiento de Excepciones en MIPS

EC - Bibliografía EC -

Ejercicios para el 3er parcial

Segmentación del ciclo de instrucción

Estructura de Computadores II

Predictores Dinámicos

Arquitectura de Computadores I. Sistema de memoria 3 (Solución): Segmentación + Bancos

ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES 1º I.T.I.G. I.T.I.S.

202 PROBLEMAS DE ARQUITECTURA DE COMPUTADORES

Arquitectura de Computadores

Ejercicios Jerarquía de Memoria

Programación en ensamblador Ejercicios propuestos

Arquitectura de Computadores. Tema 11. Pipelining Avanzado

Universidad Euskal Herriko del País Vasco Unibertsitatea Arquitectura de Computadores I Sistema de memoria 1

Introducción al lenguaje ensamblador DLX: instrucciones de enteros.

Sección de procesamiento: El camino de datos

Paralelismo en monoprocesadores. Procesadores VLIW

Arquitectura de Computadores II Clase #16

Práctica 1 - Rendimiento *

Procesadores Superescalares

Transcripción:

Arquitectura de Computadores 5 de octubre de 03 Apellidos... Nombre... Nº matrícula... EJERCICIO ( puntos) Contesta a las siguientes cuestiones (rodea con un círculo la respuesta correcta):. Cuántos tamaños de instrucción diferentes tiene el MIPS64? a) b) c) 3 d) 5. La instrucción SLT R6,R4,R a) Pone un en R6 si R4 es mayor que R. b) Pone un en R6 si R4 es menor que R. c) Si R6 es menor que R4 pone un en R d) Saltará a la dirección indicada en R6 si R4 es menor que R. 3. En la arquitectura MIPS64: a) El bus de datos y el de direcciones tienen 64 bits, las Instrucciones también ocupan 64 bits. b) El bus de datos tiene 3 bits. El bus de direcciones y las Instrucciones tienen 64 bits. c) Los buses de datos y de direcciones tienen 64 bits. Las Instrucciones ocupan 3 bits. d) Los Buses de Datos y Direcciones tienen 3 bits, mientras que las Instrucciones ocupan 64 bits. 4. En la arquitectura MIPS64 (la final) cuál de estas afirmaciones es cierta? a) No todas las instrucciones pasan por las cinco etapas del cauce. b) Los saltos se resuelven en la etapa de Memoria c) En la etapa de Fetch siempre se alimenta una instrucción y se actualiza el Contador de Programa d) La dirección efectiva de memoria de las instrucciones load/store se calcula en la etapa de Ejecución.

EJERCICIO ( puntos) Se dispone de un ordenador especializado en representaciones gráficas, cuyas instrucciones gráficas tienen una duración 5 veces mayor que el resto de las operaciones, cuya duración es ns, y en él se ejecuta un programa en el que las instrucciones gráficas suponen el 0% de todo el programa. Posteriormente se mejoran las prestaciones del procesador en lo relativo a las instrucciones gráficas, consiguiendo que su duración se reduzca a la mitad. Con la mejora de las instrucciones gráficas cuál es la mejora global obtenida en la ejecución del programa? F T!"#$%&'(" T!"!#$ 5 0, 5 0, + ( 0,8) + 0,8 0, 55,8 S F + F M 0,55 + 0,55 0,45 + 0,75, 38 0,75 Otra forma más sencilla de calcular la aceleración o mejora global es mediante el cociente entre el tiempo medio global de ejecución antiguo y el tiempo medio global de ejecución después de la mejora: S T!"#$%!"!#$#%ó!!"#$%&' T!"#$%!"!#$#%ó!!"#$% 0, 5 + (0,8 ) 0,,5 + (0,8 ),8, 38,3

Arquitectura de Computadores 5 de octubre de 03 Apellidos... Nombre... Nº matrícula... EJERCICIO 3 (4 puntos) a) Indicar las dependencias de datos RAW que hay en este programa al ejecutarse sobre un procesador MIPS..data indice:.word3 0 total:.word3 0.text lw sw r,indice(r) r,total(r) daddi r4,r0,5 daddi r3,r0,0 bucle: sw r5,total(r) fin: sw lw slt r4,indice(r) r7,total(r) r6,r3,r4 daddi r4,r4,- bnez r6,bucle

Arquitectura de Computadores 5 de octubre de 03 Apellidos... Nombre... Nº matrícula... Ejercicio 3 b) Realizar el seguimiento de la ejecución del pipeline (una sola iteración del bucle) utilizando paradas del cauce cuando sea necesario. Se considera que no hay saltos retardados. lw r,indice(r) F D E M W 3 4 5 6 7 8 9 0 sw r,total(r) F D D D E M W 3 4 5 6 7 8 9 0 3 4 5 daddi r4,r0,5 daddi r3,r0,0 F F F D E M W F D E M W bucle: sw r5,total(r) F D E M W F D E sw r4,indice(r) F D E M W F D lw r7,total(r) F D E M W F slt r6,r3,r4 F D E M W daddi r4,r4,- bnez r6,bucle F D E M W F D D E M W fin: F F

Ejercicio 3 c) Reordenar el código de este programa para que se pueda ejecutar con bifurcaciones con un hueco de retardo. Realizar un seguimiento del código reordenado de la ejecución del pipeline (una sola iteración del bucle) utilizando adelantamientos o forwarding cuando sea posible. lw r,indice(r) F D E M W 3 4 5 6 7 8 9 0 3 4 5 6 7 8 9 0 3 4 5 sw r,total(r) F D D E M W daddi r4,r0,5 daddi r3,r0,0 F F D E M W F D E M W bucle: sw r5,total(r) F D E M W F D E M sw r4,indice(r) F D E M W F D E lw r7,total(r) F D E M W F D slt r6,r3,r4 F D E M W bnez r6,bucle daddi r4,r4,- F D D E M W F F D E M W fin:

Arquitectura de Computadores 5 de octubre de 03 Apellidos... Nombre... Nº matrícula... EJERCICIO 4 ( puntos) a) Indicar cualquier tipo de dependencias de datos que pueda producirse en el siguiente fragmento de programa al ejecutarse sobre un procesador MIPS. add.d f,f,f l.d f,40(r0) mul.d f3,f,f s.d f3,30(r0) Todas las dependencias son de tipo RAW add.d f4,f,f s.d f4,40(r0)

Ejercicio 4 b) Hacer el seguimiento de ejecución del anterior fragmento de código sobre el procesador MIPS, utilizando adelantamientos o forwarding cuando sea posible. 3 4 5 6 7 8 9 0 3 4 5 6 7 8 9 0 3 4 5 add.d f,f,f F D + + +3 +4 M W l.d f,40(r0) F D E M W mul.d f3,f,f F D D D X X X3 X4 X5 X6 X7 M W s.d f3,30(ro) F F F D D D D D D D E M W add.d f4,f,f F F F F F F F D + + +3 +4 M W s.d f4,40(r0) F D D D D E M W F F F F D E M W