30
1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos Distribuídos Professor Claudio Fernando Resin Geyer Aluno Emerson André Fedechen

1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

Embed Size (px)

Citation preview

Page 1: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

1

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SULINSTITUTO DE INFORMÁTICA

PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO

XTREMWEB APLICADO

POD – Programação de Objetos DistribuídosProfessor Claudio Fernando Resin GeyerAluno Emerson André Fedechen

Page 2: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

2

Estrutura da Apresentação Apresentação do XtremWeb Configurações Aplicação Ultimatum Game Testes da Aplicação no ambiente

XW Conclusões

Page 3: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

3

XtremWeb - introdução Desenvolvido pelo Computer Science

Laboratoty – Paris XI University; LSDS – Computador paralelo Multi-usuários e multi-aplicações Soluções de Grades

Diferentes domínios Sistemas heterogêneos

Cycle Stealing

Page 4: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

4

XtremWeb - arquitetura Servers, Clients e Workers

Page 5: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

5

XtremWeb - características Multi-plataforma (Cygwin) Monitoramento Web (PHP 4) Gerenciamento BD (MySQL) Transações seguras (SSL) Comunicação baseada em XML RPC Multiprotocolos para envio dos resultados Roubos de ciclos por ativações

configuráveis

Page 6: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

6

XtremWeb - configurações Servidor

ModulesLogged DBI Comm Task

XWServer Portas

RMI main-worker-client TCP RPC Shell

Page 7: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

7

XtremWeb - configurações Base de Dados

XWdbHost – XWdbName – XWdbUser – XWdbPass Segurança

setTrusted: lista de acesso XWShell XWKeyStore: arquivo que contém a chave privada do

server e seu certificado XWPassPhrase: Password para o arquivo

Logging Log4j.rootLogger

Page 8: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

8

Configuração worker – conexão / segurança dispatcher.host: define o servidor a se

conectar dispatcher .port – .xmlport - .tcpport login – password activator.class: política de ativação path.tmpdir workpool.size tracer.enable Sandbox (experimental)

Page 9: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

9

XtremWeb - ativação start console restart stop

Page 10: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

10

Client – gerenciamento de jobs xwapps : lista aplicações instaladas; xwaddapp:adiciona aplicação ao server; xwrmapp: remove aplicação do server; xwstatus : estado do(s) jobs; xwtasks: lista jobs e workers associados; xwworkers: lista detalhes dos workers; xwsubmit: insere um novo job; xwrm: apaga jobs; xwresult: recupera resultados

Page 11: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

11

Xtremweb.client –xwsubmitxtremweb.client –xwsubmit <app name> [--xwenv<zip

file>][--xwlabel <label>] [app param.] [<input file>]

Exemplo: /opt/XtremWeb-1.8.0/bin/xtremweb.client --xwsubmit

gamesim --xwenv prebuilt.zip --xwlabel ng0 configurable -o -a prebuilt/moran.xml -a prebuilt/conc_end_agg.xml -a prebuilt/lattice30x30.xml -a prebuilt/parallelglobal.xml -a prebuilt/multiseeds.xml -a prebuilt/normal_test.xml -a prebuilt/par_turns.xml -a prebuilt/ultimatumbase.xml -a prebuilt/popOptAggregation.xml -I repetition=1 -I turns=5000 -I period_turns=25 -B aggregateByStrategies=false -D "mutants.stddev=0.03“ 0 -D "mutants.stddev=0.03"

Page 12: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

12

XtremWeb - monitoramento

Page 13: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

13

XtremWeb - monitoramento

Page 14: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

14

XtremWeb – GUI cliente

Page 15: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

15

XtremWeb - xwstatus

Page 16: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

16

Ultimatum GamePesquisadores: Gustavo Adolfo Kellermann e Roberto da Silva

Sistema composto por: População heterogênea; Interações entre habitantes; Subpopulações; Diferentes estratégias; Algoritmo baseado em encontros e

turnos.

Page 17: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

17

Ultimatum Game Proponentes Aceitadores Estratégia Confrontos Resultado

Page 18: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

18

Estratégias(Paralela ou aleatória) Uniforme: a probabilidade de um valor ser

escolhido é a mesma para todos; Ganancioso: o valor cresce de acordo com o

ganho do jogador; Racional: Joga segundo o equilíbrio de Nash

(99,1); Fixo: o mesmo valor para proponente como

para aceitador; Justo: aceita receber o mesmo valor de quando

