1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis...

61
1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa

Transcript of 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis...

Page 1: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

1

Exploração de Paralelismonos Paradigma de Software

Porto Alegre, outubro de 2001

por

Jorge Luis Victória Barbosa

Page 2: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

2

Sumário

1 – Paradigmas de Software2 – Modelos para exploração do paralelismo3 – Paralelismo Implícito e Explícito4 – Paralelismo nos paradigmas de software5 – Multiparadigma6 – Holoparadigma7 – Conclusões

Page 3: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

3

1 – Paradigmas de Software

Page 4: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

4

1 – Paradigmas de Software

Realidade

Page 5: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

5

1 – Paradigmas de Software

Realidade

Domínio

Page 6: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

6

1 – Paradigmas de Software

Realidade

Domínio

ModeloComputacional

Modelagem

Page 7: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

7

1 – Paradigmas de Software

Realidade

Domínio

ModeloComputacional

ModelagemGap Semântico

Page 8: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

8

1 – Paradigmas de Software

Realidade

Domínio

ModeloComputacional

ModelagemGap Semântico

• Paradigma Convencional• Paradigma em Lógica• Paradigma Funcional• Paradigma Orientado a Objetos• Paradigma Orientado a Agentes

Page 9: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

9

2 – Modelos para Exploração do Paralelismo

Page 10: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

10

2 – Modelos para Exploração do Paralelismo

Propriedades Ideais (Skillicorn e Talia, 1998)

Page 11: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

11

2 – Modelos para Exploração do Paralelismo

Propriedades Ideais (Skillicorn e Talia, 1998)

1) Facilidade de programação

Page 12: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

12

2 – Modelos para Exploração do Paralelismo

Propriedades Ideais (Skillicorn e Talia, 1998)

1) Facilidade de programação- Decomposição- Mapeamento- Comunicação- Sincronização

Page 13: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

13

2 – Modelos para Exploração do Paralelismo

Propriedades Ideais (Skillicorn e Talia, 1998)

1) Facilidade de programação- Decomposição- Mapeamento- Comunicação- Sincronização

2) Suporte à metodologia para desenvolvimento de software

Page 14: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

14

2 – Modelos para Exploração do Paralelismo

Propriedades Ideais (Skillicorn e Talia, 1998)

1) Facilidade de programação- Decomposição- Mapeamento- Comunicação- Sincronização

2) Suporte à metodologia para desenvolvimento de software3) Independência da arquitetura

Page 15: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

15

2 – Modelos para Exploração do Paralelismo

Propriedades Ideais (Skillicorn e Talia, 1998)

1) Facilidade de programação- Decomposição- Mapeamento- Comunicação- Sincronização

2) Suporte à metodologia para desenvolvimento de software3) Independência da arquitetura4) Facilidade de compreensão

Page 16: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

16

2 – Modelos para Exploração do Paralelismo

Propriedades Ideais (Skillicorn e Talia, 1998)

1) Facilidade de programação- Decomposição- Mapeamento- Comunicação- Sincronização

2) Suporte à metodologia para desenvolvimento de software3) Independência da arquitetura4) Facilidade de compreensão5) Garantia de desempenho

Page 17: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

17

2 – Modelos para Exploração do Paralelismo

Propriedades Ideais (Skillicorn e Talia, 1998)

1) Facilidade de programação- Decomposição- Mapeamento- Comunicação- Sincronização

2) Suporte à metodologia para desenvolvimento de software3) Independência da arquitetura4) Facilidade de compreensão5) Garantia de desempenho6) Medidas de custo

Page 18: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

18

2 – Modelos para Exploração do Paralelismo

Classificação baseada em níveis de abstração

Page 19: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

19

2 – Modelos para Exploração do Paralelismo

Classificação baseada em níveis de abstração

1) Abstração completa do paralelismo- Opera

Page 20: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

20

2 – Modelos para Exploração do Paralelismo

Classificação baseada em níveis de abstração

1) Abstração completa do paralelismo- Opera

2) Paralelismo explícito, mas decomposição implícita- Concurrent Prolog

Page 21: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

21

2 – Modelos para Exploração do Paralelismo

Classificação baseada em níveis de abstração

1) Abstração completa do paralelismo- Opera

2) Paralelismo explícito, mas decomposição implícita- Concurrent Prolog

3) Paralelismo e decomposição explícitos, mas mapeamento, comunicação e sincronização são implícitas

Page 22: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

22

2 – Modelos para Exploração do Paralelismo

Classificação baseada em níveis de abstração

1) Abstração completa do paralelismo- Opera

2) Paralelismo explícito, mas decomposição implícita- Concurrent Prolog

3) Paralelismo e decomposição explícitos, mas mapeamento, comunicação e sincronização são implícitas

