conceptos, tecnologías e investigación en procesamiento paralelo mauricio marín (universidad de...

80
Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web (www.ciw.cl) Modelo de computación Aplicación del modelo a problemas de la Web y recuperación de la Información. Problemas de investigación.

Upload: bernardita-soliz

Post on 23-Jan-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Conceptos, Tecnologías e Investigación en Procesamiento Paralelo

Mauricio Marín (Universidad de Magallanes, Chile)

Centro de Investigaciones de la Web

(www.ciw.cl)

Modelo de computación

Aplicación del modeloa problemas de la Weby recuperación de laInformación.

Problemas deinvestigación.

Page 2: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Modelo de Computación

Hardware

Software

Page 3: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Paralelismo= Un objetivo con la ayuda de varios procesadores actuando de manera sincronizada y comunicante.

Page 4: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Desde aplicaciones en computación científica surgió por primera vez la necesidad de utilizar paralelismo.

Page 5: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Actualmente existe una demanda creciente por paralelismo desde aplicaciones tales como simulación de clima global o servidores para La Web, que requieren procesar grandes cantidades de datos.

Sin embargo, Computación paralela NO es una técnica ampliamente utilizada.

Page 6: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Son más de 30 años de proposiciones de modelos y lenguajes para computación paralela.

Ninguno de ellos ha sido ampliamente adoptado.

Alto nivel de abstracción Mala eficienciaBajo nivel de abstracción Buena eficiencia

Page 7: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

En contraste, computación secuencial ha sido muy exitosa, y sus aplicaciones han llegado a todo tipo de usuarios.

Page 8: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web
Page 9: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Propiedades de un buen modelo de computación,

* Fácil de comprender.

* Metodología de ingeniería de software.

* Independiente de la arquitectura del computador.

* Predicción de desempeño.

* Desempeño eficiente y escalable.

* Fácil de programar.

30 años después....

Page 10: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Computación Paralela Portable y Escalable

SUPER-OBJETIVO

Page 11: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Un modelo de computación en el centro del amplio espectro de modelos y lenguajes para computación paralela:

The Bulk-Synchronous Parallel (BSP) Model

Prof. L. Valiant, Harvard University Prof. W.F. McColl, Oxford University http://www.bsp-worldwide.org

W.F. McColl

Page 12: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Actualmente hay una convergencia en las arquitecturas paralelas

Memoria Distribuida Arquitectura Escalable

Page 13: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

SuperSteps

Paradigm of parallel computation (PVM MPI BSPpub BSPlib).

Barrier

Barrier

Barrier

msgmsgmsg

Comp.

Processors

Page 14: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

w

max

h=2 G

L

w + h*G + L

Costo de cada Superstep

Page 15: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Cualquier computador paralelo puede ser visto como una máquinaBSP que tiene valores específicos para los parámetros G y L.

Los valores de G y L pueden ser determinados empíricamente paradistintas máquinas, y esta información puede ser utilizada parapredecir el desempeño de programas BSP sobre diversas plataformas.

Page 16: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web
Page 17: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Sincroniza

“Broadcast” en un sistema de P procesadores

1 + P*G + L

Algoritmos Fundamentales

Page 18: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Para un sistema con gran número de procesadores se puedeutilizar una solución más eficiente:

(1 + 2*G + L )* log(P)

Sincroniza

Sincroniza

Sincroniza

Page 19: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

source

destination

Superstep 1

Superstep 2

Processors

Example: Two-stage Broadcast

m + m G + 2 L

m

m / p

m p + m p G + L

Page 20: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web
Page 21: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

BSP como metodología de desarrollo de software

No existen deadlocks.

La depuración de programases sencilla.

La verificación no es más difícil que en el caso de programas secuenciales.

Es posible predecir eldesempeño de programas.

Page 22: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

El modelo de costo de BSP puede ser utilizado para:

* Guiar el proceso de diseño e implementación de programas.

* Predecir el desempeño del programa al ser portado a otras máquinas.

* Seleccionar automáticamente los algoritmos que mejor se ajustan a una máquina en particular.

* Guiar el proceso de compra de computadores se conocen las características de los programas BSP que correrán en ellos.

Page 23: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

La estructura del modelo BSP permite el uso de herramientasgráficas de perfil de ejecución de supersteps.

Page 24: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web
Page 25: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web
Page 26: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web
Page 27: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web
Page 28: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Internet

Switch

Server PC clusterBSP machine

Clients

Page 29: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

SStep 1

P1 P2 P3 P4

SStep 2

Query

BSP Cluster

Result

Page 30: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

SStep 1

SStep 2

BROKER

BSP Cluster

Queries

Results

Page 31: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Bases de Datos Relacionales

Servidor Web

Servidor B.D.Servidor B.D. Servidor B.D.

ClienteHTML

Page 32: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

La base de datos esta distribuida en varios computadores

Front-end

Page 33: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Solución basada en software de dominio público

Page 34: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

0

1000

2000

3000

4000

5000

6000

PRODUCTOS

Segundos

PAR

SEQ

350 versus 5600 Seg => 16 veces más rápido con 4 máquinas

Consultas a un servidor de Libros“Cantidad vendida por cada tema”

Page 35: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Tiempo de Procesamiento TP, Tiempo de Sincronización TS, Tiempo de Acceso a la Base de Datos TB, Tiempo de Comunicación TC.

Page 36: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Tiempo de Procesamiento TP, Tiempo de Sincronización TS, Tiempo de Acceso a la Base de Datos TB, Tiempo de Comunicación TC.

Page 37: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web
Page 38: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web
Page 39: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

El número de páginas Web es del orden de 1000 millones (año 2000).

La Web

Page 40: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Buscadores de la Web

Interface

Máquina deBúsqueda

Recolector

Indexador

Usuarios

Base de Documentos

Web

Page 41: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Robots

WEBPlanificador

Lista URLs

Proceso de “Crawling”

Page 42: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

W

B and T and X and Z

B

T

X

Z

W

W

W

Vocabulary Inverted Lists

Query =

MAQUINA DE BUSQUEDA: Inverted Files

Document identifiers

Page 43: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

BROKER

Servidor Paralelo

Consultas

Proceso de consultasRanking de resultadosBalance de Carga

Menor carga posible

Usuarios

Page 44: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Processsor 1

Processor 2

Global Index approach

N

Page 45: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Local Index approach

Procesador 1 Procesador 2

N/P N/P

Page 46: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Processsor 1

Processor 2

Composite Inverted Lists

X

X

A

B

C

D

Page 47: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

a a a ab b b c

c d d de f g h

a a a a b b b

c c d d d e f g h

Bucket Inverted Lists

Processor 1 Processor 2 Processor 3 Processor 4

List 1 List 2

Page 48: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

• Balance de Carga

• ¿Cómo distribuir los “buckets” en los procesadores?

• ¿Distribución basada en “log” de consultas?

• ¿Distribución aleatoria y cambio dinámico?

• Scheduling

• ¿En qué procesador realizar el ranking de documentos?

• ¿Cuantos documentos enviar al procesador de ranking?

Page 49: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Processsor 1

Processor 2

Servicio de Noticias

A B C D

A

B

C

D

Escritura A and B and C and DLectura

W(A,1) W(B,1) W(C,1) W(D,1)

Timestamp

R(A,2) R(B,2) R(C,2) R(D,2)

R(A,0) R(D,0)

Page 50: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Control de Concurrencia

W(A,1) R(A,2)R(B,2) W(B,1)

Procesador 1 Procesador 2

R(C,2) R(D,2) W(D,1) W(C,1)

Sort by Timestamp Sort by Timestamp

W(A,1) W(B,1)

R(A,2) R(A,2)

W(D,1)W(C,1)

R(C,2) R(D,2)

R(A,0) R(D,0)

R(A,0) R(D,0)

Page 51: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Sequential Suffix Arrays

Page 52: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

text

text

Binary-searching “text”

Page 53: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Problem: Pointers to every-where in the text

Page 54: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

“Pruned Suffixes”

is

exa

dat

an

a of

tex

tex

thi

Page 55: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

BSP Cluster

Distributed Query Processing

The text database is evenly distributed upon the processors.

Page 56: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Processor 1 Processor 2

The local index approach

Page 57: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

SStep 1

SStep 2

BROKER

BSP Cluster

Queries

ResultsSStep 3

Page 58: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Processor 1 Processor 2

The global index approach

is

exa

dat

an

a of

tex

tex

thi

Page 59: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

SStep 1

SStep 2

BROKER

BSP Cluster

Queries

Results

Page 60: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Dealing with load-imbalance (Multiplexion)

28 38 11 6 1 14 17 25 30

Processor 1 Processor 2

is

exa

dat

an

a of

tex

tex

thi

Page 61: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Binary search accross processors

Processor i

Processor i + p / 2

Processor i + p / 4

Page 62: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

A minor but practical improvement to the Global Index Strategy

Proc 1 Proc 2 Proc 3 Proc 4

Proc 1 Proc 2 Proc 3 Proc 4

Global

Virtual Global

Page 63: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Seq

Local

DB Size

RunningTime

Processing q queries on p processors upon a text of n chars

Virtual Global

Global Multiplexed

Page 64: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Server 1

Server 2

Server 3

Scheduling Problem (uniform routing)

Distributed allocation of Parallel Servers

Page 65: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web
Page 66: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

ServerBSP Machine

Número de procesadores requeridos

Tiempos de ejecución

Page 67: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

0 1

F(P, G, L, Ns, Np)

Page 68: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Simulación por Eventos Discretos

El sistema se representa como un conjunto de variables de estado.

Los eventos cambian las variables de estado en puntos discretos del tiempo de simulación.

Simulación en Paralelo

Las variables relacionadas se agrupan dentro de procesos lógicos que se comunican entre sí mediante mensajes.

Page 69: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Tiempo

e1 e2 e3 e4 e5 e6

Tiempo

e1 e3 e5 e6

Tiempo

e2 e4

LP1

LP2

Page 70: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

MensajesNuevos

+

+

+

+

-

+

Lista deEventos

A B C D E F

Tiempo

Procesador Superstep i

+

- - - - -

Mensaje(Evento)

SendEventos procesados

Proceso Lógico

Page 71: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

MensajesNuevos

+

+

+

+

-

+

Lista deEventos

A B C D E F

Procesador Superstep i+1

- - - - -

G

Rollback

Send

Page 72: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Procesador 1 Procesador P

K K

En cada procesador se procesan hasta K eventos.

Cada procesador puede tener un K distinto.

K se mantiene fijo, independiente de los eventos re-simulados.

Page 73: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web
Page 74: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web
Page 75: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

S

S + AL

R

L

R

S

S + A

S + 1

S + A + 1

Contador

Mensajeenviado

AA <= S

Mensajenuevo

A

A > S

Cada proceso lógico mantiene un contador de supersteps.

En cada mensaje se transmite el valor de un contador de supersteps.

Page 76: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web
Page 77: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web
Page 78: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web
Page 79: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Carga baja y alta Número de procesadores= 4, 16, 64 y 256

Page 80: Conceptos, Tecnologías e Investigación en Procesamiento Paralelo Mauricio Marín (Universidad de Magallanes, Chile) Centro de Investigaciones de la Web

Conclusiones

• Se ha mostrado cómo utilizar un modelo que incorpora conceptos modernos de computación paralela en el diseño de algunas aplicaciones de gran popularidad e importancia en la Web.

• El modelo BSP es mucho más que una biblioteca de comunicaciones tal como PVM o MPI, es un estilo o método estructurado de diseño de software paralelo.

PREGUNTAS ?