Skip to content

Examen: Parcial 1:2025_10_15:DATOS

Miguel edited this page Oct 17, 2025 · 1 revision

Examen Parcial 1: 2025-10-15. Datos

  • Tiempo: 50 minutos
  • Tipo de examen: Presencial. Realizado a través de Aula Virtual. Acceso a la wiki y apuntes.
  • Temario: S1-S4

Contenido

Enunciado

El examen se ha realizado a través de Aula virtual. Tiene dos partes: Test y un problema

Test (5 ptos)

  • Realizado a través de Aula virtual
  • 10 preguntas tipo test
  • Las respuesats incorrectas restan un 33% del valor de la pregunta
  • Solución disponible en Aula virtual

Problema (5 ptos): Rendimiento y Caché

Tenemos un procesador sin memoria caché que ejecuta un programa con 6.000 instrucciones.

Al analizar nuestro programa, se determina que la distribución de instrucciones es la siguiente:

  • 40% Tipo Memoria (Mem.)
  • 30% Tipo Salto (J)
  • 30% Tipo Aritmética (R)

Los valores de CPI (Ciclos Por Instrucción) para cada tipo son:

Tipo Mem. J R
CPI 4 3 1

El procesador funciona a una frecuencia de 100 MHz.

Calcula:

a) El tiempo de ejecución del programa de prueba.


Para mejorar el rendimiento, se considera una nueva implementación del procesador que permite incrementar su frecuencia. Dicha implementación tiene los siguientes valores de CPI:

Tipo Mem. J R
CPI 6 5 2

Calcula:

b) La frecuencia a la que tendríamos que operar el nuevo procesador para que su rendimiento sea, como mínimo, igual al original.


Tras realizar pruebas, se determina que la frecuencia máxima a la que puede operar esta nueva implementación es de 150 MHz.


Calcula:

c) El tiempo de ejecución con la nueva implementación a su frecuencia máxima.

d) ¿Qué procesador (el original o la nueva implementación) nos interesa más? ¿Cuántas veces es más rápido que el otro?


Utiliza los datos (Frecuencia y CPI) del procesador más eficiente para las siguientes preguntas.


e) Calcula el tiempo de acceso a memoria, sabiendo que este corresponde a un 80% del tiempo total que tarda en ejecutarse una instrucción de tipo memoria (Mem.).


Este tiempo calculado es el de acceso a la memoria principal. Para mejorarlo, se evalúa la introducción de una memoria caché de 2 niveles con las siguientes características:

  • Caché L1: Tiempo de acceso de 2 ns y una tasa de fallos del 11%.
  • Caché L2: Tiempo de acceso de 8 ns y una tasa de fallos del 6%.

Calcula:

f) El nuevo tiempo medio de acceso a memoria utilizando esta jerarquía de caché de dos niveles.


Solución al problema

a) El tiempo de ejecución del programa de prueba

Para calcular el tiempo de ejecución, primero necesitamos saber el número total de ciclos de reloj que consume el programa.

  1. Calculamos el número de instrucciones de cada tipo:

    • Instrucciones de Memoria (Mem.): 6.000 * 40% = 2.400 instrucciones
    • Instrucciones de Salto (J): 6.000 * 30% = 1.800 instrucciones
    • Instrucciones Aritméticas (R): 6.000 * 30% = 1.800 instrucciones
  2. Calculamos el total de ciclos de reloj (CPI Total):

    • Ciclos Mem: 2.400 instrucciones * 4 CPI = 9.600 ciclos
    • Ciclos J: 1.800 instrucciones * 3 CPI = 5.400 ciclos
    • Ciclos R: 1.800 instrucciones * 1 CPI = 1.800 ciclos
    • Total de Ciclos: 9.600 + 5.400 + 1.800 = 16.800 ciclos
  3. Calculamos el tiempo de ejecución: El tiempo de ejecución es el número total de ciclos dividido por la frecuencia del procesador (100 MHz = 100 x 10^6 Hz). $$\text{Tiempo de Ejecución} = \frac{\text{Total de Ciclos}}{\text{Frecuencia}} = \frac{16.800}{100 \times 10^6 \text{ Hz}} = 168 \times 10^{-6} \text{ s}$$

    Respuesta: El tiempo de ejecución del programa es de 168 µs (microsegundos).


b) La frecuencia a la que tendríamos que operar el procesador para que nos compense utilizar esta nueva implementación.

