arquitecturas paralelas mimd william stallings, organización · ventajas muy escalables (en...

25
 Arquitecturas Paralelas Clusters William Stallings, Organización y Arquitectura de Computadores, 5ta. ed., Capítulo 16: Procesamiento Paralelo. Andrew S. Tanenbaum, Organización de Computadoras 4ta. ed., Capítulo 8: Arquitecturas de computadoras paralelas. Hesham El-Rewini & Mostafa Abd-El-Barr, Advanced Computer Architecture and Parallel Processing. Willey.

Upload: duongdiep

Post on 28-Apr-2018

235 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Arquitecturas ParalelasClusters

William Stallings, Organización y Arquitectura de Computadores, 5ta. ed., Capítulo 16: Procesamiento Paralelo.

Andrew S. Tanenbaum, Organización de Computadoras 4ta. ed., Capítulo 8: Arquitecturas de computadoras paralelas.

Hesham El-Rewini & Mostafa Abd-El-Barr, Advanced Computer Architecture and Parallel Processing. Willey.

Page 2: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Arquitecturas Paralelas

Taxonomía de Flynn

Massively ParallelProcessor

(MPP)

Page 3: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Arquitecturas Paralelas

Network Computing

También llamada Distributed computing, Very losely-coupled processing o Cluster computing. Se utilizan multicomputadoras (pasaje de mensajes, sin memoria compartida) con algunas particularidades.

En general, los Clusters se relacionan con la tecnología de redes standard, utilizada con el objetivo de crear una infraestructura de computación empleando “comodities”.

Nodos: PC/WSs autónomas (stand-alone) y posiblemente heterogéneas.Links: TCP/IP packet switched sobre LAN de cobre, fibra, wireless, etc.

(Notar diferencia con MPP: nodos high profile, interconectados con redes estáticas de alta tecnología, específicamente diseñadas)

Page 4: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Arquitecturas Paralelas

Clusters

DEFINICIONSistema distribuido compuesto por un conjunto de computadoras autónomas, interconectadas, trabajando juntas en forma cooperativa como un único recurso integrado.

MOTIVACION La utilización de la CPU de una estación de trabajo típica es menor

que el 10%. Aumento de la performance de las WS, por lo tanto el porcentaje de

utilización de las mismas disminuye aún más. Las organizaciones son reticentes a comprar grandes

supercomputadoras con ciclo de vida corto. Las herramientas de desarrollo para WS están más maduras Los clusters de WS tiene buena relación costo/beneficio y

crecimiento incremental. Se pueden reutilizar las PCs.

Page 5: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Arquitecturas Paralelas

Clusters

Columbia (2004 #2) supercomputer Mare Nostrum (2005 #5) www.bsc.es

Page 6: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Arquitecturas Paralelas

Clusters

IBM Roadrunner (2008 #1) LANL > 1 PFLOP (uss133M),

commodities

12,960 IBM PowerXCell 8i + 6,480 AMD Opteron + Infiniband

Page 7: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Arquitecturas Paralelas

Clusters (cont)

VENTAJAS

Muy escalables (en costo/n). Ampliación gradual. Mayor disponibilidad por redundancia. Buena relación costo/beneficio por utilizar comodities.

Esta tecnología recibe un gran impulso cuando convergen tres tecnologías:

Microprocesadores de gran performance (un procesador actual es equivalente a una supercomputadora de hace 20 años).

Comunicaciones de alta velocidad.

Herramientas standard para desarrollo de software & Open Source.

Page 8: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Clusters

Principales aplicaciones

Alta disponibilidad (HA High-Availability): nodos redundantes, usualmente x2. Ej: Linux-HA.

Balanceo de carga (Load Balancing): Server Farms. Ej: Sun Grid Engine, Maui Cluster Scheduling.

Alta performance (HPC High-Performance Clusters): split. Ej: Beowulf Clusters (PCs+Ethernet+Linux+Free software MPI)

CYCLE STEALINGUsos, ventajas y desventajas.

Folding@Home con PS3 superó el PFLOP (dos veces Blue Gene, con una red 1M veces más lenta)

Page 9: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Clusters

Tecnologías de redes

Clasificación: WAN, MAN, LAN, SAN

Internet y el protocolo TCP/IP (o ATM o FDDI)

Tecnologías para interconexión en clusterEthernet (1974), hubs, switches.Myricom´s Myrinet (1998)Quadrics´s QsNet (2002)Infiniband (2005)

VER: IEEE Micro. 2006, issue 3, “High Performance Interconnects”. DISPONIBLE

Latencia y ancho de banda (o productividad)

Page 10: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Clusters

El modelo cliente-servidor

Modelo 2 tier (cliente-db) 3 tier (cliente-web-db). Servidores multithreaded.Aplicación a la computación paralela.Sockets: data structure + system calls (socket abstraction layer).RPC: sobre sockets. El procedimiento está en una máquina distinta a la del caller.Threads: lightweight processes.

Page 11: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Clusters

Arquitectura

Page 12: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Clusters

Arquitectura (cont)

Page 13: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Clusters

Implementación

Lawrence Livermore National Laboratory

a) Avalon Beowulf Cluster (1998)

b) Blue Gene/L MPP (2005 #1)

Page 14: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Clusters

Clasificaciones I

Page 15: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Clusters

Clasificaciones IIOtra clasificación de límites difusos (Null):

NOW (Network of Workstations): Utiliza sistemas ociosos.

COW (Collection of Workstations): NOW con coordinación.

DCPC (Dedicated Cluster Parallel Computer): Grupo de WS unidos para resolver un problema específico.

POPC (Pile of PCs): Cluster heterogéneo que forma un sistema dedicado.

Page 16: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Clusters

Clasificaciones III

❃ Based on Node components architecture & configuration: Homogeneous Clusters (all nodes will have similar configuration), Heterogeneous Clusters (nodes based on different processors and running different OSes).

❃ Based on Node ownership: Dedicated Clusters, Non-dedicated clusters (Adaptive parallel computing, also called Communal multiprocessing).

❃ Based on Focus (in Market): High Performance (HP) Clusters [Grand Challenging Applications], High Availability (HA) Clusters [Mission Critical applications].

❃ Based on Node Architecture: Clusters of PCs (CoPs), Clusters of Workstations (COWs), Clusters of SMPs (CLUMPs).

❃ Based on Node OS Type: Linux Clusters (Beowulf), Solaris Clusters (Berkeley NOW), NT Clusters (HPVM), AIX Clusters (IBM SP2), SCO/Compaq Clusters (Unixware).

Page 17: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Clusters

Algunos ejemplos

Page 18: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Clusters

El modelo de programaciónLos clusters son combinaciones de Multiprocesadores (SMP y NUMA) y Multicomputadoras. Se programan con OpenMP y MPI combinados.

Page 19: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Clusters

MPIStandard Library de rutinas para la confección de programas de pasaje de mensajes eficientes y portables. No es un lenguaje de programación.

MPI Forum 1993-1994. MPI-2 1995.

Existen diferentes tipos de rutinas:Inicialización (comunicadores): MPI_Init, MPI_Rank, MPI_SizeComunicación punto a punto (poin-to-point): MPI_Send, MPI_ReceiveOperaciones colectivas: MPI_Reduce, MPI_Scan, MPI_BcastSincronización: MPI_Barrier

Mensajes bloqueantes (3 way) y no bloqueantes.

Implementaciones Open Source: LAM-MPI y MPICH

Page 20: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Clusters

MPIEjemplo (hello world MPI):

#include <stdio.h>#include <mpi.h>

int main(){int rank, size;MPI_Init( &argc, &argv );MPI_Comm_size( MPI_COMM_WORLD, &size );MPI_Comm_rank( MPI_COMM_WORLD, &rank );printf( "Hello world from process %d of %d\n", rank, size );MPI_Finalize();return 0;

}

Page 21: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Clusters

SchedulingUna vez que se ha diseñado el programa paralelo como un conjunto de tareas a ejecutar, aparece un nuevo desafío: asignar las tareas en forma eficiente a las unidades de procesamiento disponibles en la arquitectura paralela (SCHEDULING).

Este es uno de los desafíos más importantes en los sistemas paralelos. Se trata de un problema complejo que no siempre tiene una solución óptima. Se puede encontrar la mejor en un determinado tiempo. Es un área de investigación actual (El-Rewini Cap.10).

Hay dos aspectos a considerar: La calidad de la asignación (schedule): será mejor cuanto más rápido se ejecute el conjunto. La eficiencia del algoritmo (scheduler): si dos schedules tardan lo mismo, el mejor será el más simple.

Page 22: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Clusters

Sistemas Operativos

Page 23: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Clusters

Clusters de Clusters (Hyperclusters)

Scheduler

MasterDaemon

ExecutionDaemon

SubmitGraphicalControl

Clients

Cluster 2

Scheduler

MasterDaemon

ExecutionDaemon

SubmitGraphicalControl

Clients

Cluster 3

Scheduler

MasterDaemon

ExecutionDaemon

SubmitGraphicalControl

Clients

Cluster 1

LAN/WAN

Page 24: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

GridsEl objetivo es formar una inter-red de clusters con capacidad de cómputo, almacenamiento e interconexión de instrumentos.

Definición (Foster 2003): Middleware para la integración de recursos computacionales geográficamente distribuídos. Analogía con 'Power Grid' (“infraestructura” de “servicio” “transparente” y “penetrante”).

IMPORTANTE: no presenta todos los clusters como una única computadora. Es un conjunto de servicios que organiza recursos y distribuye tareas. Middleware. Conecta clusters diversos que en principio no confían entre si. No existe comunicación entre los clusters.

Virtual organizations. Visión unificada.Herramientas: Globus Toolkit.Ejemplos: NCSA TeraGrid, Cern LHC.

Page 25: Arquitecturas Paralelas MIMD William Stallings, Organización · VENTAJAS Muy escalables (en costo/n). ... Tecnologías de redes Clasificación: WAN, MAN, LAN, SAN ... LAM-MPI y MPICH

   

Grids