|
SMPCache |
|
SMPCache ha sido elegido por William Stallings como
herramienta de simulación para la realización
de proyectos de estudiante en el libro "Computer
Organization & Architecture", 6ª edición,
2003, Prentice-Hall.
Ver la sección Documentación para más
detalles. |
English Version
|
Inicio
Procesadores en el SMP 1, 2, 3, 4, 5, 6, 7 u 8 Protocolos de coherencia caché MSI, MESI (Illinois) o Dragon Algoritmos de arbitración del bus Aleatorio, LRU o LFU Anchos de palabra (en bits) 8, 16, 32 ó 64 Palabras en un bloque 1, 2, 4, 8, 16, 32, 64, 128, 256, 512 ó 1024 Bloques en memoria principal 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768, 65536, 131072, 262144, 524288, 1048576, 2097152 ó 4194304 Bloques en caché 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024 ó 2048 Funciones de correspondencia Directa, asociativa por conjuntos o totalmente asociativa Conjuntos de caché (para asociativa por conjuntos) 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024 ó 2048 Algoritmos de reemplazo Aleatorio, LRU, FIFO o LFU Políticas de escritura Post-escritura (por protocolos de coherencia utilizados) Niveles de caché 1 Referencias A palabras de memoria Tamaño de bloque máximo 8 Kb Tamaño de memoria principal máximo 32 Gb Tamaño de caché máximo (sin etiquetas, bits de estado, campos de cómputo,...) 16 Mb
SMPCache presenta, mediante datos estadísticos y todo tipo de gráficas, medidas de interés como:
Número de transacciones en el bus (dependen del protocolo de coherencia caché). Número 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 en: 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.
Observando el sistema multiprocesador completo y todos los bloques de memoria. Observando una caché en particular y todos los bloques de memoria. Observando el sistema multiprocesador completo, pero sólo un bloque de memoria en particular. Observando una caché en particular y un bloque de memoria concreto.
Paso a paso. Permite simular el sistema de memoria jerárquico paso a paso, es decir, según se va produciendo cada acceso a memoria. Con punto de interrupción. Permite simular la evolución del sistema de memoria sin interrupciones hasta llegar a un número concreto de accesos a memoria. Ejecución completa. Permite simular el sistema de memoria jerárquico mediante una ejecución completa de todas las trazas de memoria cargadas en los procesadores existentes.
Inicio
Para obtener SMPCache los pasos a seguir son:
Obtener la licencia de SMPCache. Rellenarla, firmarla y sellarla. Enviar la licencia vía correo-e (mavega@unex.es, versión escaneada de la licencia rellena) o correo postal (por favor, ver la dirección en la propia licencia). En pocos días recibirá un correo-e con la versión solicitada de SMPCache (consiste en un fichero ejecutable para Windows, los ficheros de ayuda asociados, y una colección de trazas de memoria).
Versión 1.0: Es la versión en Español del simulador. Versión 2.0: Es la versión en Inglés del simulador.
Inicio
|
|
|
|
|
(precisión doble) |
|
Astrofísica: Usa las ecuaciones hidrodinámicas de Naiver Stokes para cálculos asociados con reactores galácticos |
|
(precisión doble) |
|
Colección de 7 núcleos (kernels) con operaciones utilizadas frecuentemente en aplicaciones de la NASA, tales como transformadas de Fourier y manipulaciones de matrices. Para cada núcleo, el programa genera sus propios datos de entrada, computa el núcleo y compara el resultado con el resultado esperado |
|
|
|
Porción de un compilador C de Gnu que manifiesta un comportamiento fuertemente aleatorio |
|
(precisión doble) |
|
Resuelve las ecuaciones de movimiento para un modelo de 500 átomos interactuando a través del potencial idealizado de Lennard-Jones. Se trata de un programa numérico que manifiesta un comportamiento mixto entre aleatorio y de bucle |
|
(precisión simple) |
|
Simula el oido humano: Realiza una conversión sobre un fichero de sonido usando FFTs (transformadas rápidas de Fourier) y otras funciones de la biblioteca matemática |
|
|
|
Utiliza codificación Lempel-Ziv para compresión de datos. Comprime un fichero de 1 Mb en 20 veces su tamaño |
|
(precisión simple) |
|
Resuelve las ecuaciones de Maxwell y las ecuaciones de movimiento en partículas electromagnéticas |
|
(precisión simple) |
|
Resuelve un sistema de ecuaciones para el agua superficial utilizando aproximaciones de diferencias finitas en una matriz 256*256 |
|
|
|
Versión descompresora de Comp |
|
|
|
|
|
|
|
Aplicación paralela que simula la dinámica de fluidos utilizando la FFT |
|
|
|
Versión paralela de la aplicación SIMPLE |
|
|
|
Kirk Johnson y David Kranz (ambos del MIT) son los responsables de esta traza |
|
|
|
Versión paralela de la aplicación WEATHER, la cual se utiliza para el pronóstico del tiempo. La versión serie procede del NASA Space Flight Center, Greenbelt Md. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Inicio
Los ficheros de traza de memoria para SMPCache son ficheros de datos ASCII (con la extensión “.prg”), por tanto, puede crearlos y editarlos utilizando un editor de texto común. De esta forma, puede crear, por ejemplo, ficheros de traza de memoria con fines docentes (con alguna característica especial). El simulador incluye, en su directorio de instalación, algunos ficheros de traza pequeños creados con un editor para estudiar varios casos especiales de los protocolos MSI, MESI (Illinois) y Dragon.
Es fácil crear ficheros de traza para operaciones básicas con vectores en C++. El siguiente fichero es un ejemplo de programa en C++ para generar este tipo de trazas de memoria: trazas.cpp. Este fichero fue proporcionado por Fernando Pardo de la Universidad de Valencia (España).
Puede crear trazas de memoria mediante otras herramientas u obtener trazas de memoria de otros sitios web o bases de datos de trazas, como NMSU PARL. Este es el caso para las trazas en la sección Trazas de memoria. Luego, puede convertir estas trazas al formato de SMPCache. Por favor, vaya a la sección Utilidades para SMPCache para encontrar un interesante conversor de formatos de traza.
Inicio
Inicio
Inicio
Más de 400 Universidades y Centros de Investigación ya usan SMPCache:
Inicio
Inicio