Algor - PowerPoint PPT Presentation

About This Presentation
Title:

Algor

Description:

Title: Presentaci n de PowerPoint Author: Campus Cuernavaca Last modified by: Jose Luis Created Date: 6/17/2002 8:46:36 PM Document presentation format – PowerPoint PPT presentation

Number of Views:39
Avg rating:3.0/5.0
Slides: 37
Provided by: Campu52
Category:

less

Transcript and Presenter's Notes

Title: Algor


1
Algorítmica paralela
  • Modelos ideales de una implantación paralela
  • PRAM
  • De circuitos
  • Redes
  • Compleijidad de los algoritmos paralelos
  • Métricas para determinar su desempeño

2
Modelos ideales de una implantación paralela
  • Se consideran a las computadoras sin restricción
  • En el número de procesadores
  • En el acceso físico a la memoria para leer o
    escribir datos

3
Modelos ideales de una implantación paralela
  • Con los modelos se obtiene
  • Las partes o segmentos que se pueden ejecutar en
    paralelo
  • La dependencia de los datos en el proceso de
    cálculo
  • El tiempo ideal de la ejecución paralela
  • El número de procesadores requeridos para
    alcanzar ese tiempo de ejecución ideal.

4
Modelo PRAM (Parallel Random Access Machine)
  • Es una máquina ideal de p procesadores con una
    memoria global.
  • Cada procesador puede realizar en un ciclo
  • una lectura
  • una escritura
  • una operación de cómputo.

5
Modelo PRAM (Parallel Random Access Machine)
  • En el modelo de memoria global compartida se debe
    de especificar cómo se hacen las lecturas y
    escrituras concurrentes en la misma localidad.
  • Lectura exclusiva (ER)
  • Escritura exclusiva (EW)
  • Lectura concurrente (CR)
  • Escritura concurrente (CW)

6
Modelo PRAM (Parallel Random Access Machine)
  • Los modelos PRAM se clasifican de acuerdo a las
    formas de actualización de la memoria, en
  • EREW (Exclusive Read, Exclusive Write)
  • ERCW (Exclusive Read, Concurrent Write)
  • CREW (Concurrent Read, Exclusive Write)
  • CRCW (Concurrent Read, Concurrent Write)

7
Modelo PRAM (Parallel Random Access Machine)
  • Modelo PRAM CRCW
  • Común Todas las escrituras simultáneas almacenan
    el mismo valor en la localidad de memoria
    seleccionada.
  • Arbitraria Cualquiera de los valores escritos
    permanece, aquí no se puede saber que procesador
    escribió de los que intentaron.
  • Prioritaria El procesador de mayor prioridad
    será el que logrará escribir en la memoria.

8
Modelo PRAM (Parallel Random Access Machine)
  • Encontrar el número mayor del arreglo A5, 6, 9,
    2, 9, 7, 8, 3 con PRAM-CRCW
  • Seudocódigo Pasos de ejecución
  • n longitud de (A) (1)
  • en paralelo i 0 ... n-1 hacer
  • mi V (1)
  • en paralelo i, j 0 ... n-1 hacer
  • sí Ai lt Aj entonces mi F (2)
  • en paralelo i 0 ... n 1 hacer
  • sí mi V entonces (1)
  • max Ai (1)

9
Modelo PRAM (Parallel Random Access Machine)
  • Comparación en cada procesador del algoritmo
    PRAM-CRCW
  • i\j 5 6 9 2 9 7 8 3 m
  • 5 F V V F V V V F F
  • 6 F F V F V V V F F
  • 9 F F F F F F F F V
  • 2 V V V F V V V V F
  • 9 F F F F F F F F V
  • 7 F F V F V F V F F
  • 8 F F V F V F F F F
  • 3 V V V F V V V F F

10
Modelo PRAM (Parallel Random Access Machine)
  • El algoritmo paralelo requiere de 6 pasos para
    concluir. Sí n es el número de datos a comparar
  • Su complejidad asintótica temporal es T?(n) 6
    O(1).
  • Se requieren n2 procesadores para ejecutarlo, por
    lo que su complejidad de hardware es H(n) n2.

11
Modelo PRAM (Parallel Random Access Machine)
  • Encontrar el número mayor del arreglo A, se
    analiza en una computadora PRAM-EREW.

12
Modelo PRAM (Parallel Random Access Machine)
  • El algoritmo paralelo requiere de 3 pasos para su
    ejecución, esto es log28.
  • Por tanto, el tiempo paralelo será T?(n) 3
    log28 O(log2n).
  • Con respecto al hardware, se requerirán n/2
    procesadores, por lo que H(n) O(n).

13
Modelo de circuitos
  • n nodos de entrada con grado de entrada cero, los
    cuales contienen los datos de inicio x1, x2, ...,
    xn
  • Nodos de operación con grado de entrada dos,
    etiquetados con alguno de los operadores
    aritméticos o booleanos.
  • m nodos de salida con grado de salida cero.

14
Modelo de circuitos
15
Modelo de circuitos
  • La profundidad d(n) de un circuito es la longitud
    del camino mas largo, en función del número de
    operaciones, de cualquier entrada a una salida de
    C(n).
  • El ancho w(n) es el máximo número de operaciones
    realizadas en paralelo en cualquier paso