Para que la nueva implementación compense, debe ser al menos igual de rápida que la original. Calculamos la frecuencia necesaria para igualar el tiempo de ejecución de 168 µs.

  1. Calculamos el total de ciclos de la nueva implementación:

    • Ciclos Mem (Nueva): 2.400 instrucciones * 6 CPI = 14.400 ciclos
    • Ciclos J (Nueva): 1.800 instrucciones * 5 CPI = 9.000 ciclos
    • Ciclos R (Nueva): 1.800 instrucciones * 2 CPI = 3.600 ciclos
    • Total de Ciclos (Nueva): 14.400 + 9.000 + 3.600 = 27.000 ciclos
  2. Calculamos la frecuencia de equilibrio: $$\text{Frecuencia} = \frac{\text{Total de Ciclos}}{\text{Tiempo de Ejecución}} = \frac{27.000}{168 \times 10^{-6} \text{ s}} \approx 160.714.285 \text{ Hz}$$

    Respuesta: Tendríamos que operar el procesador a una frecuencia de, al menos, 160,71 MHz para que la nueva implementación sea igual de rápida que la original.


c) El tiempo de ejecución de esta nueva implementación

Ahora calculamos el tiempo de ejecución de la nueva implementación con la frecuencia máxima que se nos indica (150 MHz).

$$\text{Tiempo de Ejecución (Nueva)} = \frac{\text{Total de Ciclos (Nueva)}}{\text{Frecuencia Máxima}} = \frac{27.000}{150 \times 10^6 \text{ Hz}} = 180 \times 10^{-6} \text{ s}$$

Respuesta: El tiempo de ejecución de la nueva implementación a 150 MHz es de 180 µs.


d) Indica qué procesador nos interesa más y cuántas veces es mejor que el otro.

Comparamos los tiempos de ejecución de ambos procesadores:

  • Procesador Original: 168 µs
  • Nueva Implementación (a 150 MHz): 180 µs

El procesador con el menor tiempo de ejecución es el mejor. Para saber cuántas veces es mejor, dividimos el tiempo del más lento entre el tiempo del más rápido (esto se conoce como speedup o mejora).

$$\text{Mejora} = \frac{\text{Tiempo del más lento}}{\text{Tiempo del más rápido}} = \frac{180 \text{ µs}}{168 \text{ µs}} \approx 1.0714$$

Respuesta: Nos interesa más el procesador original, ya que es aproximadamente 1,07 veces más rápido que la nueva implementación operando a 150 MHz.


e) Calcula el tiempo de acceso a memoria

Utilizamos los datos del procesador que más nos interesa, es decir, el original (Frecuencia = 100 MHz, CPI Mem. = 4).

El enunciado nos dice que es el 80% del tiempo de ejecución de UNA instrucción de tipo Mem, por lo que calculamos el tiempo que tarda en ejecutarse una instrución. Para ello:

  1. Calculamos el periodo del ciclo de reloj (T): $$T = \frac{1}{\text{Frecuencia}} = \frac{1}{100 \times 10^6 \text{ Hz}} = 10 \times 10^{-9} \text{ s} = 10 \text{ ns}$$

  2. Calculamos el tiempo que tarda una instrucción de memoria: $$\text{Tiempo Instrucción Mem.} = \text{CPI Mem.} \times T = 4 \times 10 \text{ ns} = 40 \text{ ns}$$

  3. Calculamos el tiempo de acceso a memoria (80% del tiempo anterior): $$\text{Tiempo Acceso Memoria} = 40 \text{ ns} \times 80% = 32 \text{ ns}$$

    Respuesta: El tiempo de acceso a la memoria principal es de 32 ns.


f) Calcula el nuevo tiempo medio de acceso a memoria utilizando esta caché de dos niveles

El Tiempo Medio de Acceso a Memoria para un sistema con caché de dos niveles se calcula con la siguiente fórmula:

$$ t_{medio} = T_{L1} + \text{TasaFallos}_{L1} \times (T_{L2} + \text{TasaFallos}_{L2} \times \text{Penalizacion}) $$

Donde:

  • $T_{L1}$: Tiempo de acceso a caché L1 = 2 ns
  • $\text{TasaFallos}_{L1}$: Tasa de fallos de L1 = 11% = 0.11
  • $T_{L2}$: Tiempo de acceso a caché L2 = 8 ns
  • $\text{TasaFallos}_{L2}$: Tasa de fallos de L2 = 6% = 0.06
  • Penalización: Tiempo de acceso a memoria principal = 32 ns (calculado en el apartado anterior).

Sustituimos los valores en la fórmula:

