Arquitectura · Sección 10

Rendimiento y proyecto con Ripes

Medición de tiempo de CPU, CPI y aceleración; ejecución superescalar y un proyecto final basado en evidencia.

3
lecciones
3
ejercicios resueltos
CONTENIDO ORIGINAL

Avanza en orden. Cada lección está redactada para Palta es Cool, utiliza ejemplos propios y termina con una actividad cuya respuesta puedes desplegar.

ANTES DE EMPEZAR

Ubícate antes de avanzar

01 / PUNTO DE PARTIDA

Conviene haber comprendido Jerarquía de memoria y caché.

02 / META OBSERVABLE

Al terminar deberías poder relacionar Ecuación de rendimiento con Superescalaridad y resolver un caso nuevo.

03 / TIEMPO SUGERIDO

Reserva entre 75 y 120 minutos o divide el laboratorio en dos sesiones.

04 / PREPARA EL LABORATORIO

Las secciones 1–4 se pueden estudiar en papel. Desde RISC-V conviene preparar el simulador Ripes.

Abrir la guía de herramientas →
Diagnóstico rápido: ¿cómo se relacionan Ecuación de rendimiento y Superescalaridad?

No necesitas acertar todavía. Escribe una hipótesis de dos líneas y compárala con tu respuesta al finalizar; si puedes corregirla y justificar el cambio, hubo aprendizaje.

Ruta guiada · 3 lecciones

Aprende el tema paso a paso

Cerrarás la ruta midiendo, explicando y mejorando un programa completo en Ripes, con conclusiones que distinguen evidencia de intuición.

Al terminar podrás
  • Tiempo de CPU combina instrucciones, CPI y duración del ciclo
  • Emitir varias instrucciones exige encontrar independencia
  • Un proyecto de arquitectura termina con evidencia reproducible
01
Medir correctamente

Tiempo de CPU combina instrucciones, CPI y duración del ciclo

El rendimiento de un programa puede expresarse como cantidad de instrucciones por CPI por tiempo de ciclo. Un cambio mejora una parte y empeora otra; la aceleración compara tiempos completos bajo la misma tarea.

01

Tiempo CPU = IC × CPI × tiempo de ciclo.

02

Speedup = tiempo anterior / tiempo nuevo.

03

Se compara el mismo resultado, entrada y entorno.

Comprueba lo aprendido · 01

¿Reducir el número de instrucciones garantiza menor tiempo?

Mostrar respuesta

No. Las instrucciones restantes pueden tener mayor CPI o el diseño puede requerir un ciclo más largo. Se evalúa el producto completo.

02
Paralelismo de instrucciones

Emitir varias instrucciones exige encontrar independencia

Un procesador superescalar intenta iniciar varias instrucciones por ciclo. La planificación estática reordena al compilar; la dinámica decide durante la ejecución. Dependencias verdaderas, recursos y ramas limitan el paralelismo disponible.

01

Más ancho no ayuda si la secuencia es dependiente.

02

Renombrar registros elimina dependencias de nombre, no RAW.

03

Ejecución fuera de orden debe conservar el resultado arquitectónico correcto.

Comprueba lo aprendido · 02

¿Por qué una CPU de emisión cuádruple no completa siempre cuatro instrucciones por ciclo?

Mostrar respuesta

Porque puede faltar independencia, datos, unidades funcionales o una predicción correcta. El ancho es una capacidad máxima, no una garantía.

03
Laboratorio integrador

Un proyecto de arquitectura termina con evidencia reproducible

Elige un programa pequeño —por ejemplo suma de un arreglo—, fija entrada y resultado, y registra una línea base en Ripes. Después modifica código, forwarding, pipeline o caché de una variable a la vez y explica el mecanismo observado.

01

Predice antes de ejecutar qué métrica debería cambiar.

02

Registra instrucciones, ciclos, CPI, stalls, hits y misses aplicables.

03

Conserva versiones y concluye también cuándo una mejora no funcionó.

Comprueba lo aprendido · 03

¿Qué vuelve débil una conclusión como “el pipeline B es mejor”?

Mostrar respuesta

No define carga, métrica, resultado ni costo. Una conclusión sólida indica bajo qué condiciones mejora, cuánto y por qué.

Resumen de la sección

Tu recorrido en tres ideas

  1. Tiempo de CPU combina instrucciones, CPI y duración del ciclo
  2. Emitir varias instrucciones exige encontrar independencia
  3. Un proyecto de arquitectura termina con evidencia reproducible
PROFUNDIZACIÓN / LABORATORIO GUIADO

Compara dos procesadores en Ripes

Integra instrucciones, CPI, ciclo, hazards, caché, configuración y aceleración reproducible.

CASO

Un mismo programa de suma de arreglo se ejecutará con dos pipelines y dos configuraciones de caché.

Procedimiento

  1. Fija programa, entrada, resultado y configuración base.
  2. Predice el cambio, modifica una variable y registra métricas.
  3. Explica el mecanismo, calcula speedup y declara cuándo no generaliza.

Evidencia mínima

  • Código y resultado idénticos.
  • Ciclos, CPI, stalls, hits y misses aplicables.
  • Tabla de configuraciones y repetición del experimento.
Mostrar razonamiento modelo

Una frecuencia o CPI menor aislados no deciden. La comparación usa tiempo total o un proxy justificado, cambia una variable por vez y conecta la diferencia con riesgos o memoria observados.

Para ir más lejos

¿Qué resultado esperas al aumentar el arreglo más allá de la capacidad de caché?

CIERRE DE LA SECCIÓN

Comprueba que puedes usarlo

Antes de continuar, revisa estos tropiezos frecuentes y resuelve un caso sin copiar los ejemplos.

ERROR 01

Declarar una mejora usando solo frecuencia o cantidad de instrucciones.

ERROR 02

Cambiar código, pipeline y caché a la vez e impedir atribuir el efecto.

DESAFÍO INTEGRADOR

Ahora hazlo sin guía

Realiza en Ripes una comparación reproducible de dos versiones de un programa y dos configuraciones del procesador.

Mostrar pauta de corrección
Una respuesta sólida:
  • Misma entrada, resultado y línea base.
  • Registra ciclos, CPI, stalls y caché según corresponda.
  • Explica mecanismo, aceleración, costo y condiciones de validez.