1 / 89

Memorias Cache

Memorias Cache. Arq. de Computadores Santiago González Tortosa. Parte I. Introducción a Memorias Cache. Introducción. Para que sirve Reducción de tiempo en el acceso de información (no acceder a MP) Tiempo de acceso reducido Control de Información

mills
Télécharger la présentation

Memorias Cache

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Memorias Cache Arq. de Computadores Santiago González Tortosa

  2. Parte I Introducción a Memorias Cache

  3. Introducción • Para que sirve • Reducción de tiempo en el acceso de información (no acceder a MP) • Tiempo de acceso reducido • Control de Información • Política de lectura: Para un buen uso de Mca, se necesita tener actualizada la información en la misma (coherencia). ¿Cómo se lleva la info a MCa? • Política de escritura: Cuando el user quiere modificar info,¿cómo se escribe? • OJO: Reemplazo de Mca únicamente en asociativas y asociativas por conjuntos

  4. Política de Lectura • OOF • Early Start MP MCa 1 2 3 4 CPU

  5. Política de Lectura • OOF • Early Start MP MCa 1 2 3 4 3 CPU

  6. Política de Lectura • OOF • Early Start MP MCa 1 2 3 4 3 CPU

  7. Política de Lectura • OOF • Early Start MP MCa 1 2 3 4 1 3 CPU

  8. Política de Lectura • OOF • Early Start MP MCa 1 2 3 4 1 2 3 CPU

  9. Política de Lectura • OOF • Early Start MP MCa 1 2 3 4 1 2 3 4 CPU

  10. Política de Lectura • OOF • Early Start MP MCa 1 2 3 4 1 2 3 4 CPU MP MCa 1 2 3 4 CPU

  11. Política de Lectura • OOF • Early Start MP MCa 1 2 3 4 1 2 3 4 CPU MP MCa 1 2 3 4 1 CPU

  12. Política de Lectura • OOF • Early Start MP MCa 1 2 3 4 1 2 3 4 CPU MP MCa 1 2 3 4 1 2 CPU

  13. Política de Lectura • OOF • Early Start MP MCa 1 2 3 4 1 2 3 4 CPU MP MCa 1 2 3 4 1 2 3 CPU

  14. Política de Lectura • OOF • Early Start MP MCa 1 2 3 4 1 2 3 4 CPU MP MCa 1 2 3 4 1 2 3 CPU

  15. Política de Lectura • OOF • Early Start MP MCa 1 2 3 4 1 2 3 4 CPU MP MCa 1 2 3 4 1 2 3 4 CPU

  16. Política de escritura • Copy(write)-Back MP MCa 3 3 CPU

  17. Política de escritura • Copy(write)-Back MP MCa 2 3 CPU

  18. Política de escritura • Copy(write)-Back MP MCa 2 3 CPU

  19. Política de escritura • Copy(write)-Back MP MCa 2 2 CPU

  20. Política de escritura • Copy(write)-Back MP MCa 3 3 CPU

  21. Política de escritura • Copy(write)-Back MP MCa 3 2 CPU

  22. Política de escritura • Copy(write)-Back MP MCa reemplazo 3 2 CPU

  23. Política de escritura • Copy(write)-Back reemplazo y dato mod MP MCa 3 2 3 CPU

  24. Política de escritura • Copy(write)-Back MP MCa 2 2 3 Segun Politica Lectura CPU

  25. Política de escritura • Copy(write)-Back MP MCa 2 2 Segun Politica Lectura CPU

  26. Política de escritura • Copy(write)-Back MP MCa 2 2 Segun Politica Lectura CPU

  27. Política de escritura (II) • Write-through MP MCa 3 3 CPU

  28. Política de escritura (II) • Write-through MP MCa 2 2 CPU

  29. Operaciones MCa • Lectura • Acierto • Fallo • Escritura (Política de Escritura) • Acierto • Fallo • Debemos tener en cuenta políticas

  30. Lectura MCa • Acierto • Fallo MCa T = Tca MCa Segun Politica Lectura reemplazo MP X

  31. Lectura MCa • Acierto • Fallo MCa T = Tca MCa bloque reemplazo MP bloque

  32. Lectura MCa • Acierto • Fallo MCa T = Tca MCa Segun Politica Lectura MP reemplazo X bloque Tacc = Tca (+N * Tmp) + X * Tmp Tocup = Tca ( + N * Tmp) + N * Tmp

  33. Posibles Derivaciones • Tiempo medio de Acceso: probabilidades de Acierto/Fallo • T = Hr * Tacierto + (1-Hr) * Tfallo • Tiempo medio de Acceso con Probabilidades de Lectura/Escritura • Plec * Tlec + Pesc * Tesc • Tlec calculado con probabilidades acierto/fallo • Tesc calculado con probabilidades acierto/fallo

  34. Posibles Derivaciones (II) • Tiempo máximo de acceso • Igual que tiempo medio de acceso, pero sin tener en cuenta la posibilidad de acierto. • Tiempo mínimo de acceso • Igual que tiempo medio de acceso, pero sin tener en cuenta la posibilidad de fallo. • Tiempo de ocupación • Igual que el tiempo medio de acceso, pero teniendo en cuenta la lectura y escritura de TODAS las palabras del bloque (tiempo en que la CPU realiza otras operaciones)

  35. Parte II Uso de Memoria Virtual

  36. Fase de Traducción MP Paginada TLB DV 3 Niveles

  37. Fase de Traducción MP Paginada TLB DV DR 3 Niveles T = Ttlb

  38. Fase de Traducción MP Paginada TLB DV 3 Niveles

  39. Fase de Traducción MP Paginada TLB DV DF 3 Niveles T = Ttlb + 3 * Tmp

  40. Uso de Memoria Virtual • Traducción y Acceso a la Info secuencial Tacc Ttrad DF Información DV T = Ttrad + Tacc

  41. Uso de Memoria Virtual (II) • Traducción y Acceso a la Info Simultaneo TRAD DV DF (acierto/fallo) TLB ACC Info (acierto/fallo) Byte + Bloque MCa

  42. Uso de Memoria Virtual (II) • Tiempo de Traducción • T = Hrtlb * Ttlb + (1 - Hrtlb) * (Ttlb + N * Tmp) • Tiempo de Acceso • Acierto: T = Tca • Fallo: T = Tca (+ …) • Habiendo Simultaneidad • T = max (Ttrad,Tacc) + (Si fallo MCa) …

  43. Uso de Memoria Virtual (III) • Diferencias entre secuencial y simultaneo • Acierto en Cache • Tsec = Ttrad (aciertos o fallos) + Tca • Tsimul = max(Ttrad,Tca) • Fallo en Cache • Tsec = Ttrad (acierto o fallo) + Tacc • Tsimul = max (Ttrad, Tca) + Tfallo

  44. Uso de Memoria Virtual • Posibilidades: • Traducción • Acierto TLB: Ttlb • Fallo TLB: Ttlb + N * Tmp (N niveles de pagina) • Acceso Información • Acierto Mca: Tca • Fallo Mca: Tca (+ Tfallo_cache) • Mezclar posibilidades con derivaciones de tiempos • OJO: Tiempo de Traducción es siempre el mismo en todos los casos (acceso, ocupación) • Tpo maximo de acceso: Solo fallos de TLB (1 – Hr_tlb = 100%) • Tpo minimo de acceso: Solo aciertos de TLB (Hr_tlb = 100%)

  45. Parte III Inclusión de nuevas tecnologías

  46. Nuevas Tecnologías • Memoria Cache de 2º Nivel • Stream Buffer • Buffer de Escritura • Victim Buffer • Posibilidad de mezclar: Traducción + Acceso simple a MCa + Nuevas Tecnologías

  47. Memoria Cache de 2º Nivel • Cuando falla el MCa de Nivel 1, se accede al MCa de Nivel 2. • Políticas de Nivel 1 y Políticas de Nivel 2 • Si falla MCa de Nivel 2, se accede a MP. MCa1 MCa2 MP

  48. Stream Buffer • Anticipaciones MP MCa Stream CPU

  49. Stream Buffer • Anticipaciones MP MCa Stream CPU

  50. Stream Buffer • Anticipaciones MP MCa Stream 2 CPU

More Related