proponente.

Page 19: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

19

Simulador Requisitos

Generalidade; Manutebilidade; Facilidade de uso;

Configuração Modificação do jogo (matriz de payoff) Rede Dados coletados Tipos de jogadores Dinâmicas Parâmetros numéricos (ex. Tamanho da população)

Page 20: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

20

Estratégia no XtremWeb

Cliente

Servidor

Trabalhador Trabalhador

Page 21: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

21

Estratégia Ultimatum - XtremWeb Client

Define o Descritor para o job Escalona entre os valores da aplicação (values e series) Simula a criação de um Child (objeto a ser executado) Cria a chamada ao server Recupera os resultados do server

Server Armazena os dados do objeto child + descritores + values + series

+ aplicação Envia todos os dados ao cliente requisitante Recebe os resultados e armazena

Worker Requisita jobs ao server. Processa Envia Resultados ao server.

Page 22: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

22

Adaptação ao XW Aplicação principal (GameSimulator.jar)

submetida ao server como arquivo .zip necessário ao processamento;

Shell script submetido ao server como sendo a aplicação principal que chama o GameSimulator.jar por linha de comando;

Arquivos XML de configuração no pacote .zip.

Page 23: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

23

Cliente Xtrem.sh

#!/bin/bash

JAVAOPTIONS="-ea" PLOPTION=-a

moran_simple() { LOG=$1 SEEDS=$2 PLAYERS=$3 java ${JAVAOPTIONS} -jar GameSimulator.jar XtremWeb randomSeed -o \ -a prebuilt/moran.xml \ -a prebuilt/conc_end_agg.xml \ -a prebuilt/lattice30x30.xml \ -a prebuilt/parallelglobal.xml \ -a ${SEEDS} \ ${PLOPTION} "${PLAYERS}" \ -a prebuilt/par_turns.xml \ -a prebuilt/ultimatumbase.xml \ -a prebuilt/popOptAggregation.xml \ -I "repetition=1" \ -I "turns=5000" \ -I "period_turns=25" \ -B "aggregateByStrategies=false" \ > ${LOG} }

moran_simple xtrem.log prebuilt/multiseeds.xml prebuilt/normal_test.xml

Page 24: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

24

Cliente GameSimulator.jar

Classe XtremWebClient private void XWCommand(CharSequence firstoptions,

CharSequence secoptions, int id) { String command = XWexec+" --xwsubmit gamesim --xwlabel

ng"+id+' '+firstoptions+' '+secoptions; System.out.println(command); try{ Process pr = Runtime.getRuntime().exec(command); System.out.println(id+" "+secoptions); pr.waitFor(); } catch(Exception ex){ ex.printStackTrace(); System.out.println("======== falhou o envio de jobs

======"); } }

Page 25: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

25

Anexos prebuild.zip GameSimulator.jar lib

xpp3_min-1.1.3.4.O.jar xstream-1.2.1.jar

prebuilt

Page 26: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

26

Prebuilt

Page 27: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

27

Server gamesim = second

#!/bin/bashjava -mx512M -jar GameSimulator.jar

$@exit 0

Page 28: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

28

Results xtremweb.client –xwresult

Recebe-se no diretório corrente um arquivo contendo os resultados das saídas padrões + aplicação + resultados esperados comprimidos em um arquivo zip.

Page 29: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

29

Conclusões Destaca-se aqui a importância da

análise e modelagem em sistemas robustos tornando-os passíveis de paralelização;

Com aplicações que dependem de um grande volume de informações de configuração por tarefa criada,

Page 30: 1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS GRADUAÇÃO EM COMPUTAÇÃO XTREMWEB APLICADO POD – Programação de Objetos

30

Bibliografia Kellermann, Gustavo A. Silva, Roberto. “Sobre a

Estatística e a Dinâmica de um População Multi-estratégica no contexto do Ultimatum Game”. Semana Acadêmica UFRGS, Porto Alegre, 2007.

“XtremWeb user Guide”. http://www.lri.fr/~fedak/XtremWeb/doc/xtremweb.html. Acessado em 03/06/2007.

Cappello, Franck; Djilali, Samir; Fedak, Gilles, Herault, Thomas; Magniette, Frédéric; Néri, Vincent e Lodygensky, Oleg. “Computing on Large Scale Distributed Systems, experience of the XtremWeb project”. Special issue on Peer-to-Peer Computing and Interaction with Grids of Future Generation Computer Systems, pages 417-437, 2004