Documente Academic
Documente Profesional
Documente Cultură
Departamento de Computacin, Escuela de Sistemas, Facultad de Ingeniera Universidad de Los Andes, Mrida 5101 Venezuela
Sistemas multiprocesamiento
Arquitectura de Von Neumann El procesador ejecuta un programa que especifica una secuencia de lecturas y escrituras sobre la memoria
Memoria RAM
execute execute
CPU CPU
fetch fetch
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Sistemas multiprocesamiento
Arquitectura de Von Neumann La memoria es utilizada para almacenar tanto el programa como los datos El programa son datos codificados que indican al procesador qu hacer
execute execute
CPU CPU
fetch fetch
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Sistemas multiprocesamiento
Arquitectura de Von Neumann Los datos es la informacin utilizada por el programa El procesador obtiene las instrucciones y los datos de la memoria, decodifica las instrucciones y las ejecuta secuencialmente
execute execute
Memoria RAM
CPU CPU
fetch fetch
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Sistemas multiprocesamiento
Taxonomia de Flynn Distingue las arquitecturas multiprocesamiento de cuerdo a las instrucciones y datos. Cada uno de estos criterios puede tomar dos estados: Sencillo Mltiple
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Taxonomia de Flynn
Datos CPU
Resultado
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Taxonomia de Flynn
T T ii e e m m p p o o
P1
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Taxonomia de Flynn
Datos
Resultados
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Taxonomia de Flynn
T T ii e e m m p p o o
P1
P2
Pn
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Taxonomia de Flynn
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Taxonomia de Flynn
T T ii e e m m p p o o
P1
P2
P3
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Taxonomia de Flynn
Datos
Resultados
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Taxonomia de Flynn
T T ii e e m m p p o o
P1
P2
P3
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Modelos de Memoria
Los sistemas paralelos se distinguen en 3 categorias de acuerdo a la forma como los procesadores utilizan la memoria para gestionar los datos Memoria Compartida Memoria Distribuida Memoria Compartida Distribuida
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Modelos de Memoria
Memoria Compartida Los procesos tienen acceso a la misma memoria fsica. Los procesos pueden correr en un slo procesador (tiempo compartido)
Procesador1
Memoria Proceso1
Proceso2
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Modelos de Memoria
Memoria Compartida Los procesos pueden correr en procesadores distintos dentro del mismo computador
Procesador1
Memoria
Procesador2
Proceso1
Proceso2
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Modelos de Memoria
Memoria Compartida Se debe tener cuidado en esta categora con la consistencia de los datos. Se debe utilizar mecanismos como: semforos, barreras, etc. para tal fin.
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Modelos de Memoria
Red
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Modelos de Memoria
Memoria Distribuida Si un procesador require un dato que se encuentra en una localidad de memoria remota, debe solicitarlo.
Procesador1 Procesador2
Red
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Modelos de Memoria
Memoria Compartida Distribuida Se utiliza una capa implantada en software para crear un espacio de memoria compartida virtual. Cada procesador aporta un espacio de memoria
Red
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Modelos de Memoria
Memoria Compartida Distribuida Las implantaciones son generalmente bibliotecas: LINDA, munin, etc.
Red
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Dentro del modelo de memoria compartida existen varias categoras. Uniform Memory Access (UMA) Non Uniform Memory Access (NUMA) Cache Only Memory Access (COMA) Cache Coherent Non-Uniform Memory Access (ccNUMA)
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Uniform Memory Access (UMA) Todos los procesadores tienen acceso directo a un slo bloque de memoria compartida.
Procesadores
Memoria Memoria
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Uniform Memory Access (UMA) Todas las localidades de memoria son equidistantes en trminos de tiempo de acceso
Procesadores
Memoria Memoria
Depto Computacin Escuela de Sistemas Universidad de Los Andes Mrida Venezuela - Gilberto Diaz
Non Uniform Memory Access (NUMA) En esta arquitectura cada procesador tiene su propio espacio de memoria
bus
Procesadores
Non Uniform Memory Access (NUMA) Algunas regiones de memoria se encuentran fsicamente en buses distintos a otras regiones
bus
Procesadores
Shared Memory Paradigm In the Shared Memory paradigm there are different categories: Uniform Memory Access (UMA) Non Uniform Memory Access (NUMA) Cache Coherent Non-Uniform Memory Access (ccNUMA) Cache Only Memory Access (COMA)
Super Computing and Distributed Systems Camp - Universidad de Costa Rica Turrialba Costa Rica
Shared Memory Paradigm Uniform Memory Access (UMA) All processors have direct access to a common block of memory.
Processors
Bus
Memory
Super Computing and Distributed Systems Camp - Universidad de Costa Rica Turrialba Costa Rica
Shared Memory Paradigm Uniform Memory Access (UMA) All locations in memory are equidistant in terms of access time.
Processors
Bus
Memory
Super Computing and Distributed Systems Camp - Universidad de Costa Rica Turrialba Costa Rica
Shared Memory Paradigm There are some caveats: Bus could be a bottle neck. More than one processor could need the data placed in the same memory location.
Super Computing and Distributed Systems Camp - Universidad de Costa Rica Turrialba Costa Rica
One of the mechanisms added by developers to keep busy the processors was faster memory placed near of them (cache memory)
Super Computing and Distributed Systems Camp - Universidad de Costa Rica Turrialba Costa Rica
Shared Memory Paradigm Non Uniform Memory Access (NUMA) Each processor has its own local memory
Processors
Cache Bus
Cache
Cache
Cache
Memory
Super Computing and Distributed Systems Camp - Universidad de Costa Rica Turrialba Costa Rica
Some memory regions are located in different buses, therefore, terms like local memory and remote memory are used.
Super Computing and Distributed Systems Camp - Universidad de Costa Rica Turrialba Costa Rica
Una vez ms, ms de un proceso puede necesitar el mismo dato y para gestionar esto una mquina NUMA incluye hardware especializado que mueve la informacin desde una memoria cache a otra.
Procesadores
Cache Bus
Cache
Cache
Cache
Super Computing and Distributed Systems Camp - Universidad de Costa Rica Turrialba Costa Rica
Modelos de Memoria
Sin embargo, esta operacin puede afectar seriamente el rendimiento de una aplicacin. Por esto, el incremento en la acelearcin de la ejecucin de un proceso, debido al uso de NUMA, depende en gran medida de la naturaleza de la aplicacin.
Super Computing and Distributed Systems Camp - Universidad de Costa Rica Turrialba Costa Rica
Modelos de Memoria
Controlar la ubicacin de los procesos o hebras a priori puede mejorar el rendimiento de la ejecucin. Para esto el usuario debe aprovechar su conocimiento de la arquitectura de la mquina para hacer una asignacin adecuada.
Super Computing and Distributed Systems Camp - Universidad de Costa Rica Turrialba Costa Rica
Modelos de Memoria
Cache Coherence NUMA (ccNUMA) En los casos en que ms de un proceso utilice un mismo dato, se debe mantener la consistencia entre las mltibples copias.
Super Computing and Distributed Systems Camp - Universidad de Costa Rica Turrialba Costa Rica
Modelos de Memoria
Cache Coherence NUMA (ccNUMA) Cuando uno de los procesadores cambia una copia, se debe invalidar el resto.
Procesadores
Bus
Super Computing and Distributed Systems Camp - Universidad de Costa Rica Turrialba Costa Rica
Non Uniform Memory Access (NUMA) Por esto se utilizan los trminos memoria local y memoria remota
bus
Procesadores