1. Introdu¸˜o Objetivos O Modelo M2TI Ambiente de Execu¸˜o Implementa¸˜o Exemplos Avalia¸˜o Conclus˜o e Trabalhos Futu
ca ca ca ca a
M2TI - Modelo de Programa¸˜o com Transa¸oes
ca c˜
Impl´
ıcitas e Threads Impl´
ıcitos
Rodrigo H¨bner
u
Universidade Estadual de Maring´a
PIC/UEM
Bacharelado em Inform´tica
a
5o Ano
Orientador: Prof. Dr. Anderson Faustino da Silva
Departamento de Inform´tica
a
2 de outubro de 2009
2. Introdu¸˜o Objetivos O Modelo M2TI Ambiente de Execu¸˜o Implementa¸˜o Exemplos Avalia¸˜o Conclus˜o e Trabalhos Futu
ca ca ca ca a
Sum´rio
a
1 Introdu¸˜o
ca
2 Objetivos
3 O Modelo M2TI
4 Ambiente de Execu¸˜o
ca
5 Implementa¸˜o
ca
6 Exemplos
7 Avalia¸˜o
ca
8 Conclus˜o e Trabalhos Futuros
a
3. Introdu¸˜o Objetivos O Modelo M2TI Ambiente de Execu¸˜o Implementa¸˜o Exemplos Avalia¸˜o Conclus˜o e Trabalhos Futu
ca ca ca ca a
Introdu¸˜o
ca
Arquitetura computacional atual: UCP’s multi-core;
Modelo de programa¸˜o multithreading ;
ca
Escrever programas multithread n˜o ´ simples;
a e
Precisamos explorar os avan¸os arquiteturais relaxando o
c
modelo atual e lidar com problemas existentes.
4. Introdu¸˜o Objetivos O Modelo M2TI Ambiente de Execu¸˜o Implementa¸˜o Exemplos Avalia¸˜o Conclus˜o e Trabalhos Futu
ca ca ca ca a
Objetivos
Explorar paralelismo em linguagens de programa¸˜o;
ca
Desenvolver um modelo bem definido;
Criar estrat´gias gen´ricas para maioria das linguagens de
e e
programa¸˜o;
ca
N˜o atingir um dom´ espec´
a ınio ıfico.
5. Introdu¸˜o Objetivos O Modelo M2TI Ambiente de Execu¸˜o Implementa¸˜o Exemplos Avalia¸˜o Conclus˜o e Trabalhos Futu
ca ca ca ca a
O modelo M2TI
Decorar fun¸˜es e trat´-las como tarefas;
co a
Tornar impl´
ıcito o gerenciamento das tarefas e execut´-las em
a
paralelo;
Modelo baseado em roubo de tarefas;
Primitivas do modelo: task, init, final e atomic.
6. Introdu¸˜o Objetivos O Modelo M2TI Ambiente de Execu¸˜o Implementa¸˜o Exemplos Avalia¸˜o Conclus˜o e Trabalhos Futu
ca ca ca ca a
Ambiente de execu¸˜o
ca
Fluxo que exemplifica a execu¸˜o de tarefas impl´
ca ıcitas
7. Introdu¸˜o Objetivos O Modelo M2TI Ambiente de Execu¸˜o Implementa¸˜o Exemplos Avalia¸˜o Conclus˜o e Trabalhos Futu
ca ca ca ca a
Implementa¸˜o do modelo M2TI
ca
Linguagem de programa¸˜o Python
ca
Biblioteca: multiprocessing
Padr˜o: decorators
a
Programa executa da seguinte forma:
8. Introdu¸˜o Objetivos O Modelo M2TI Ambiente de Execu¸˜o Implementa¸˜o Exemplos Avalia¸˜o Conclus˜o e Trabalhos Futu
ca ca ca ca a
Exemplo de c´digo
o
Uso de task, init e final
9. Introdu¸˜o Objetivos O Modelo M2TI Ambiente de Execu¸˜o Implementa¸˜o Exemplos Avalia¸˜o Conclus˜o e Trabalhos Futu
ca ca ca ca a
Exemplo de c´digo
o
Uso de atomic
10. Introdu¸˜o Objetivos O Modelo M2TI Ambiente de Execu¸˜o Implementa¸˜o Exemplos Avalia¸˜o Conclus˜o e Trabalhos Futu
ca ca ca ca a
Resultados
Avalia¸˜o para alguns programas paralelos em Python
ca
11. Introdu¸˜o Objetivos O Modelo M2TI Ambiente de Execu¸˜o Implementa¸˜o Exemplos Avalia¸˜o Conclus˜o e Trabalhos Futu
ca ca ca ca a
Conclus˜es
o
Conclus˜es e trabalhos futuros
o
A programa¸˜o paralela ´ uma tarefa ´rdua;
ca e a
Modelos existentes s˜o dif´
a ıveis de utillizar;
M2TI ´ um modelo simples e f´cil;
e a
Trabalhos futuros:
Modelo na linguagem C;
Extender o modelo para sistemas distribu´
ıdos.
12. Introdu¸˜o Objetivos O Modelo M2TI Ambiente de Execu¸˜o Implementa¸˜o Exemplos Avalia¸˜o Conclus˜o e Trabalhos Futu
ca ca ca ca a
Fim
Perguntas?
Rodrigo H¨bner
u
E-mail: rhubner@gmail.com