PDF de programación - SMPCache: Simulador de Sistemas de Memoria Caché en Multiprocesadores Simétricos

Imágen de pdf SMPCache: Simulador de Sistemas de Memoria Caché en Multiprocesadores Simétricos

SMPCache: Simulador de Sistemas de Memoria Caché en Multiprocesadores Simétricosgráfica de visualizaciones

Publicado el 8 de Mayo del 2017
1.184 visualizaciones desde el 8 de Mayo del 2017
262,4 KB
6 paginas
Creado hace 21a (06/11/2002)
XI JORNADAS DE PARALELISMO—GRANADA, SEPTIEMBRE 2000

1

SMPCache: Simulador de Sistemas de Memoria

Caché en Multiprocesadores Simétricos

Miguel A. Vega, Raúl Martín, Francisco A. Zarallo, Juan M. Sánchez, Juan A. Gómez


Resumen-- En este trabajo presentamos un simulador para
el análisis y la docencia de sistemas de memoria caché en
multiprocesadores simétricos. La simulación se basa en un
modelo construido según los principios básicos de la
arquitectura de estos sistemas. El simulador, denominado
SMPCache, posee una interfaz gráfica completa y funciona
en un entorno PC bajo Windows 98 (ó 95). Al principio, el
simulador fue concebido como una herramienta para la
enseñanza de las memorias cachés en multiprocesadores.
Sin embargo, la potencialidad del sistema desarrollado ha
probado su utilidad para el análisis de programas y
estrategias de diseño de sistemas de memoria en
multiprocesadores. Así, el simulador puede ser utilizado
para comprender el diseño de organizaciones que ejecuten
de forma óptima un determinado tipo de programas
paralelos o para mejorar el modo de operar de una
arquitectura paralela concreta.

de Memoria Caché,
clave--
Palabras
Multiprocesadores
Simulador mediante
Trazas, Evaluación del Rendimiento, Herramienta de
Soporte, Arquitectura Paralela de Computadores

Sistemas
Simétricos,

I. INTRODUCCIÓN

L

AS cachés son un componente crítico en el
rendimiento de cualquier sistema (parte de la

bibliografía existente puede encontrarse en [1]).


procesador,

La forma más frecuente de arquitectura paralela son
los multiprocesadores de pequeña a moderada escala que
proporcionan un espacio de direcciones físicas global y
acceso simétrico a toda la memoria principal desde
denominados
cualquier
multiprocesadores simétricos
[2]. En
la
actualidad, entre las categorías de las jerarquías de
memoria en multiprocesadores la más extendida es la de
memoria compartida por bus. De hecho, muchos de los
multiprocesadores existentes ([3]-[8]) se basan en un bus
compartido y utilizan un protocolo de espionaje
(snoopy) para mantener sus cachés coherentes [2],[9].


a menudo
(SMPs)

La simulación mediante trazas suele ser un método
efectivo en coste para estimar el rendimiento de los
diseños de sistemas informáticos. Especialmente cuando
(Translation-Lookaside
se diseñan cachés, TLBs
Buffer), o sistemas de paginación, la simulación por
trazas es una forma muy popular de estudiar y evaluar
computadores, obtenie ndo una
arquitecturas de


Departamento de Informática. Universidad de Extremadura
Escuela Politécnica. Campus Universitario s/n. 10071 Cáceres. Spain
E-mail: [email protected] Fax: +34-927-257202

para

caché

estimación aceptable del rendimiento antes de construir
el sistema.


sistemas

de memoria

(Acme Cache Simulator), SISMEC

En este trabajo presentamos un simulador mediante
trazas
en
multiprocesadores simétricos con memoria compartida
por bus. Existen simuladores de memoria caché bien
conocidos como: TYCHO, DINEROIII ([10], [11]),
ACS
[12],
bigDIRN,... Partiendo de estos simuladores, hemos
desarrollado un nuevo simulador, teniendo en cuenta
nuevas consideraciones sobre su capacidad de trabajo en
entornos multiprocesador, la potencialidad de análisis
del mismo (variabilidad en el proceso de simulación,
datos obtenidos y formato, etc.), su interfaz y su
portabilidad. Las consideraciones de diseño se han
orientado a satisfacer un conjunto de características con
fines docentes y de investigación.


En la próxima sección mencionamos las diferentes
características que el simulador ofrece al usuario final.
En la sección III se explican algunos de los resultados
experimentales obtenidos, estudiando
su validez.
Finalmente, en la última sección se presentan una serie
de conclusiones obtenidas del desarrollo y uso del
simulador. Las consideraciones teóricas sobre sistemas
de memoria caché, y en particular sobre éstos dentro de
entornos multiprocesador, aparecen perfectamente
desarrolladas en muchos textos de arquitectura de
computadores ([2], [9], [13]-[16]), por lo que no las
mencionaremos aquí. Todas
las operaciones y
algoritmos utilizados responden fielmente a lo expuesto
en estos textos. Por tanto, los resultados obtenidos con el
simulador tienen una traducción casi fidedigna en el
mundo real.


II. CARACTERÍSTICAS DEL SIMULADOR

