programació p Y d

Anuncio
U.A.E.Méx_Ingeniería
[PROGRAMACIÓ P Y D] UNIDAD 2 Mapa Conceptual y Cuadro Descriptivo.
SISTEMAS DE ARQUITECTURA (SMP, MPP, COW,
DSM)
SISTEMAS DE ARQUITECTURA
SMP
SISTEMAS DE ARQUITECTURA
MPP
En general una arquitectura SMP tiene un equivalente
en uniprocesador, y naturalmente un sistema SMP
puede ejecutar simultáneamente varios programas o
aplicaciones, que normalmente podrían ejecutarse en el
sistema uniprocesador, de manera independiente. Sin
embargo, para el uso de aplicaciones que aprovechen
los múltiples procesadores para expeditar la realización
de cálculos, nos interesa que dichos procesos no sean
totalmente independientes, buscando entonces que
cuenten con manera de comunicarse para distribuirse
información, compartir y consolidar resultados.
Ya que el problema es el hecho de contar con
memoria compartida y sus limitaciones, se
propuso un esquema de una máquina paralela
que consta de varias unidades de
procesamiento básicamente independientes.
En efecto cada una de estas unidades,
conocida como ``nodo'', es prácticamente una
computadora en sí misma, contando con su
propio procesador, memoria no compartida, y
que se comunica con las demás unidades de
procesamiento a través de un canal provisto
exclusivamente para este propósito. Este tipo
de máquinas se conocen como computadoras
masivamente paralelas o máquinas MPP
(Massively Parallel Processing, procesamiento
masivamente paralelo)
Ya que un sistema SMP los procesadores comparten
todos los periféricos y recursos, el esquema más obvio
para comunicarse en una arquitectura SMP es el uso de
memoria compartida. Como el nombre lo indica, en
este esquema los procesadores tienen acceso a un
espacio de direcciones común; esto puede ser todo el
espacio de direcciones o únicamente un área designada
para memoria compartida, permitiendo a cada proceso
contar con un área exclusiva para sus requerimientos.
SISTEMAS DE ARQUITECTURA
DSM
En computación, la Distributed Shared Memory (DSM, o memoria distribuida compartida) es un tipo de
implementación hardware y software, en la que cada nodo de un cluster tiene acceso a una amplia memoria
compartida que se añade a la memoria limitada privada, no compartida, propia de cada nodo.
Los sistemas de software DSM pueden ser implementados bajo un sistema operativo (SO), o como una
biblioteca de programación. Los sistemas de software DSM implementados en el SO pueden concebirse
como extensiones de la arquitectura de memoria virtual subyacente. Estos sistemas son transparentes al
desarrollador, lo que significa que la memoria distribuida subyacente está completamente oculta para los
usuarios. En contraste, los sistemas de software DSM implementados en una biblioteca no son transparentes
y los desarrolladores tienen que programarlos separadamente. Sin embargo, estos últimos sistemas ofrecen
mejores características de portabilidad en la implementación de sistemas DSM.
Los sistemas de software DSM también tienen capacidad para organizar la región de memoria compartida
de manera flexible. Las aproximaciones basadas en páginas organizan la memoria compartida en páginas de
tamaño fijo. Por su parte, las aproximaciones basadas en objetos organizan la región como un espacio
abstracto en el que se pueden almacenar objetos compartidos de tamaño variable.
La arquitectura de memoria compartida puede suponer la separación de la memoria en partes compartidas
distribuidas entre los nodos y la memoria principal; o la distribución de toda la memoria en los distintos
nodos. Un protocolo de coherencia, escogido de acuerdo a un modo de consistencia, se encarga de
mantener la coherencia de la memoria.
UNIVERSIDAD AUTÓNOMA DEL ESTADO DE MÉXICO
CENTRO UNIVERSITARIO UAEM ATLACOMULCO
PROGRAMACIÓN PARAELA Y DISTRIBUIDA
1
INGENIERÍA EN COMPUTACIÓN.
JESUS BECERRIL PACHECO.
U.A.E.Méx_Ingeniería
[PROGRAMACIÓ P Y D] UNIDAD 2 Mapa Conceptual y Cuadro Descriptivo.
CUADRO DESCRIPTIVO
Modelos de acceso a memoria (UMA,
NUMA, COMA).
Uniform Memory Access (UMA)
Non uniform Memory Access
(NUMA)
Cache-only Memory Architecture
(COMA)
En sistemas con uniform memory
access
(acceso
a
memoria
uniforme), cada procesador tiene
acceso directo a una sola memoria
compartida. Todas las ubicaciones
de la memoria son equidistantes (en
cuanto a tiempos de acceso) a cada
procesador. La mayoría de los
sistemas UMA incorpora caché para
eliminar las disputas de la memoria
pero este mecanismo no se ve
desde las aplicaciones.
Sistemas con nonuniform memory
access (acceso a memoria no
uniforme) tienen una memoria física
compartida distribuida . Cada partición
de esta memoria se ata directamente a
un nodo pero se puede acceder a ella
por procesadores en otro nodos via la
red de interconexión. Así, los tiempos
de acceso a la memoria difieren
dependiendo de si la ubicación
requerida es local al nodo o remota a
este. Este nivel de complejidad
agregado puede ser escondido del
software de aplicación pero hacer esto
lleva a un desempeño suboptimo. Para
hacer mejor uso del hardware, el
programador
debe
tomar
la
arquitectura en consideración. El cache
se usa entre procesadores y memoria
local asi como entre nodos. Máquinas
con caché coherente a nivel del
hardware se llaman ccNUMA.
Sistemas con cache only memory
access (acceso a memoria solo en
caches) no tiene memoria compartida
física, pero el cache solo constituye la
memoria de las máquinas. Se provee
un solo espacio físico de direcciones
pero los tiempos de acceso varían
dependientemente si la ubicación de la
memoria requerida está en el caché
local o en uno remoto. El software de
aplicación ignoraría la arquitectura del
sistema ya que la máquina se
comporta en forma muy parecida a una
máquina UMA con caché.
UNIVERSIDAD AUTÓNOMA DEL ESTADO DE MÉXICO
CENTRO UNIVERSITARIO UAEM ATLACOMULCO
PROGRAMACIÓN PARAELA Y DISTRIBUIDA
2
INGENIERÍA EN COMPUTACIÓN.
JESUS BECERRIL PACHECO.
Descargar