16
Modelo de circuitos
  • El tamaño de un circuito s(n) es el número total
    de operaciones en los nodos
  • H(n) ? w(n) 2
  • T?(n)? d(n) 2

17
Modelo de redes
  • El algoritmo del problema queda definido mediante
    Galg Nt, Ti, Cij, Zij.
  • Nt son las tareas concurrentes y se representan
    por círculos
  • Ti tiempo de ejecución de la tarea i
  • Cij volumen de comunicación de la tarea i a la j
  • Zij es el retraso y representa por una D en el
    grafo

18
Modelo de redes
  • a(n) 45b(n-1) 10c(n) u(n)
  • b(n) 10a(n) c(n)
  • c(n) a(n-1) c(n-1)
  • Donde
  • u(n) es una entrada
  • los datos son de 4 bytes

19
Modelo de redes
20
Modelo de redes
  • (H(n)) 3 procesadoress unidades
  • (T?(n)) 6 unidades (un período)

21
Complejidad de los algoritmos paralelos
  • Secuencial
  • Tamaño de la entrada (n)
  • La complejidad temporal del algoritmo O
  • La calidad del código generado
  • La velocidad de la máquina
  • Clasificación
  • Polinomiales (P)
  • NP

22
Complejidad de los algoritmos paralelos
  • En los algoritmos paralelos, clase NC
  • Tiempo de ejecución polinomial en función del
    logaritmo del tamaño de la entrada (log n)k
  • Número de procesadores polinomial (nk).
  • A estos algoritmos se les llama algoritmos
    eficientemente paralelizables
  • Los problemas NC están dentro de P

23
Complejidad de los algoritmos paralelos
24
Métricas para determinar su desempeño
  • Ejecuciones paralelas (tiempo requerido)
  • Trabajo
  • Aceleración, asintótica S(?) y S(p)
  • Eficiencia E(p)
  • Redundancia R(p)
  • Utilización del sistema U(p)
  • Calidad Q(p)

25
Métricas para determinar su desempeño
  • Tiempo de ejecución (Secuencial)
  • Se mide en segundos o en el número de operaciones
    requeridos por el proceso de cálculo An para una
    entrada de datos n.
  • Donde
  • m grado de paralelismo (número de tareas que se
    ejecutan en un instante dado)
  • ti tiempo total en que hay exactamente i
    procesadores trabajando en paralelo

26
Métricas para determinar su desempeño
  • Tiempo de ejecución en paralelo obtenido de los
    modelos descritos.
  • No se tiene un límite en el número de
    procesadores a éste se le denomina tiempo
    asintótico y se determina por

27
Métricas para determinar su desempeño
  • Trabajo
  • Se define como el número de operaciones que se
    ejecutan durante el proceso de cálculo y se
    determina por

28
Métricas para determinar su desempeño
29
Métricas para determinar su desempeño
  • Paradigma de trabajo-tiempo de Brent
  • Cuando se tiene disponible un número de
    procesadores igual al requerido por los modelos
    descritos, Tp(An) T?(An).
  • Pero cuando el número de procesadores es menor,
    el trabajo que se realiza se debe repartir entre
    los procesadores disponibles. El tiempo de
    ejecución se incrementa entonces, y está acotado
    por la relación siguiente

30
Métricas para determinar su desempeño
  • Aceleraciones S(?) y S(p)
  • La aceleración asintótica S(?), es la relación
    entre el tiempo necesario para resolver un
    problema dado usando el mejor algoritmo
    secuencial conocido T1(An) y el tiempo necesario
    para resolver el mismo problema por un algoritmo
    paralelo usando el número de procesadores
    determinadas por el modelo ideal T?(An).

31
Métricas para determinar su desempeño
  • La aceleración S(p), es la relación entre el
    tiempo secuencial T1(An) y el tiempo necesario
    para resolver el mismo problema por un algoritmo
    paralelo usando p procesadores Tp(An)

32
Métricas para determinar su desempeño
  • Las operaciones que se deben de ejecutar
    secuencialmente limitan la aceleración de un
    algoritmo paralelo
  • Sea (?) la fracción secuencial, entre 0???1
  • (1- ?) la fracción paralela
  • Se le conoce como la ley de Amdhal

33
Métricas para determinar su desempeño
  • Eficiencia E(p)
  • La eficiencia se define como la relación entre la
    aceleración S(p) y el número de procesadores p.
    Este factor indica qué tan bien son utilizados
    los procesadores.

34
Métricas para determinar su desempeño
  • Redundancia R(p)
  • La redundancia se define como la relación entre
    el número total de operaciones realizadas usando
    p procesadores O(p), y el número de operaciones
    realizadas usando un procesador O(1).

35
Métricas para determinar su desempeño
  • Utilización del sistema U(p)
  • Esta es una medida de desempeño directamente
    proporcional a la eficiencia y a la redundancia.
    Indica el porcentaje de los recursos que
    estuvieron ocupados durante la ejecución del
    programa paralelo.

36
Métricas para determinar su desempeño
  • Calidad Q(p)
  • Medida de desempeño directamente proporcional a
    la eficiencia y a la aceleración e inversamente
    proporcional a la redundancia. Evalúa el mérito
    de una aplicación paralela en un sistema de
    computadoras
Write a Comment
User Comments (0)
About PowerShow.com