4) Paralelismo, decomposição e mapeamento explícitos, mascomunicação e sincronização implícitos

- Linda e Compositional C++

Page 23: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

23

2 – Modelos para Exploração do Paralelismo

Classificação baseada em níveis de abstração

1) Abstração completa do paralelismo- Opera

2) Paralelismo explícito, mas decomposição implícita- Concurrent Prolog

3) Paralelismo e decomposição explícitos, mas mapeamento, comunicação e sincronização são implícitas

4) Paralelismo, decomposição e mapeamento explícitos, mascomunicação e sincronização implícitos

- Linda e Compositional C++5) Paralelismo, decomposição, mapeamento, comunicação

explícitos, mas sincronização explícita- Atores, Emerald e Concurrent Smalltalk

Page 24: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

24

2 – Modelos para Exploração do Paralelismo

Classificação baseada em níveis de abstração

1) Abstração completa do paralelismo- Opera

2) Paralelismo explícito, mas decomposição implícita- Concurrent Prolog

3) Paralelismo e decomposição explícitos, mas mapeamento, comunicação e sincronização são implícitas

4) Paralelismo, decomposição e mapeamento explícitos, mascomunicação e sincronização implícitos

- Linda e Compositional C++5) Paralelismo, decomposição, mapeamento, comunicação

explícitos, mas sincronização explícita- Atores, Emerald e Concurrent Smalltalk

6) Tudo explícito- PVM, MPI, SR e Concurrent C

Page 25: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

25

3 – Paralelismo Explícito e Implícito

Page 26: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

26

3 – Paralelismo Explícito e Implícito Paralelismo Explícito: Detecção do paralelismo pelo usuário Paralelismo Implícito: Detecção automática do paralelismo

Page 27: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

27

3 – Paralelismo Explícito e Implícito Paralelismo Explícito: Detecção do paralelismo pelo usuário Paralelismo Implícito: Detecção automática do paralelismo

Paralelismo Explícito- Linguagem com mecanismos para controle do paralelismo- Usuário utiliza seu conhecimento empírico- Possível exploração inadequada- Paralelismo é difícil para seres humanos- Menor complexidade dos compiladores

Page 28: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

28

3 – Paralelismo Explícito e Implícito Paralelismo Explícito: Detecção do paralelismo pelo usuário Paralelismo Implícito: Detecção automática do paralelismo

Paralelismo Explícito- Linguagem com mecanismos para controle do paralelismo- Usuário utiliza seu conhecimento empírico- Possível exploração inadequada- Paralelismo é difícil para seres humanos- Menor complexidade dos compiladores

Paralelismo Implícito- Linguagem não contém mecanismos para controle do paralelismo- Usuário não se envolve- Aumenta a portabilidade- Aproveitamento dos programas já existentes

Page 29: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

29

4 – Paralelismo nos Paradigmas

Page 30: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

30

4 – Paralelismo nos Paradigmas Convencional

- Dependências de dados- Dependências de controle- Paralelismo explícito

Page 31: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

31

4 – Paralelismo nos Paradigmas Convencional

- Dependências de dados- Dependências de controle- Paralelismo explícito

Lógica- Paralelismo E- Paralelismo OU

Page 32: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

32

4 – Paralelismo nos Paradigmas Convencional

- Dependências de dados- Dependências de controle- Paralelismo explícito

Lógica- Paralelismo E- Paralelismo OU

Funcional- Resolução de funções

Page 33: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

33

4 – Paralelismo nos Paradigmas Convencional

- Dependências de dados- Dependências de controle- Paralelismo explícito

Lógica- Paralelismo E- Paralelismo OU

Funcional- Resolução de funções

Orientação a Objetos- Inter-objetos- Intra-objetos

Page 34: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

34

4 – Paralelismo nos Paradigmas

Semântica paralela nos paradigmas

Realidade

Domínio

Page 35: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

35

4 – Paralelismo nos Paradigmas

Semântica paralela nos paradigmas

Modelo em Lógica

Modelagem em Lógica: Paralelismo E e OU

Realidade

Domínio

Page 36: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

36

4 – Paralelismo nos Paradigmas

Semântica paralela nos paradigmas

Modelo em Lógica

Modelo Orientado a Objetos

Modelagem em Lógica: Paralelismo E e OU

Modelagem Orientada a Objetos:Paralelismo Intra e Inter Objetos

Realidade

Domínio

Page 37: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

37

4 – Paralelismo nos Paradigmas

Fontes de paralelismo na Realidade

Realidade

Page 38: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

38

4 – Paralelismo nos Paradigmas

Fontes de paralelismo na Realidade

Realidade

Domínio

Page 39: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

39

4 – Paralelismo nos Paradigmas

Fontes de paralelismo na Realidade

Realidade

