====== Examen Final - 66.20. Organización de Computadoras - 28/02/2008 ====== **Cátedra:** José Luis Hamkalo (cátedra única)\\ **Fecha:** 5ª Oportunidad - Verano 2008\\ **Día:** 28/02/2008 ===== Enunciado ===== ==== Punto I ==== Para un determinado procesador, se sabe que estadísticamente un 81% de las operaciones son de enteros, y que un 19% son de FP. Las operaciones de FP llevan 10 veces el tiempo que las operaciones de enteros. Se propone una mejora al hardware tal que las operaciones de FP lleven 5 veces el tiempo de las operaciones de enteros. ¿Cuál es el speedup global de la mejora? Enuncie todas las hipótesis tenidas en cuenta. ==== Punto II ==== Se ejecuta un test de lazos para lazos de diferentes tamaños y para distintos saltos sobre una computadora. Se obtienen los tiempos de operatoria que se ven en el gráfico. Responder: - ¿Cuántos niveles de memorias caché hay? - ¿De qué tamaño cada una? - ¿Cuál es el tamaño de bloque? - ¿Cuál es el grado de asociatividad de cada una? (Después subo el gráfico, pero cualitativamente: - Era la gráfica tiempo/salto para diferentes lazos, entre 8KB y 2MB; para saltos entre 4B y 1MB. - Para lazos de 32KB o menos todos los saltos se resolvían en 300ns siendo hits. - Para lazos de 64KB o más, para saltos de entre 4B y 32B se veía una degradación de la performance, y para saltos de 64B o más, eran todos misses, en 1100ns. - Para lazos de 64KB o más, para saltos de la mitad del tamaño del lazo, era hit, en 300ns (por ejemplo, lazo de 2MB con saltos de 1MB se resolvía como hit). - Cabe destacar que el gráfico "mandaba fruta" soberana para la degradación entre 4B y 64B para lazos de más de 32KB. Uno esperaría que esos valores respondieran a una gráfica exponencial.) ==== Punto III ==== Defina los diferentes tipos de riesgos de datos. Ejemplifique cada uno con fragmentos en código MIPS. ===== Resolución ===== ==== Punto I ==== El CPI promedio del procesador sin la optimización de FP es de: CPIpromedio sin optimización = 0.81 CPIINT + 0.19 CPIFP Sabiendo la relación entre el tiempo de ejecución de FP contra INT, tenemos que: CPIpromedio sin optimización = 0.81 CPIINT + 0.19 10 CPIINT = 2.71 CPIINT Ahora, aplicando la optimización: CPIpromedio con optimización = 0.81 CPIINT + 0.19 5 CPIINT = 1.76 CPIINT De esto, se obtiene que el speedup de la optimización es \frac{2.71}{1.76}; lo cual es 1.54. Es decir, se mejora la performance en un 54%. ==== Punto II ==== - Hay un sólo caché L1. - Mide 32KB. - El tamaño de bloque es 64. - Es 2-way associative. ==== Punto III ==== Ver Patterson & Hennessy; pp. A-16..A-21. ===== Discusión ===== Si ves algo que te parece incorrecto en la resolución y no te animás a cambiarlo, dejá tu comentario acá.