$t_{medio} = 2\text{ ns} + 0.11 \times (8\text{ ns} + 0.06 \times 32 ns) = 3.0912\text{ ns}$

Respuesta: El nuevo tiempo medio de acceso a memoria con la caché de dos niveles es de 3,0912 ns.

Autores

Licencia

Enlaces


Sesiones de Teoría

Tema 1: Abstracciones y Tecnología

S1: Introducción a los computadores
S2: Computadores y Rendimiento (I)
S3: Computadores y Rendimiento (II)
S4: Memorias Caché
Ejercicios

Tema 2: Diseño de un repertorio de instrucciones

S5: ISA. Repertorios CISC y RISC
S6: Almacenamiento de operandos. ISA-RISCV
S7: Modos de direccionamiento. Tipos de instrucciones
S8: Ejercicios

Tema 3: El Procesador

S9: Nivel de Electrónica Digital
S10: El computador NanoRisc-V
S11: NanoRISC-V Monociclo (I)
S12: NanoRISC-V Moniciclo (II). Ejercicios
S13: Procesador NanoRISC-V Multiciclo

Tema 4: Segmentación

S14: Segmentación y rendimiento
S15: NanoRISC-V segmentado

Tema 5: Jerarquía de memorias

  • TODO

Sesiones Pico2

P1: Introducción a la Pico2
P2: Rendimiento en la Pico2
P3: Memoria caché
P4: Display de 7 segmentos
P5: Zumbador

Ejercicios de examen

GISAM. Ordinario. 2021-Ene-21
GISAM. Ordinario. 2022-Ene-10
GISAM. Extra. 2022-Jun-29
GISAM. Parcial 1. 2022-Oct-26
GISAM. Parcial 2. 2022-Nov-30
GISAM. Parcial 3. 2022-Dic-21
GISAM. Parcial 1. 2023-Oct-09
GISAM. Parcial 2. 2023-Nov-11
GISAM. Parcial 3. 2023-Dic-20
GISAM. Extra. 2024-Jun-17
GISAM. Parcial 1. 2024-Oct-14
GISAM. Parcial 2. 2024-Nov-11
GISAM. Parcial 3: 2024-Dic-12
GISAM. Parcial 1: 2025-Oct-20
GISAM. Parcial 2: 2025-Nov-19
GISAM. Parcial 3: 2026-Ene-09
GISAM. Extra. 2026-Jun-11
GISAM. Parcial 1: 2026-Oct-21
ROBOTICA. Parcial 1. 2022-Feb-25
ROBOTICA. Parcial 2. 2022-Abr-1
ROBOTICA. Parcial 3. 2022-May-6
ROBOTICA. Parcial 1. 2023-Feb-27
ROBOTICA. Parcial 2. 2023-Mar-27
ROBOTICA. Parcial 3. 2023-May-08
ROBOTICA. Parcial 1. 2024-Feb-25
ROBOTICA. Parcial 2. 2024-Mar-20
ROBOTICA. Parcial 3. 2024-May-06
ROBOTICA.Extra. 2024-Jun-24
ROBOTICA. Parcial 1. 2025-Feb-24
ROBOTICA. Parcial 2. 2025-Mar-31
ROBOTICA. Parcial 3. 2025-May-19
ROBOTICA. Extra. 2025-Jun-24
ROBOTICA. Parcial 1. 2026-Feb-23
ROBOTICA. Parcial 2. 2026-Abr-13
ROBOTICA. Parcial 3. 2026-May-11
TELECO. Parcial 1. 2023-Oct-20
TELECO. Parcial 2. 2023-Nov-17
TELECO. Parcial 3. 2023-Dic-22
TELECO. Parcial 1. 2024-Oct-10
TELECO. Parcial 2. 2024-Nov-21
TELECO. Parcial 3. 2024-Dic-19
TELECO. Parcial 1. 2025-Oct-10
TELECO. Parcial 2. 2025-Nov-13
TELECO. Parcial 3. 2025-Dic-19
TELECO. Parcial 1. 2026-Oct-08
DATOS. Parcial 1. 2025-Oct-15
DATOS. Parcial 2. 2025-Nov-19
DATOS. Parcial 3. 2025-Dic-17
Extra 2026

SOLUCIONES

Tema 1: Sesiones S3 y S4
Tema 2: Sesiones S5, S6 y S7
Tema 3: Sesiones S9, S10, S11 y s13
Tema 4: Sesiones S14 y S15

ESTUDIANTES

Curso 2021-2022

Clone this wiki locally