SMPCache 1.0 es una herramienta software para la
evaluación de sistemas jerárquicos de memorias cachés
en SMPs con memoria compartida por bus, que opera
sobre una plataforma PC con sistema operativo
Windows 98 (ó 95), y ha sido escrito utilizando un
lenguaje visual. SMPCache ofrece una interfaz gráfica
típica de Windows, disponiendo además de una ayuda
contextual muy completa. La figura 1 da una visión
global de su interfaz gráfica.


2



MIGUEL A. VEGA Y COL.: SMPCACHE

correspondencia, de la política de reemplazo, del tamaño
de la caché (bloques en caché), del número de conjuntos
de caché (en correspondencia asociativa por conjuntos),
del número de palabras por bloque (tamaño del bloque),
del ancho de la palabra,...



Fig. 1. Interfaz gráfica del simulador.


El simulador permite establecer la configuración de los
parámetros que definen la arquitectura del sistema,
ofreciéndonos la respuesta del mismo al someterlo a los
accesos de memoria generados por los programas (trazas
de memoria que se hayan cargado en los distintos
procesadores). Por tanto, se trata de una aplicación que
podría encargarse de la evaluación de sistemas de
memoria
de
investigación.


en multiprocesadores

fines

con


Fig. 2. Visión del multiprocesador en una simulación.


Dada su facilidad de manejo, el simulador también
puede ser utilizado igualmente con fines didácticos, ya
que permite observar de una forma clara y gráfica cómo
va actualizándose el sistema completo a medida que se
avanza en la ejecución de los programas (las trazas son
leídas). Permitiendo una visión completa de la evolución
del multiprocesador (ver figura 2), de una caché en
particular o incluso de un determinado bloque de
memoria (figura 3). Mostrando, en cada instante, los
accesos a memoria realizados por cada procesador, el
estado del bus, de cada caché, de cada bloque dentro de
cada caché,...


El simulador también permite estudiar el sistema de
memoria que mejor se ajusta a nuestras necesidades
antes de su implementación física, o simplemente nos
ayuda a simular sistemas actuales para ver su eficacia y
poder comparar resultados de una forma fácil. Algunos
de los factores que se pueden estudiar con el simulador
son: Localidad de los distintos programas; influencia del
número de procesadores, del protocolo de coherencia
caché, del algoritmo de arbitración del bus, del tipo de



Fig. 3. Diagrama de transición de estados de un bloque de caché
concreto durante una simulación.


presenta mediante

Además SMPCache

datos
estadísticos y todo tipo de gráficas (la figura 4 muestra
un ejemplo), medidas de interés como:

• Número de transacciones en el bus.
• Nº de transferencias de bloques a través del bus.
• Tráfico en el bus teniendo en cuenta las dos

medidas anteriores.

• Número de transiciones de estado (cada bloque en

caché tiene un estado asociado).

• Número de transiciones de estado según el estado

origen y el destino.



• Accesos a memoria realizados, desglosándolos por
tipos: captura de instrucción, lectura de dato o
escritura de dato.

• Número de aciertos y fallos de caché, así como

frecuencia de aciertos y fallos.

Todos estos datos se presentan a distintos niveles,
aunque siempre teniendo en cuenta la interrelación de
todos los elementos del sistema. Podemos, por tanto,
realizar una simulación observando el multiprocesador
completo, y todos los bloques de memoria o un único
bloque. También podemos observar una caché
específica, y todos los bloques de memoria o un bloque
concreto.



Fig. 4. Datos en formato gráfico de una caché.



XI JORNADAS DE PARALELISMO—GRANADA, SEPTIEMBRE 2000

3



La simulación realiza una aproximación programada
de las operaciones que realizarían los componentes del
sistema de memoria caché en un multiprocesador real.
Para ello, se realizan los cálculos adecuados y, al mismo
tiempo, se van ofreciendo los resultados, tanto actuales
como acumulados. Exiten tres tipos de simulación (paso
a paso, con punto de interrupción y ejecución completa),
admitiéndose el cambio de un tipo de simulación a otro
en mitad de la misma. También existe la posibilidad de
abortar la simulación en cualquier instante, con el objeto
de corregir algún detalle de la organización.


A. Organización Hardware
En cuanto a la organización de la jerarquía de memoria
y del multiprocesador, el simulador ofrece
las
posibilidades resumidas en la tabla I. Además, se ha
diseñado para que se pueda ampliar con facilidad (p.e.
añadir un nuevo protocolo de coherencia).


TABLA I

CARACTERÍSTICAS SOPORTADAS POR EL SIMULADOR.

1, 2, 3, 4, 5, 6, 7 u 8

Procesadores en el SMP
Protocolos de coherencia caché MSI, MESI o DRAGON
Algoritmos arbitración del bus Aleatorio, LRU o LFU
Anchos de palabra (en bits)
Palabras en un bloque

Funciones de correspondencia Directa, asociativa por conjuntos o

8, 16, 32 ó 64
  • Links de descarga
http://lwp-l.com/pdf3410

Comentarios de: SMPCache: Simulador de Sistemas de Memoria Caché en Multiprocesadores Simétricos (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad