Descargar

Introducción al paralelismo y organización de un computador

Enviado por Pablo Turmero


Partes: 1, 2

    edu.red

    Qué es la arquitectura de computadores Anticipación, paralelismo y segmentación Clasificación de Flynn Máquinas MIMD Multiprocesadores Multicomputadores Supercomputadores: Computadores vectoriales Computadores SIMD Entornos de programación: Paralelismo implícito Paralelismo explícito Evolución de las arquitecturas de procesadores 1 RESUMEN

    edu.red

    ARQUITECTURA DE COMPUTADORES Versa sobre la organización del hardware y los requisitos de programación / software. Enganche entre el código ensamblador y el hardware. Hardware: CPUs, caches, buses, registros, pipelines, etc. Software: juego de instrucciones (código de operación, registros, modos de direccionamiento, etc.). 2

    edu.red

    INSTRUCCIONES 3 x = (a + b) – c; ADR r4,a ; get address for a LDR r0,[r4] ; get value of a ADR r4,b ; get address for b, reusing r4 LDR r1,[r4] ; get value of b ADD r3,r0,r1 ; compute a+b ADR r4,c ; get address for c LDR r2,[r4] ; get value of c SUB r3,r3,r2 ; complete computation of x ADR r4,x ; get address for x STR r3,[r4] ; store value of x C: Assembler:

    edu.red

    VON NEUMAN 4 Mismo almacenamiento para instrucciones y para datos La mayoría de las computadoras modernas (Gp:) CPU (Gp:) Memoria Principal (Gp:) Sistemas de Entrada/Salida (Gp:) ALU (Gp:) Unidad de Control (Gp:) Registros (Gp:) Contador de Programa

    edu.red

    EJECUCIÓN DE INSTRUCCIONES 5 Instr Fetch Reg ALU Data Access Reg Instr Fetch Reg ALU Data Access Reg Instr Fetch Instr. Fetch Reg ALU Data Access Reg Instr. Fetch Reg ALU Data Access Reg 8ns 9ns Instr. Fetch Reg ALU Data Access Reg Idle Decodification 2ns 2ns 2ns Secuencial Segmentación I1 I2 I3 I1 I2 I3 etc. etc.

    edu.red

    ANTICIPACIÓN, PARALELISMO Y SEGMENTACIÓN 6 SEGMENTACIÓN Descomponer la ejecución de cada instrucción en varias etapas para poder empezar a procesar una instrucción diferente en cada una de ellas y trabajar con varias a la vez.

    ANTICIPACIÓN Búsqueda "anticipada" de instrucciones para superponer las fases de búsqueda, descodificación y ejecución.

    PARALELISMO FUNCIONAL: tareas que se pueden ejecutar al mismo tiempo. Espacial: replicación de hardware. Temporal: solapamiento de operaciones funcionales en el tiempo, segmentación.

    PARALELISMO DE DATOS Se ejecuta una instrucción sobre un conjunto de datos.

    edu.red

    PARALELISMO A NIVEL DE MÁQUINA VS PROCESADOR El paralelismo en los computadores ha tenido dos aspectos que han evolucionado en paralelo: Paralelismo a nivel de máquina: En este nivel se distinguen diferentes tipos de organización de máquinas que en este curso se mencionan y se ampliarán en cursos posteriores. Paralelismo a nivel de procesador: En este nivel se pueden estudiar una serie de avances organizativos que han conducido a una mejora en la eficiencia. El curso de organización de computadores se centrara en este nivel. 7

    edu.red

    8 Evolución de la Arquitectura de Computadores Escalar Secuencial Anticipación Solapamiento E/S Paralelismo Funcional UF Múltiples Segmentación Vectoriales Implícitos Vectoriales Explícitos Mem-mem Reg-reg SIMD MIMD Multicomputadores Multiprocesadores Procesadores Asociativos Arrays de Procesadores

    edu.red

    CLASIFICACIÓN DE FLYNN Se considera: Flujo de instrucciones: secuencia de instrucciones ejecutadas por la máquina. Flujo de datos: secuencia de datos, tanto de entrada como resultados finales e intermedios. SISD (single instruction stream over a single data stream). SIMD (single instruction stream over multiple data stream). MIMD (multiple instruction streams over multiple data streams). MISD (multiple instruction streams and a single data streams). 9 (Gp:) MIMD (Gp:) MISD (Gp:) MÚLTIPLE (Gp:) SIMD (Gp:) SISD (Gp:) ÚNICO (Gp:) MÚLTIPLE (Gp:) ÚNICO (Gp:) Flujo de datos Flujo de instrucciones

    edu.red

    ARQUITECTURA SISD 10 Corresponde a un uni-procesador. Puede estar segmentado o no.

    Imagen de Hwang, 1993

    edu.red

    ARQUITECTURA SIMD Corresponde a procesadores vectoriales / matriciales. Una única memoria de instrucciones y varias memorias de datos (distribuidas). Control centralizado y operaciones distribuidas. 11 Interconnection Network (ICN) Imagen de Hwang, 1993

    edu.red

    ARQUITECTURA MIMD Memoria compartida. Procesadores con paralelismo intrínseco. Ordenadores multi-procesador. 12 Imagen de Hwang, 1993

    Partes: 1, 2
    Página siguiente