ARQUITECTURAS PARALELAS ARQUITECTURAS PARALELAS

Click here to load reader

  • date post

    06-Jan-2017
  • Category

    Documents

  • view

    249
  • download

    1

Embed Size (px)

Transcript of ARQUITECTURAS PARALELAS ARQUITECTURAS PARALELAS

  • Computacin de Alta PerformanceCurso 2009

    ARQUITECTURAS PARALELAS

    COMPUTACIN DE ALTA PERFORMANCE 2009 ARQUITECTURAS PARALELAS

    ARQUITECTURAS PARALELAS

  • CONTENIDO

    Arquitecturas secuenciales y paralelas.

    Clasificacin de Flynn.

    Modelo SIMD.

    GPUs.

    Modelo SISD.

    Modelo SIMD.

    COMPUTACIN DE ALTA PERFORMANCE 2009 ARQUITECTURAS PARALELAS

    Modelo SIMD.

    Arquitectura MIMD

    MIMD con memoria compartida.

    MIMD con memoria distribuida.

    Factores que determinan la eficiencia

    Mquina paralela virtual.

  • ARQUITECTURAS PARALELAS

    Modelo estndar de computacin:

    Arquitectura de Von Neumann.

    CPU nica.

    Ejecuta un programa (nico).

    Accede a memoria.

    Memoria nica.

    Operaciones read/write.

    Neumann Jnos

    COMPUTACIN DE ALTA PERFORMANCE 2009 ARQUITECTURAS PARALELAS

    Operaciones read/write.

    Dispositivos.

    Modelo robusto, independiza al programador de la arquitectura subyacente.

    Permiti el desarrollo de las tcnicas de programacin (estndar).

    Arquitectura de Von Neumann

  • ARQUITECTURAS PARALELAS

    Extendiendo el modelo a la computacin paralela, para lograr abstraer el hardware subyacente.

    Existen varias alternativas, genricamente contempladas en el modelo del multicomputador:

    Varios nodos (CPUs de Von Neumann). Un mecanismo de interconexin entre los nodos.

    COMPUTACIN DE ALTA PERFORMANCE 2009 ARQUITECTURAS PARALELAS

    Multicomputador de memoria distribuida.

  • Extendiendo el modelo a la computacin paralela ...

    Otras alternativas

    Computador masivamente paralelo. Muchsimos nodos (sencillas CPUs estilo Von Neumann).

    Topologa especfica para interconexin entre los nodos.

    ARQUITECTURAS PARALELAS

    COMPUTACIN DE ALTA PERFORMANCE 2009 ARQUITECTURAS PARALELAS

    nodos.

    Multiprocesador de memoria compartida. Nodos de Von Neumann. Memoria nica.

    Cluster. Multiprocesador que utiliza una red LAN como mecanismo de interconexin entre sus nodos.

  • Considera la manera de aplicacin de las instrucciones y el manejo de los datos.

    CATEGORIZACIN DE FLYNN

    Instrucciones

    SI MI

    Datos SD SISD (MISD)

    COMPUTACIN DE ALTA PERFORMANCE 2009 ARQUITECTURAS PARALELAS

    Datos SD SISD (MISD)

    MD SIMD MIMD

    S=single, M=multi, I=Instruccin, D=Datos

    Taxonoma de Flynn (1966)

  • The linked image cannot be displayed. The file may have been moved, renamed, or deleted. Verify that the link points to the correct file and location.

    CATEGORIZACIN DE FLYNN

    InstruccionesInstrucciones

    COMPUTACIN DE ALTA PERFORMANCE 2009 ARQUITECTURAS PARALELAS

    Datos

    Datos

    Single Instruction Single Data Multiple Instruction Single Data

  • The linked image cannot be displayed. The file may have been moved, renamed, or deleted. Verify that the link points to the correct file and location.

    CATEGORIZACION DE FLYNN

    Instrucciones Instrucciones

    COMPUTACIN DE ALTA PERFORMANCE 2009 ARQUITECTURAS PARALELAS

    Single Instruction Multiple Data Multiple Instruction Multiple Data

    Datos

    Datos

  • SISD - Modelo convencional de Von Neumann.

    SIMD - Paralelismo de datos, computacin vectorial.

    MISD - Arrays sistlicos.

    MIMD Modelo general, varias implementaciones.

    CATEGORIZACION DE FLYNN

    COMPUTACIN DE ALTA PERFORMANCE 2009 ARQUITECTURAS PARALELAS

    MIMD Modelo general, varias implementaciones.

    El curso se enfocar en el modelo MIMD, utilizando procesadores de propsito general o multicomputadores.

  • MODELO SISD

    Mquina de Von Neumann

    Un procesador capaz de realizar acciones secuencialmente, controladas por un programa el cual se encuentra almacenado en una memoria conectada al procesador.

    COMPUTACIN DE ALTA PERFORMANCE 2009 ARQUITECTURAS PARALELAS

    Este hardware esta diseado para dar soporte al procesamiento secuencial clsico, basado en el intercambio de datos entre memoria y registros del procesador, y la realizacin de operaciones aritmticas en ellos.

  • MODELO SISD

    Algunas mquinas secuenciales modernas no corresponden estrictamente al modelo SISD.

    A partir de la introduccin de los procesadores RISC se comenz a utilizar varios conceptos de las arquitecturas paralelas, como pipelining, ejecucin paralela de instrucciones no dependientes, prefetching de los datos, etc.,

    COMPUTACIN DE ALTA PERFORMANCE 2009 ARQUITECTURAS PARALELAS

    dependientes, prefetching de los datos, etc., para lograr un incremento en la cantidad de operaciones por ciclo de instruccin.

    Pipeline

  • EL MODELO SISD NO FUE SUFICIENTE

    Los problemas crecieron, o surgi la necesidad de resolver nuevos problemas de grandes dimensiones (manejando enormes volmenes de datos, mejorando la precisin de las grillas, etc.).

    Si bien las maquinas SISD mejoraron su performance Arquitecturas CISC y RISC.

    COMPUTACIN DE ALTA PERFORMANCE 2009 ARQUITECTURAS PARALELAS

    Compiladores optimizadores de cdigo. Procesadores acelerando ciclos de relojes, etc.

    An no fue suficiente, y se prev que el ritmo de mejoramiento se desacelere (debido a limitaciones fsicas).

    En este contexto se desarrollaron los computadores paralelos.

  • MODELO SIMD

    Array de PEs

    CPU

    Memoria

    Unidad de control

    bus de instrucciones

    COMPUTACIN DE ALTA PERFORMANCE 2009 ARQUITECTURAS PARALELAS

    Arquitectura SIMD.

    PE PE PE PE

    PE PE PE PE

    PE PE PE PE

    PE PE PE PE

    Processing Element (PE)

    puertos i/oenable

    flag

    CPU simple

    pequea memoria local

  • n unico programa controla los procesadores.

    til en aplicaciones uniformes

    Procesamiento de imgenes.

    Multimedia.

    Aplicaciones numricas sobre grillas.

    Su aplicabilidad est limitada por las comunicaciones entre procesadores.

    MODELO SIMD

    COMPUTACIN DE ALTA PERFORMANCE 2009 ARQUITECTURAS PARALELAS

    comunicaciones entre procesadores.

    La topologa de interconexin es fija.

    Los elementos de procesamiento tienen capacidad de cmputo limitada (1 bit a 8 bits), por lo que se pueden colocar una gran cantidad por chip (e.g. CM-2 con 64k PEs).

    Fueron los primeros multiprocesadores difundidos comercialmente (en la dcada de 1980)

  • Ejemplos comerciales

    Cray X-MP (computador ms potente entre 19831985)

    Connection Machine (CM-2, CM-200, dcada de 1980).

    MasPar MP2 (inicios de la dcada de 1990).

    MODELO SIMD

    COMPUTACIN DE ALTA PERFORMANCE 2009 ARQUITECTURAS PARALELAS

    CRAY X-MP/24 Connection Machine CM-2

  • GPUs

    GPU = Graphics Processing Units.

    Resurreccin de la arquitectura SIMD.

    Motivada por la industria de los juegos y la televisin digital.

    Tarjetas de video

    COMPUTACIN DE ALTA PERFORMANCE 2009 ARQUITECTURAS PARALELAS

    Tarjetas de video Programables

    Lenguaje CG, CUDA. Interfases OpenGL, DirectX.

    Paralelas La misma funcin CG se aplica a muchos pixels al mismo tiempo.

  • GPUs

    La evolucin de su performance no respeta la ley de Moore Escalabilidad horizontal y vertical simultanea.

    Las aplicaciones de imagenes son "embarrassingly parallel

    Detalle:

    COMPUTACIN DE ALTA PERFORMANCE 2009 ARQUITECTURAS PARALELAS

    Detalle: Una imagen es una matriz.

    Consecuencia: Muy eficientes para calculo cientfico.

    PARALLEL PROCESSING WITH CUDAhttp://www.nvidia.com/docs/IO/55972/220401_Reprint.pdf

  • Varias unidades funcionales ejecutan diferentesoperaciones sobre el mismo conjunto de datos.

    Las arquitecturas de tipo pipeline pertenecen a esta clasificacin

    aunque no puramente, ya que pueden modificar los datos sobre los que operan.

    Systolic arrays, FPGA celulares.

    MODELO MISD

    COMPUTACIN DE ALTA PERFORMANCE 2009 ARQUITECTURAS PARALELAS

    Systolic arrays, FPGA celulares.

    Tambin pertenecen los computadores tolerantes a fallos que utilizan ejecucin redundante paradetectar y enmascarar errores.

    No existen otras implementaciones especficas.

    Los modelos MIMD y SIMD son ms apropiados para la aplicacin del paralelismo tanto a nivel de datoscomo de control.

  • Consistieron en el siguiente paso en la evolucin de las arquitecturas paralelas. Fueron lentamente despazando al modelo SIMD.

    A diferencia de los modelos SISD y MISD, las computadoras MIMD pueden trabajar asincrnicamente (los procesadores tienen la capacidad de funcionamiento semi-autnomo).

    ARQUITECTURA MIMD

    COMPUTACIN DE ALTA PERFORMANCE 2009 ARQUITECTURAS PARALELAS

    funcionamiento semi-autnomo).

    Existen dos tipos de computadores SIMD, de acuerdo al mecanismo utilizado para comunicacin y sincronizacin: MIMD de memoria compartida (fuertemente acopladas). MIMD de memoria distribuda (poco acopladas).

  • MIMD CON MEMORIA COMPARTIDA

    Memoria global (compartida

    por todos los procesadores)

    Procesador

    Cache

    Procesador

    Cache

    Procesador

    Cache

    Procesador

    CacheProcesador

    CacheProcesador

    Cache

    Bus de datos

    COMPUTACIN DE ALTA PERFORMANCE 2009 ARQUITECTURAS PARALELAS

    Procesadores autnomos, trabajan asincrnicamente.

    Comunicacin entre procesadores a travs del recurso compartido. Comunicacin y sincronizacin se realiza en forma explcita.

    Emisor escribe y receptor lee de la memoria global.

    Procesador Procesador Procesador

    Arquitectura MIMD con memoria compartida.

  • MIMD CON MEMORIA COMPARTIDA

    Fciles de cons