TEMA 11: MEJORA DE LAS PRESTACIONES DE LAS CACHE.
|
|
- Eduardo Cuenca Piñeiro
- hace 7 años
- Vistas:
Transcripción
1 TEMA 11: MEJORA DE LAS PRESTACIONES DE LAS CACHE. 1. Introducción. 2. Mejora de la penalización por fallo. 3. Mejora de la tasa de fallos. 4. Mejora de la tasa de fallos y penalización por fallo mediante paralelismo. 5. Mejora del tiempo en caso de acierto. Bibliografía: J.L. Hennessy & D. A. Patterson. Computer Architecture: A Quantitative Approach 2 a y 3 a ed., Morgan Kauffman Publishers, 1996 y Departamento de Informática de Sistemas y Computadores (DISCA) Facultad de Informática de Valencia 11-1
2 1 INTRODUCCIÓN 1. Introducción T acceso = T A + T F P F Tiempo de acceso medio a memoria: Mejorar las prestaciones de las cache? Para mejorar las prestaciones de las cache hay que actuar sobre cada uno de los términos: Reducir el tiempo en caso de acierto (T A). Reducir la tasa de fallos (T F ). Reducir la penalización por fallo (P F ). 11-2
3 2 MEJORA DE LA PENALIZACIÓN POR FALLO 2. Mejora de la penalización por fallo Caches multinivel Nuevo nivel de cache (L2) ubicado entre la memoria cache y la memoria principal: La cache L1 es lo suficientemente pequeña como para ser tan rápida como el procesador. La cache L2 es lo suficientemente grande como para capturar muchos de los accesos a memoria principal. Cómo cambia la ecuación del tiempo de acceso? T acceso = T A L1 + T F L1 P F L1 Y la penalización en caso de fallo de cache L1 es: P F L1 = T A L2 + T F L2 P F L2 Sustituyendo: T acceso = T A L1 + T F L1 (T A L2 + T F L2 P F L2 ) En un sistema de memoria con varios niveles de cache distinguimos dos tipos de tasas de fallos: Tasa de fallos local= Num. de fallos de la cache Num. total accesos cache Para la cache L1 es T F L1 Para la cache L2 es T F L2 Tasa de fallos global= Num. de fallos de la cache Num. total accesos Para la cache L1 es T F L1 Fallos L2 Para la cache L2 es = Fallos L1 Total accesos Total accesos Fallos L2 = T F Accesos L2 L1 T F L2 Fracción de accesos que llegan a la memoria Fallos L2 Fallos L1 = Fallos L1 AccesosL1 11-3
4 2 MEJORA DE LA PENALIZACIÓN POR FALLO Efecto sobre la tasa de fallos: Caches multinivel (cont.) Algunos aspectos de diseño: La velocidad de la cache L1 afecta al ciclo de reloj del procesador Cache L1 pequeña y con correspondencia directa. Velocidad de la cache L2 afecta la penalización por fallo de L1 Reducir P F L1 = T A L2 + T F L2 P F L2? Reducir T F L2 Cache L2 mucho mayor que L1 y con correspondencia asociativa. Inclusión/exclusión multinivel Inclusión multinivel Los datos que están en la cache L1 están siempre en la cache L2. Interesante para garantizar coherencia. Sólo es necesario comprobar el nivel superior (L2). Deben emplearse tamaños de bloque iguales en la caches L1 y L2 o en caso de reemplazamiento en L2 hay que invalidar todos los bloques de L1 que componen el bloque de L2, aumentando T F L1. Exclusión multinivel (AMD Athlon) Los datos contenidos en L1 nunca están en la cache L2 Un fallo en L1 intercambia bloques entre las cache L1 y L2 Evita desperdiciar espacio en la cache L2. Es interesante cuando el tamaño de la cache L2 es solo ligeramente superior al de la cache L1 11-4
5 2 MEJORA DE LA PENALIZACIÓN POR FALLO Critical word first y Early restart El procesador sólo necesita una palabra del bloque que ha provocado el fallo. Idea: no esperar a tener el bloque totalmente cargado para entregar la palabra solicitada al procesador. Critical word first Accede primero en memoria a la palabra solicitada por el procesador. Trae el resto del bloque mientras el procesador continua con la ejecución. Early restart: Acceder a las palabras del bloque normalmente. En cuanto se lee la palabra solicitada por el procesador se le entrega y éste continua con la ejecución. Con estas técnicas, se obtienen ventajas cuando: Se emplean tamaños de bloque grandes. Cuanto menor sea la probabilidad de acceder a otra palabra del bloque antes de que se haya cargado totalmente. 11-5
6 2 MEJORA DE LA PENALIZACIÓN POR FALLO Problema de las escrituras: Buffers de escritura Write-through: y No-write allocate Las escrituras se hace directamente sobre la memoria principal. El procesador se detiene hasta que la escritura se ha hecho. Write-back: Cuando se reemplaza un bloque sucio, hay que escribirlo en memoria principal. El procesador se detiene hasta que la escritura se ha hecho. Idea: buffer de escritura. el procesador escribe sobre el buffer en vez de sobre la memoria y continua la ejecución en paralelo con la escritura en memoria. Problema: dependencias de datos con la memoria. 1 sd r3,a(r10) ; Escritura con fallo y write-through en Mem[a+r10] 2 ld r1,b(r11) 3 ld r2,a(r10) ; Lectura con fallo de Mem[a+r10] Si la escritura del r3 (instr 1) no se ha realizado cuando se lee el r2 (instr 3), el valor cargado es incorrecto Solución: Esperar a que el buffer de escritura se vacíe antes de leer el dato. Comprobar si la dirección referenciada está en el buffer de escritura, y, sino está dejar que la lectura continúe. 11-6
7 2 MEJORA DE LA PENALIZACIÓN POR FALLO Buffer de escrituras combinadas Escribir un bloque completo en memoria es más efectivo que una palabra. Idea: Se intenta completar todo un bloque antes de escribir en la memoria. Caches víctima Idea: guardar lo que se desecha por si acaso se necesita nuevamente cache víctima. Cache víctima: pequeña cache totalmente asociativa que alberga los bloques desechados por reemplazamientos. En caso de fallo de cache, se comprueba si está alojado en la cache víctima. En caso afirmativo, se intercambia el bloque entre la cache y la cache víctima. Es una técnica efectiva con tan sólo unos pocos bloques en la cache víctima (8 entradas en el Athlon). 11-7
8 3 REDUCIR LA TASA DE FALLOS. 3. Reducir la tasa de fallos. Clasificación de los fallos de bloque: Primera vez (compulsory). Los originados la primera vez que se accede a un bloque. Suelen representar un bajo porcentaje del total de fallos. Capacidad. Si la cache no puede alojar todos los bloques necesarios durante la ejecución de un programa, se producirán fallos de capacidad: hay bloques que se descartan y que después deben volver a cargarse. Una cache muy grande los reduce a cero. Conflicto. Si la correspondencia es directa o asociativa por conjuntos, aparecen fallos por conflicto: hay bloques que se descartan y luego tienen que cargarse nuevamente si se ubican en el mismo lugar de la cache. Una cache totalmente asociativa los reduce a cero, pero necesita mucho hardware y puede reducir la frecuencia de reloj. La técnicas para reducir la tasa de fallos pretenden reducir cada uno de ellos. 11-8
9 3 REDUCIR LA TASA DE FALLOS. Aumentar el tamaño de bloque Reduce los fallos de primera vez ( T F ). Mejora la localidad espacial. Reduce el número de bloques para un misma capacidad de la cache. Puede empeorar los fallos por conflicto ( T F ). Puede empeorar los fallos por capacidad ( T F ). Aumenta la penalización en caso de fallo ( P F ), ya que hay que traer más información de la memoria. P F depende de la latencia L y ancho de banda B de la memoria: P F = L + 1 n, siendo n el tamaño de bloque. B Recordando la ecuación del tiempo de acceso T acc = T A + T F P F : Si la memoria tiene alta latencia y alto ancho de banda: Interesa tamaño de bloque grande, ya que reduce T F con poco aumento de P F. Si la memoria tiene baja latencia y bajo ancho de banda: Interesa tamaño de bloque pequeño. Traerse un bloque más grande reduce T F pero aumenta notablemente P F. 11-9
10 3 REDUCIR LA TASA DE FALLOS. Aumentar el tamaño de la cache Reduce los fallos por capacidad ( T F ). Aumenta el coste. Aumenta el tiempo en caso de acierto ( T A). Mayor asociatividad Reduce los fallos por conflicto ( T F ). Requiere más comparadores puede aumentar el tiempo en caso de acierto ( T A) Reglas empíricas: Una correspondencia asociativa de 8 vías es casi tan buena como totalmente asociativa. Una cache con correspondencia directa de tamaño N tiene la misma tasa de fallos que una asociativa de dos vías de tamaño N
11 3 REDUCIR LA TASA DE FALLOS. Predicción de vía y cache pseudo-asociativas Objetivo: reducir los fallos por conflicto sin aumentar el tiempo en caso de acierto. Idea: predicción de vía (Alpha 21264): La cache es asociativa. La cache incluye un predictor de qué bloque del conjunto se referenciará la próxima vez que se acceda a la cache. Se accede al bloque predicho, y si la predicción es correcta, se devuelve. En otro caso, se compara con el resto de etiquetas. Hay dos tiempos en caso de acierto: Si la predicción es correcta: sólo se compara con la etiqueta de este bloque tiempo en caso de acierto bajo En caso de fallo en la predicción, se compara con el resto de bloques del conjunto tiempo en caso de acierto más elevado. El predictor acierta en el 85 % de los casos. Cache pseudoasociativa. Un bloque puede estar ubicado en dos sitios en la cache: El obtenido aplicando una correspondencia directa. El obtenido aplicando otra función sencilla (por ejemplo, invertir el bit de mayor peso del índice) pseudo-conjunto. Hay dos tiempo en caso de acierto: Si el bloque se encuentra en el primer lugar: tiempo en caso de acierto similar al de una correspondencia directa. Si el bloque se encuentra en el pseudo-conjunto: tiempo en caso de acierto mayor. Aumenta la penalización por fallo (P F ) en caso de que el bloque no esté ni en la primera ni en la segunda ubicación. Se gasta tiempo en comprobar la segunda ubicación antes de ir a la memoria principal
12 3 REDUCIR LA TASA DE FALLOS. Optimizaciones del compilador El compilador genera un código optimizado que reduce la tasa de fallos. Reducción de la tasa de fallos de instrucciones: Obtención de estadísticas sobre conflictos entre grupos de instrucciones. Reordenación de grupos de instrucciones para reducir los fallos de conflicto. Reducción de los fallos de datos Ejemplo: operaciones con vectores. Reorganizar el código para operar sobre todos los datos de un bloque antes de pasar al siguiente. Mejorar la localidad espacial. Intercambio de bucles Simplemente cambiando el anidamiento de los bucles podemos conseguir operar con los datos en el orden en que están almacenados: Ejemplo, vector x almacenado por filas: /* antes */ for (j=0; j<100; j=j+1) for (i=0; i<5000; i=i+1) x[i][j] = 2* x[i][j] /* despues */ for (i=0; i<5000; i=i+1) for (j=0; j<100; j=j+1) x[i][j] = 2* x[i][j] salta 100 palabras en cada acceso accede secuencialmente los datos. Mejorar la localidad temporal: blocking Si los vectores se acceden tanto por filas como por columnas, es mejor operar sobre submatrices o bloques, tratando de maximizar los accesos a los datos cargados en la cache antes de reemplazarlos. Ejemplo: multiplicación de matrices /* antes */ for (i=0; i<n; i=i+1) for (j=0; j<n; j=j+1) { r=0; for (k=0; k<n; k=k+1) r = r+y[i][k]*z[k][j] x[i][j] =r; }; /* despues */ for (jj=0; jj<n; jj=jj+b) for (kk=0; kk<n; kk=kk+b) for (i=0; i<n; i=i+1) for (j=jj; j< min(jj+b,n); j=j+1) { r=0; for (k=kk; k<min(kk+b,n); k=k+1) r = r+y[i][k]*z[k][j] x[i][j] =x[i][j]+r; }; 11-12
13 4 REDUCIENDO PF/TF MEDIANTE PARALELISMO 4. Reduciendo la penalización por fallo/tasa de fallos mediante paralelismo técnicas que solapan la ejecución de instrucciones en el procesador con el acceso a la memoria. Cache no bloqueante La cache continua aceptando peticiones de acceso mientras se está sirviendo un fallo de cache. Posibilidades: acierto ante fallo : la cache suministra o acepta nuevas peticiones, siempre éstas sean aciertos. fallo ante fallo / acierto ante múltiples fallos : se pueden servir múltiples fallos simultáneamente
14 4 REDUCIENDO PF/TF MEDIANTE PARALELISMO Pre-búsqueda hardware de instrucciones y datos Idea: buscar la información antes de que sea solicitada por el procesador. La información pre-búscada se almacena en un buffer externo, que se accede más rápido que la memoria principal. Pre-búsqueda de instrucciones. El procesador trae dos bloques ante un fallo: el bloque solicitado, que se ubica en la cache y el consecutivo, que se ubica en el buffer de instrucciones. Cuando se produce un fallo de cache, se lee el bloque del buffer de instrucciones, si está disponible y se lanza la siguiente pre-búsqueda. Evaluación de la propuesta. Cache de 4KB con bloques de 16 bytes: 1 único buffer evita un 15 % 25 % de los fallos 4 buffers evitan un 50 % de los fallos 16 buffers evitan un 72 % de los fallos Pre-búsqueda de datos. Similar a la de instrucciones. El bloque pre-buscado puede ser el consecutivo o estimado de alguna manera (por ejemplo, tomando en cuenta la diferencia entre la última dirección y la previa, UltraSPARC III). Los accesos a memoria principal por pre-búsqueda pueden interferir con los fallos de cache puede aumentar la penalización por fallo de estos últimos
15 4 REDUCIENDO PF/TF MEDIANTE PARALELISMO Pre-búsqueda controlada por el compilador El compilador inserta instrucciones de pre-búsqueda para solicitar los datos antes de que se necesiten. La pre-búsqueda debe ser invisible al programa: no debe cambiar el contenido de los registros ni de la memoria no debe generar fallos de página de memoria virtual ni excepciones por violación de protección. nonbinding fetch Especialmente útil en bucles. Ejemplo: /* original */ for (i=0; i<3; i=i+1) for (j=0; j<100; j=j+1) a[i][j] = b[j][0]* b[j+1][0]; /* con pre-búsqueda */ for (j=0; j<100; j=j+1) { prefetch(b[j+7][0]) prefetch(a[0][j+7]) a[0][j] = b[j][0]* b[j+1][0];}; for (i=1; i<3; i=i+1) for (j=0; j<100; j=j+1) { prefetch(a[i][j+7]) a[i][j] = b[j][0]* b[j+1][0];}; Hay cierta sobrecarga: la inserción de instrucciones de pre-búsqueda aumenta el número de instrucciones ejecutadas por el programa. hay que concentrarse en los accesos que serán fallos de bloque con una probabilidad alta
16 5 REDUCIENDO EL TIEMPO EN CASO DE ACIERTO. 5. Reduciendo el tiempo en caso de acierto. Reducir el tiempo en caso de acierto es muy importante: afecta al periodo de reloj del procesador (la T de la ecuación del tiempo de ejecución). Caches pequeñas y sencillas Un gran % del tiempo de acceso a la cache se invierte en comparar el campo de etiqueta de la dirección con las etiquetas almacenadas en la cache. Modo de reducir este tiempo: Cache pequeña: el hardware pequeño es más rápido y cabe en el mismo chip que el procesador. Cache sencilla: correspondencia directa puede solaparse la lectura del dato con la comprobación de la etiqueta. Tendencia: Caches L1: pequeñas y sencillas. Cache L2: más grandes, manteniendo las etiquetas en el mismo chip que el procesador y los datos en otro chip
17 5 REDUCIENDO EL TIEMPO EN CASO DE ACIERTO. Evitar la traducción de memoria virtual durante el acceso a la cache Otra componente del tiempo en caso de acierto es el invertido en traducir la dirección virtual emitida por el procesador en una dirección física de memoria. Idea. Utilizar direcciones virtuales en la cache. Caches virtuales vs. caches físicas Problemas: Protección. Es parte del proceso de traducción dirección virtual física. Hay que copiar información de la TLB a la cache. Procesos. Cada vez que se cambia de contexto, una misma dirección virtual apunta a una dirección física distinta. Hay que vaciar la cache con cada cambio de contexto o bien añadir identificadores de proceso (PID) a las etiquetas de la cache. Sinónimos o alias. Una misma dirección física puede referenciarse mediante dos o más direcciones virtuales. Hay varias copias del mismo dato, que deben mantenerse idénticas. Nueva idea. La dirección dentro de la página (page offset) es la misma, tanto en la dirección virtual como en la física. Virtually indexed physically tagged caches (Alpha 21264). Utiliza parte de la dirección dentro de la página para seleccionar el conjunto (campo de Índice ). La lectura de la cache se realiza en paralelo con la traducción. Limitación: el tamaño de una cache con correspondencia directa o del número de conjuntos de una cache con correspondencia asociativa no puede exceder el tamaño de página de memoria virtual
18 5 REDUCIENDO EL TIEMPO EN CASO DE ACIERTO. Virtually indexed physically tagged caches (cont.) 11-18
19 5 REDUCIENDO EL TIEMPO EN CASO DE ACIERTO. Segmentación de la cache Segmenta el hardware de acceso a la cache de instrucciones. Un acceso a la cache requiere varios ciclos de reloj (por ejemplo, 4 ciclos en el Pentium 4). Pero pueden haber varios accesos en curso. Tiene implicaciones en la segmentación del procesador: más ciclos de parada en los saltos y en las operaciones de carga. Realmente, esta técnica aumenta el ancho de banda de la cache de instrucciones más que reducir su latencia
Memoria. Organización de memorias estáticas.
Memoria 1 Memoria Organización de memorias estáticas. 2 Memoria En memoria físicas con bus de datos sea bidireccional. 3 Memoria Decodificación en dos niveles. 4 Necesidad de cantidades ilimitadas de memoria
Más detallesOrganización lógica Identificación de bloque
Cómo se encuentra un bloque si está en el nivel superior? La dirección se descompone en varios campos: Etiqueta (tag): se utiliza para comparar la dirección requerida por la CPU con aquellos bloques que
Más detallesMemoria Cache. Departamento de Arquitectura de Computadores
Memoria Cache Departamento de Arquitectura de Computadores Índice Introducción. Conceptos básicos Características de los sistemas de memoria Jerarquías de memoria Memoria Principal Características físicas
Más detallesEjercicios de jerarquía de memoria
Ejercicios de jerarquía de memoria J. Daniel García Sánchez (coordinador) David Expósito Singh Javier García Blas Óscar Pérez Alonso J. Manuel Pérez Lobato Arquitectura de Computadores Grupo ARCOS Departamento
Más detallesMemoria Virtual. Memoria Virtual
Memoria Virtual DISEÑO DE SISTEMAS DIGITALES EL-3310 I SEMESTRE 2008 Memoria Virtual Define la relación entre memoria principal y memoria secundaria Permite crear la ilusión de una memoria principal de
Más detallesJerarquía de memoria - Motivación
Jerarquía de memoria - Motivación Idealmente uno podría desear una capacidad de memoria infinitamente grande, tal que cualquier. palabra podría estar inmediatamente disponible Estamos forzados a reconocer
Más detallesEjercicios Jerarquía de Memoria
Ejercicios Jerarquía de Memoria Grupo ARCOS Estructura de Computadores Grado en Ingeniería Informática Universidad Carlos III de Madrid Contenidos 1. Memoria caché CPU cache Memoria principal 2. Memoria
Más detallesCPU MEMORIAS CACHE. Memorias caché. Memoria caché = memoria de tamaño pequeño y acceso rápido situada entre la CPU y la memoria principal.
MEMORIAS CACHE Memoria caché = memoria de tamaño pequeño y acceso rápido situada entre la CPU y la memoria principal. Tiempo ciclo memoria > tiempo de ciclo del procesador la CPU debe esperar a la memoria
Más detallesArquitectura de Computadores II Clase #7
Arquitectura de Computadores II Clase #7 Facultad de Ingeniería Universidad de la República Instituto de Computación Curso 2009 Veremos Memoria virtual Resumen de ideas para mejorar performance 1 Recordemos:
Más detallesResolución de los Ejercicios de la Hoja 4
Resolución de los Ejercicios de la Hoja 4 José Miguel Montañana Aliaga. Fernando Castro Rodríguez. Francisco Tirado Fernández. Dpto. de Arquitectura de Computadores y Automática Facultad de Informática.
Más detallesEjercicios del tema 5. Jerarquía de de Memoria
Ejercicios del tema 5. Jerarquía de de Memoria Ejercicio 1. Considere un computador de 32 bits con una caché de 64 KB asociativa por conjuntos de 4 vías y un tiempo de acceso de 4 ns. El tamaño de la línea
Más detallesARQUITECTURA DE COMPUTADORES. 2º INGENIERÍA INFORMÁTICA. Problemas de Gestión de Memoria.
ARQUITECTURA DE COMPUTADORES 2º INGENIERÍA INFORMÁTICA Problemas de Gestión de Memoria 1 Se tiene un procesador de tamaño de palabra 16 bits con un espacio de direcciones de 2 16 posiciones de memoria
Más detallesOrganización del Computador 1 Memoria Cache
Organización del Computador 1 Memoria Cache Departamento de Computación Facultad de Ciencias Exactas y Naturales Universidad de Buenos Aires 2011 Memorias: Evolución Memoria cache Pioneros: Maurice Wilkes
Más detallesArea Académica: Sistemas Computacionales. Tema: Elementos de diseño de memoria caché
Area Académica: Sistemas Computacionales Tema: Elementos de diseño de memoria caché Profesor: Raúl Hernández Palacios Periodo: 2011 Keywords: Memory, cache memory. Tema: Elementos de diseño de memoria
Más detallesTema 20 Gestión de memoria
Tema 20 Gestión de memoria Índice INTRODUCCIÓN 1 REQUISITOS DE LA GESTIÓN DE MEMORIA 2 ESTRUCTURA DE LA MEMORIA EN SO SIN MEMORIA VIRTUAL 2 Recubrimiento 3 MEMORIA VIRTUAL 4 Funcionamiento 4 Soporte del
Más detallesTEMA II: ALMACENAMIENTO DE LA INFORMACIÓN
CUESTIONES A TRATAR: Existe un tipo único tipo de memoria en un determinado computador? Todas las memorias de un computador tienen la misma función?. Qué es la memoria interna de un computador? Por qué
Más detallesTema 6 (II) Jerarquía de Memoria
Tema 6 (II) Jerarquía de Memoria Grupo ARCOS Estructura de Computadores Grado en Ingeniería Informática Universidad Carlos III de Madrid Contenidos 1. Memoria cache Introducción: Acceso a bloque y principio
Más detallesTema 7. Memoria virtual
Tema 7 Memoria virtual Índice Gestión de memoria Memoria virtual Memoria virtual paginada Memoria virtual segmentada 5 Memoria virtual de segmentos paginados 6 Memoria virtual del Pentium II Gestión de
Más detallesRegistros. Cache L1. Cache L2. Memoria Principal (RAM) Memoria Secundaria (Disco) Memoria Terciaria (Cinta)
JERARQUÍA DE MEMORIA 1 Introducción Este capítulo está dedicado al análisis de los distintos niveles de memoria existentes en un computador, con especial énfasis en los sistemas de cache. 2 Justificación
Más detallesOrganización del Sistema de Memoria. 1. Tipos de memoria 2. Jerarquía de memoria 3. El principio de localidad 4. Organización de la memoria
Organización del Sistema de Memoria 1. Tipos de memoria 2. Jerarquía de memoria 3. El principio de localidad 4. Organización de la memoria 1. Tipos de memoria La memoria se puede clasificar de acuerdo
Más detallesTema V Generación de Código
Tema V Generación de Código Una vez que se ha realizado la partición HW/SW y conocemos las operaciones que se van a implementar por hardware y software, debemos abordar el proceso de estas implementaciones.
Más detallesCaché. Matías Barbeito Organización del computador 1 2 cuatrimestre 2011
Caché Matías Barbeito Organización del computador 1 2 cuatrimestre 2011 Ciclo de ejecución 1. Busco próxima instrucción 2. Incremento el PC 3. Decodifico 4. Busco operandos 5. Ejecuto 6. Guardo resultados
Más detallesOrganización del Computador I Verano. Memoria Virtual Basado en el capítulo 5 del libro de Patterson y Hennessy
Organización del Computador I Verano Memoria Virtual Basado en el capítulo 5 del libro de Patterson y Hennessy Verano 204 Profesora Borensztejn Memoria Virtual Memoria Virtual es la técnica que permite
Más detallesIngeniería de Computadores I Primera Actividad Calificable
Ingeniería de Computadores I Primera Actividad Calificable www.matesfacil.com 31/03/2016 1 ÍNDICE ÍNDICE Índice 1. Problema 1 3 1.1. Enunciado............................................. 3 1.2. Solución..............................................
Más detallesSimulación de sistemas de memoria con Xcache32
Simulación de sistemas de memoria con Xcache32 1 1. Introducción En este tema simularemos el comportamiento de un sistema de memoria que se compone de una jerarquía de dos niveles: una memoria principal
Más detallesADMINISTRACION DE LA MEMORIA. En memoria 1 solo proceso Desventajas:
ADMINISTRACION DE LA MEMORIA Función del Administrador de Memoria Registra qué parte de memoria está libre y ocupada Asigna y libera espacio en memoria a los procesos Administra el intercambio entre la
Más detallesPlataformas de soporte computacional: arquitecturas avanzadas,
Plataformas de soporte computacional: arquitecturas avanzadas, sesión 2 Diego. Llanos, Belén Palop Departamento de Informática Universidad de Valladolid {diego,b.palop}@infor.uva.es Índice 1. Segmentación
Más detallesTema 5: Memorias. Espacio reservado para notas del alumno
Tema 5: Memorias S Definiciones S Parámetros característicos S Jerarquía de memoria S Dispositivos de almacenamiento S Clasificación S Fundamentos de las memorias S Memoria caché / Memoria virtual S Memoria
Más detallesSISTEMAS OPERATIVOS Ciclo 2014 Plan 2012
Lic. en Sistemas de Información SISTEMAS OPERATIVOS Ciclo 2014 Plan 2012 UNIDAD 6 (Parte B) GESTION DE MEMORIA ING. AGUILERA SERGIO OMAR MEMORIA VIRTUAL Todas las referencias a la memoria se traducirán
Más detalles202 PROBLEMAS DE ARQUITECTURA DE COMPUTADORES
202 PROBLEMAS DE ARQUITECTURA DE COMPUTADORES César Represa Pérez Carmen Rodríguez Clavería Nº de Asiento Registral 00/2013/1733 Burgos, 2013 202 Problemas de Arquitectura de Computadores 2º G.I.I 202
Más detalles15. Arquitectura de los multiprocesadores. 16. Multiprocesadores de memoria compartida. 17. Multicomputadores.
UNIDAD TEMÁTICA 5: MULTIPROCESADORES. 15. Arquitectura de los multiprocesadores. 16. Multiprocesadores de memoria compartida. 17. Multicomputadores. 15-1 TEMA 15: ARQUITECTURA DE LOS MULTIPROCESADORES.
Más detallesGestión de Memoria. Gestión de Memoria. Requisitos de Gestión de Memoria
Gestión de Memoria Gestión de Memoria Dividir la memoria para alojar múltiples procesos La memoria necesita ser asignada eficientemente para alojar tantos procesos como sea posible Capítulo 7 Requisitos
Más detallesSoluciones a los problemas impares. Tema 5. Memorias. Estructura de Computadores. I. T. Informática de Gestión / Sistemas
Tema 5. Soluciones a los problemas impares Estructura de Computadores I. T. Informática de Gestión / Sistemas Curso 28-29 Tema 5 Hoja: 2 / 36 Tema 5 Hoja: 3 / 36 Base teórica La memoria es el lugar en
Más detallesEjercicios de Arquitectura de Computadoras
Ejercicios Arquitectura Computadoras José Garzía 9 En este tipo ejercicios bemos tener siempre presentes estas tres ecuaciones: MP ( en Memoria Principal ) Cantidad en la Memoria Principal por Cantidad
Más detallesTema 4. Subsistema de Memoria
Tema 4. Subsistema de emoria 4.1. Introducción. emoria cache 4.3. emoria principal 4.4. emoria virtual Introducción étodos de correspondencia (ubicación de bloque) Identificación de bloque Sustitución
Más detallesDiagrama temporal de un programa simple. Multi-Programación con dos programas
Diagrama temporal de un programa simple Multi-Programación con dos programas Multi-Programación con tres programas Gestión de la Memoria Mono-programación La memoria se divide en dos partes: Una para el
Más detallesTaller de Sistemas Operativos. Direccionamiento de Memoria 2012
Taller de Sistemas Operativos Direccionamiento de Memoria 2012 TSO Direccionamiento de Memoria - 2010 Agenda Arquitectura de memoria en x86 (IA-32). Direccionamiento en Linux. Arquitectura de memoria en
Más detallesExplotación del paralelismo a nivel de instrucción
Explotación del paralelismo a nivel de instrucción Arquitectura de Computadores J. Daniel García Sánchez (coordinador) David Expósito Singh Javier García Blas Óscar Pérez Alonso J. Manuel Pérez Lobato
Más detalles16bits: Tamaño total: 2 16 Tamaño página: 2 13 nº de páginas: 2 16 / 2 13 = 2 3 = 8 páginas Tamaño de tabla: 2 3 *2B = 16B por tabla
Calcule el espacio de memoria necesario de una tabla de página de un nivel para un espacio de direcciones de 16bits, 32bits, 48bits y 64bits. Asuma que cada entrada de página es del mismo tamaño que el
Más detallesPontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación. 2. Multiprogramación
Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación IIC2343 Arquitectura de Computadores Multiprogramación c Alejandro Echeverría, Hans-Albert Löbel
Más detallesMemorias RAM. Basilio B. Fraguela Rodríguez. Copyright Basilio B. Fraguela 2006
Memorias RAM Basilio B. Fraguela Rodríguez Evolución de la velocidad del procesador y la memoria 1000 Ley de Moore CPU µproc 60%/año 100 10 1 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 DRAM 1990
Más detallesTarea 4.2 Memoria Virtual
1 Tarea 4.2 1. Cuál es la diferencia entre paginación simple y paginación en memoria virtual? En memoria virtual no es necesario que todas las páginas estén en marcos de la memoria principal. Las páginas
Más detalles6. PROCESADORES SUPERESCALARES Y VLIW
6. PROCESADORES SUPERESCALARES Y VLIW 1 PROCESADORES SUPERESCALARES Y VLIW 1. Introducción 2. El modelo VLIW 3. El cauce superescalar 4. Superescalar con algoritmo de Tomasulo 2 PROCESADORES SUPERESCALARES
Más detallesFUNDAMENTOS DE COMPUTACION INVESTIGACION PROCESADORES DIANA CARRIÓN DEL VALLE DOCENTE: JOHANNA NAVARRO ESPINOSA TRIMESTRE II
FUNDAMENTOS DE COMPUTACION INVESTIGACION PROCESADORES DIANA CARRIÓN DEL VALLE DOCENTE: JOHANNA NAVARRO ESPINOSA TRIMESTRE II 2013 Características principales de la arquitectura del procesador AMD Phenom
Más detallesSISTEMAS OPERATIVOS Arquitectura de computadores
SISTEMAS OPERATIVOS Arquitectura de computadores Erwin Meza Vega emezav@unicauca.edu.co Esta presentación tiene por objetivo mostrar los conceptos generales de la arquitectura de los computadores, necesarios
Más detallesLA MEMORIA CACHÉ LA MEMORIA CACHÉ
Si hay algo que limita la velocidad de las transferencias entre la RAM y la CPU es sin duda la primera (no se debe olvidar que el subsistema más rápido de un PC es la CPU). Por tanto, para conseguir "acelerar"
Más detallesARQUITECTURA DE COMPUTADORAS
ARQUITECTURA DE COMPUTADORAS Información General Objetivos Al terminar el curso, el estudiante estará capacitado para: 1. Manejar medidas de performance que permitan comparar diversos sistemas de Computadora.
Más detallesEstructura de los dispositivos de E/S.
Estructura de los dispositivos de E/S. Sistemas Operativos. Tema 6. 1 Estructura dispositivos de almacenamiento masivo. Almacenamiento secundario o masivo: Su misión: Contener permanentemente gran cantidad
Más detallesESTRUCTURA DE COMPUTADORES I (Capítulo 16:El Teclado) 1/5 16-EL TECLADO
ESTRUCTURA DE COMPUTADORES I (Capítulo 16:El Teclado) 1/5 16-EL TECLADO 16.1 INTRODUCCIÓN: El teclado se comunica con la BIOS a través de puertos de comunicación controlados por las interrupciones de la
Más detallesPredicción Dinámica - 1. Arquitectura de Computadores
Para conseguir el rendimiento óptimo de una instrucción por ciclo, otro de los obstáculos que nos encontramos es el de las dependencias de control, esencialmente, los saltos. Ya vimos que hay soluciones
Más detallesAdministración de la memoria
Administración de la memoria 1 Administración de la Memoria Funciones: - administrar el recurso memoria realizando la asignación del mismo a los procesos - proveer mecanismos que eviten la interferencia
Más detallesEspacio de direcciones de un proceso
Espacio de direcciones de un proceso Yolanda Becerra Fontal Juan José Costa Prats Facultat d'informàtica de Barcelona (FIB) Universitat Politècnica de Catalunya (UPC) BarcelonaTech 2014-2015 QP Indice
Más detallesMEMORIA CACHÉ. Componentes principales de un ordenador
MEMORIA CACHÉ UPCO ICAI Departamento de Electrónica y Automática 1 Componentes principales de un ordenador Procesador Entrada Control Memoria Datapath Salida Elemento a estudiar UPCO ICAI Departamento
Más detallesTema 2. Arquitectura de CPU avanzadas 15/03/2011
Tema 2. Arquitectura de CPU avanzadas. Juegos CISC y RISC. Proceso paralelo. Procesadores escalares y vectoriales. Segmentación. Caches multinivel. Índice Introducción... 1 Procesadores CISC y RISC...
Más detallesT E M A 2. Sistema de Memoria
T E M A 2 Sistema de Memoria 2-2 Sistema de Memoria Indice 3.- INTRODUCCIÓN AL TEMA... 2-3 3..- CONCEPTOS BÁSICOS... 2-3 3.2.- TECNOLOGÍAS DE MEMORIA... 2-3 3.3.- LOCALIDAD... 2-4 3.3..- Localidad de referencia
Más detallesMICROSOFT WORD 2013 (COMPLETO)
MICROSOFT WORD 2013 (COMPLETO) Curso para conocer y aprender a manejar el procesador de textos Microsoft Word 2013, perteneciente a la suite ofimática Microsoft Office 2013, explicando todas las funciones
Más detallesHardware y Estructuras de Control. Memoria Virtual. Ejecución de un Programa. Ejecución de un Programa
Memoria Virtual Capítulo 8 Hardware y Estructuras de Control Las referencias de memoria se traducen a direcciones físicas dinámicamente en tiempo de ejecución Un proceso puede ser intercambiado hacia dentro
Más detallesGestión de memoria Gestión de memoria Índice y bibliografía
Gestión de memoria Arquitectura de Sistemas Paralelos (1) Índice Jerarquía de memoria Memorias cache Gestión de memoria Índice y bibliografía Organización física Organización lógica Optimización Memoria
Más detallesTema 7. Generación de código
Departamento de Tecnologías de la Información Tema 7 Generación de código Ciencias de la Computación e Inteligencia Artificial Índice 7.1 Visión general 7.2 Código de tres direcciones 2 Índice 7.1 Visión
Más detallesSISTEMAS ELECTRÓNICOS DIGITALES
SISTEMAS ELECTRÓNICOS DIGITALES PRÁCTICA 6 SISTEMA DE ENCRIPTACIÓN 1. Objetivos - Estudio del funcionamiento de memorias RAM y CAM. - Estudio de métodos de encriptación y compresión de datos. 2. Enunciado
Más detallesTema 6. Administración de memoria
Tema 6. Administración de memoria 1. Gestión de memoria real 2. Gestión de memoria virtual 1 1. Gestión de memoria real Ordenadores cada vez con más memoria Programas que cada vez ocupan más Gestor de
Más detallesTema 7: Memoria Virtual.
Objetivos: Tema 7: Memoria Virtual. Analizar la necesidad de introducir el mecanismo de memoria virtual en un computador. Estudiar el funcionamiento de la memoria virtual paginada y las alternativas de
Más detallesServicios del Sistema Operativo (SO)
Servicios del Sistema Operativo (SO) Un SO brinda un entorno para ejecutar programas. Este, ofrece servicios a los programas y a los usuarios de dichos programas. Por supuesto, los servicios específicos
Más detallesUnidad 2: Gestión de Memoria
Unidad 2: Gestión de Memoria Tema 3, Gestión de Memoria: 3.1 Definiciones y técnicas básicas. 3.2 Gestión de memoria contigua: Partición, fragmentación, algoritmos de ubicación... 3.3 Paginación: Estructura
Más detallesArquitectura de Computadores. Apellidos, Nombre:
No se considerarán como válidas las respuestas en las que no se justifiquen los cálculos realizados No se permite el uso de ningún tipo de documentación, ni de calculadora Sólo existe una única opción
Más detallesPROBLEMAS TEMA 3: Unidad de Entrada/Salida
PROBLEMAS TEMA 3: Unidad de Entrada/Salida Problemas propuestos en examen 3.1 Un computador dispone de un canal multiplexor que controla 2 unidades de disco y 2 unidades de cinta. Las unidades de disco
Más detallesArquitectura de Computadores
Arquitectura de Computadores 7. Memoria Caché 1. Fundamento e Introducción 2. Estructura 3. Políticas de Ubicación 4. Políticas de Sustitución 5. Políticas de Escritura 6. Otras Consideraciones Arquitectura
Más detallesMicrosoft Word 2003 (Completo)
Página 1 Horas de teoría: 28 Horas de práctica: 34 Precio del Curso: 179 Curso para conocer y aprender a manejar el procesador de textos Microsoft Word 2003, explicando las funciones necesarias para el
Más detallesOrganización de Computadoras. Clase 10
Organización de Computadoras Clase 10 Temas de Clase Memoria Cache Memoria Externa Notas de Clase 10 2 Memoria Caché Históricamente CPU han sido más rápidas que las memorias. El aumento de circuitos que
Más detallesEJERCICIOS DEL TEMA 4
Computación de Altas Prestaciones 1 EJERCICIOS DEL TEMA 4 SISTEMAS MULTIPROCESADOR (MEMORIA COMPARTIDA) 1. Se diseña un procesador con un único nivel de memoria caché con tasa de fallos del 6% y tamaño
Más detallesTema 11. Soporte del Sistema Operativo 11.1. REQUERIMIENTOS DE LOS SISTEMAS OPERATIVOS. 11.1.1. MULTIPROGRAMACIÓN.
Tema 11 Soporte del Sistema Operativo 11.1. REQUERIMIENTOS DE LOS SISTEMAS OPERATIVOS. El sistema operativo es básicamente un programa que controla los recursos del computador, proporciona servicios a
Más detallesMICROSOFT WORD AVANZADO. Nº Horas: 18. Objetivos:
MICROSOFT WORD 2003 1. AVANZADO Nº Horas: 18 Objetivos: Curso para conocer y aprender a manejar el procesador de textos Microsoft Word 2003, explicando las funciones necesarias para el manejo del programa
Más detallesMINISTERIO DE EDUCACIÓN PÚBLICA IPEC DE SANTA BÁRBARA MANTENIMIENTO DE EQUIPO DE COMPUTACIÓN. Memoria Principal RAM Memoria de acceso aleatorio
MINISTERIO DE EDUCACIÓN PÚBLICA IPEC DE SANTA BÁRBARA MANTENIMIENTO DE EQUIPO DE COMPUTACIÓN Memoria Principal RAM Memoria de acceso aleatorio MEMORIA RAM Memoria de acceso aleatorio, es la memoria primaria
Más detallesEstructura de Computadores. Contenido. Sistema de E/S. 7.- E/S y dispositivos periféricos
Estructura de Computadores 7.- E/S y dispositivos periféricos Contenido Clasificación y tipos de periféricos Módulos de E/S. Instrucciones de E/S. Técnicas de E/S. E/S programada. E/S mediante interrupciones.
Más detallesTEMA 3: El proceso de compilación, del código fuente al código máquina
TEMA 3: El proceso de compilación, del código fuente al código máquina 3.1 Fase de compilación y linkado (link, montado o enlace) Un programa escrito en un lenguaje de alto nivel, no puede ser ejecutado
Más detallesTema 6. Gestión de la memoria
Tema 6. Índice Introducción Compartición de memoria Memoria virtual Soporte en los procesadores: la MMU en Linux en Windows NT/2000 1 Tema 6. Introducción Necesidad de la gestión de la memoria Requisitos
Más detallesTema: Microprocesadores
Universidad Nacional de Ingeniería Arquitectura de Maquinas I Unidad I: Introducción a los Microprocesadores y Microcontroladores. Tema: Microprocesadores Arq. de Computadora I Ing. Carlos Ortega H. 1
Más detallesSistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria
1.2. Jerarquía de niveles de un computador Qué es un computador? Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria Es un sistema tan complejo
Más detallesFuncionamiento de la computadora
Funcionamiento de la computadora La computadora es una maquina destinada a procesar datos. Este procesamiento involucra dos flujos de información: el de datos y el de instrucciones. Se parte del flujo
Más detallesArquitectura de Computadoras para Ingeniería
Departamento de Cs. e Ingeniería de la Computación Universidad Nacional del Sur Arquitectura de Computadoras para Ingeniería Ejercicios Trabajo Práctico N 7 Jerarquía de Memoria Primer Cuatrimestre de
Más detallesSistemas Operativos II Capítulo 3. Memoria Virtual. 2.- NOTA GENERAL: Tema 3 Gestión de memoria: memoria virtual.
Problemas Resueltos Capítulo. Memoria Virtual. 1.- Notas y criterios para los problemas: -En las soluciones de los problemas se ha representado la división entera por div y el resto de la división entera
Más detallesRespuestas al Problemario Memoria Cache
Respuestas al Problemario Memoria Cache 1. Para la traza de direcciones dada a continuación, calcule la tasa de aciertos suponiendo una memoria caché (mapeo directo) de cuatro líneas de ocho bytes de longitud
Más detallesEVOLUCION PROCESADORES AMD (ADVANCED MICRO DEVICES)
EVOLUCION PROCESADORES AMD (ADVANCED MICRO DEVICES) AMD AM286 Es la copia del intel 80286, creado con permiso de intel. Por petición de IBM como segunda fuente, tienen arquitectura interna de 16 bits,
Más detallesBUAP FACULTAD DE CIENCIAS DE LA COMPUTACIÓN SISTEMAS OPERATIVOS 2 PRACTICA 2 JAIME MORALES FLORES
BUAP FACULTAD DE CIENCIAS DE LA COMPUTACIÓN SISTEMAS OPERATIVOS 2 PRACTICA 2 JAIME MORALES FLORES 200917708 01-FEB-2015 PRIMAVERA 2015 Introducción Linux o mejor dicho GNU/Linux es un núcleo de sistema
Más detallesNivel ISA. Revisión y resultados parcial 1
Nivel ISA Revisión y resultados parcial 1 Parcial 1 SOLUCIÓN Pregunta 1 Tomando en cuenta la secuencia de microinstrucciones (en lenguaje MAL) MAR=SP-1;rd MAR=SP H=MDR;wr MDR=TOS MAR=SP-1;wr TOS=H;goto
Más detallesLa memoria del ordenador
La memoria del ordenador Alberto Molina Coballes David Sánchez López Fundamentos de Hardware Diciembre 2011 La memoria Desde el punto de vista informático, memoria es todo dispositivo que es capaz de:
Más detallesConstruyendo Programas más Complejos
Arquitectura de Ordenadores Construcciones de Alto Nivel en Ensamblador Abelardo Pardo abel@it.uc3m.es Universidad Carlos III de Madrid Departamento de Ingeniería Telemática Construyendo Programas más
Más detallesTEMA 1. Arquitecturas multiprocesador: MIMD de memoria compartida (multiprocesadores) V 2.0
TEMA 1 Arquitecturas multiprocesador: MIMD de memoria compartida (multiprocesadores) V 2.0 José M. Cámara (checam@ubu.es) Multiprocesadores y multicomputadores Multiprocesadores: son sistemas formados
Más detallesOrganización del Computador 1 Memorias
Organización del Computador 1 Memorias Departamento de Computación Facultad de Ciencias Exactas y Naturales Universidad de Buenos Aires Octubre 2009 Jerarquía de las memorias Jerarquía de memorias en un
Más detallesSISTEMAS. UNIDAD VI Parte A ADMINISTRACION DE MEMORIA ING. AGUILERA SERGIO OMAR
SISTEMAS OPERATIVOS UNIDAD VI Parte A ADMINISTRACION DE MEMORIA ING. AGUILERA SERGIO OMAR ESTRUCTURA DE MEMORIA CENTRAL Bus de Direcciones CPU v MMU n Bus de Datos Bus de Control 1 (r,w) m 2 n -1 palabras
Más detallesAdministración de Memoria.
Administración de Memoria. Sistemas Operativos Tema. Sistemas Operativos (IS) Tema Administración de memoria. Jerarquía de memoria: Registros CPU del procesador Caché (memoria rápida) Memoria principal
Más detallesCódigo IN_0035. Nombre WORD Categoría INFORMÁTICA. Modalidad ONLINE. Duración 50 HORAS. Vídeo. Audio. Objetivos
WORD 2010 Código IN_0035 Nombre WORD 2010 Categoría INFORMÁTICA Duración 50 HORAS Modalidad ONLINE Audio SI Vídeo SI Objetivos OPERACIONES DE EDICIÓN. BUSCAR Y REEMPLAZAR TEXTO. REVISAR LA ORTOGRAFÍA Y
Más detallesEjemplo, generación de #s aleatorios
Ejemplo, generación de #s aleatorios Supón que tienes un generador de números aleatorios enteros [0,2] con distribución uniforme, y tu necesitas generar números con distribución uniforme [0,4]. Alguien
Más detalles06. GESTIÓN DE PROCESOS Y RECURSOS
06. GESTIÓN DE PROCESOS Y RECURSOS MENSAJES Y AVISOS DEL SISTEMA Y EVENTOS DEL SISTEMA Todos estos mensajes, avisos y eventos del sistema, los podemos ver en la herramienta Visor de eventos. Para acceder
Más detallesElectrónica Digital II
Electrónica Digital II TIPOS DE MEMORIAS MEMORIA DDR MEMORIA DDR2 MEMORIA DDR3 COMPARACIÓN TIEMPOS DE ACCESO TIPOS DE LATENCIAS RAS CAS ACTIVIDAD PRECARGA TIPOS DE CONFIGURACIONES SINGLE CHANNEL DUAL CHANNEL
Más detallesLABORATORIO DE ARQUITECTURA DE COMPUTADORES. I. T. I. SISTEMAS / GESTIÓN GUÍA DEL ALUMNO
LABORATORIO DE ARQUITECTURA DE COMPUTADORES. I. T. I. SISTEMAS / GESTIÓN GUÍA DEL ALUMNO Práctica 3: Memorias Objetivos Comprender qué es y cómo funciona un banco de registros Comprender cómo se realiza
Más detallesIng. Carlos Bacalla Página 1 de 5
Memoria Caché 1. Introducción Ante la inmensa velocidad de los procesadores que a medida del tiempo se va incrementando, el límite es mayor entre la transferencia de la memoria principal (RAM) y el CPU;
Más detallesTEMA 2: PARALELISMO INTERNO EN SISTEMAS COMPUTADORES SEGMENTACION
SEGMENTACION SEGMENTACION SEGMENTACION I I I I I 1 2 3 4 5 IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB SEGMENTACION INTRODUCIR NUEVA INSTRUCCIÓN CADA CICLO 1 CICLO,
Más detallesWORD Descripción. 2. Objetivos del curso. 3. Duración
WORD 2007 1. Descripción Dirigido a personal administrativo, auxiliares, personal de secretariado, trabajadores en departamentos de atención telefónica, back office, redactores, editores, copiadores de
Más detallesEstructura de Computadores. 1. Ejercicios Resueltos 1.1. Tema 3. La unidad de memoria I. La memoria física
Estructura de Computadores Tema 3. La unidad de memoria I. La memoria física Características y clasificación general de las memorias. Diseño de una unidad de memoria. Estructura interna de la memoria estática.
Más detalles