Domínio Fontes deParalelismo

Page 40: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

40

4 – Paralelismo nos Paradigmas

Fontes de paralelismo na Realidade

Realidade

Domínio

Modelagem Subliminar do paralelismo

Fontes deParalelismo

ModeloComputacional

Page 41: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

41

4 – Paralelismo nos Paradigmas

Fontes de paralelismo na Realidade

Realidade

Domínio

ModeloComputacional

Modelagem Subliminar do paralelismo

Fontes deParalelismo

Paralelismo Implícito

Page 42: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

42

4 – Paralelismo nos Paradigmas

Fontes de paralelismo na Realidade

Realidade

Domínio

ModeloComputacional

Modelagem Subliminar do paralelismo

Execução Paralela

Exploração automática do paralelismo

Fontes deParalelismo

Paralelismo Implícito

Page 43: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

43

4 – Paralelismo nos Paradigmas

Fontes de paralelismo na Realidade

Realidade

Domínio

ModeloComputacional

Modelagem Subliminar do paralelismo

Execução Paralela

Exploração automática do paralelismo

Semântica Paralela

Fontes deParalelismo

Paralelismo Implícito

Page 44: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

44

5 – Multiparadigma

Page 45: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

45

5 - Multiparadigma

Desenvolvimento Funcional

Desenvolvimento em Lógica

Orientação a Objetos

Page 46: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

46

5 - Multiparadigma

Orientação a Objetos

Desenvolvimento Funcional

Desenvolvimento em Lógica

Paradigmas Básicos

Page 47: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

47

5 - Multiparadigma

Desenvolvimento Funcional

Desenvolvimento em Lógica

Novos Modelos

Paradigmas Básicos

Orientação a Objetos

Page 48: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

48

5 - Multiparadigma

• OLI (Object Logic Integration)• OWB (Object With Brain)• I+• DLO (Distributed Logic Objects)• ETA (Everything buT Assignment)• G• Oz

Exemplos

Page 49: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

49

6 – Holoparadigma

Page 50: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

50

6 - Holoparadigma

Descrição:• Novo paradigma de desenvolvimento de software• Semântica simples e distribuída• Suporte à exploração automática da distribuição

Page 51: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

51

6 - Holoparadigma

Descrição:• Novo paradigma de desenvolvimento de software• Semântica simples e distribuída• Suporte à exploração automática da distribuição

Modelo:

Ente 1 . . .

História

Ente 2 Ente n

Invocação Implícita

Invocação Explícita

Blackboard

Page 52: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

52

6 - Holoparadigma

História

História

História

História

História

História

História

História

História

História

Nível 0

Nível 1

Nível 2 Nível 2

Organização:

Page 53: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

53

6 - Holoparadigma

Áreas de pesquisa:

• Sistemas Distribuídos• Arquitetura de Software• Multiparadigma• Grupos• Mobilidade• DSM (Distributed Shared Memory)

Page 54: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

54

7 – Conclusões

Page 55: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

55

7 - Conclusões

• O que são paradigmas de software?

Page 56: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

56

7 - Conclusões

• O que são paradigmas de software?• Artigo interessante Skillicorn e Talia (1998)

Page 57: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

57

7 - Conclusões

• O que são paradigmas de software?• Artigo interessante Skillicorn e Talia (1998)• Paradigmas não convencionais facilitam paralelismo implícito

Page 58: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

58

7 - Conclusões

• O que são paradigmas de software?• Artigo interessante Skillicorn e Talia (1998)• Paradigmas não convencionais facilitam paralelismo implícito• Quais são as fontes de paralelismo existentes na Realidade?

Page 59: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

59

7 - Conclusões

• O que são paradigmas de software?• Artigo interessante Skillicorn e Talia (1998)• Paradigmas não convencionais facilitam paralelismo implícito• Quais são as fontes de paralelismo existentes na Realidade?• Multiparadigma é uma tendência

Page 60: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

60

7 - Conclusões

• O que são paradigmas de software?• Artigo interessante Skillicorn e Talia (1998)• Paradigmas não convencionais facilitam paralelismo implícito• Quais são as fontes de paralelismo existentes na Realidade?• Multiparadigma é uma tendência• Paralelismo + Multiparadigma é uma tendência

Page 61: 1 Exploração de Paralelismo nos Paradigma de Software Porto Alegre, outubro de 2001 por Jorge Luis Victória Barbosa.

61

7 - Conclusões

• O que são paradigmas de software?• Artigo interessante Skillicorn e Talia (1998)• Paradigmas não convencionais facilitam paralelismo implícito• Quais são as fontes de paralelismo existentes na Realidade?• Multiparadigma é uma tendência• Paralelismo + Multiparadigma é uma tendência• Holoparadigma em desenvolvimento