Alan Malta Rodrigues CMP167 – Programação com Objetos Distribuídos Instituto de Informática Universidade Federal do Rio Grande do Sul 08 de julho de 2009.

Slides:



Advertisements
Apresentações semelhantes
Programação de jogos MMO com DALua
Advertisements

Desenvolvimento de Sistemas Distribuídos Web Services
IFTO ESTRUTURA DE DADOS AULA 05 Prof. Manoel Campos da Silva Filho
Vitor Fiorotto Astolfi Orientador: Jorge Luiz e Silva
SISTEMAS OPERACIONAIS (SO) Aula 5 Luciana A. F. Martimiano 2002
Linguagem de Programação IV
Introdução à Programação usando Processing Programação Gráfica 2D Estrutura de Seleção Exercício Estrutura de Seleção 2º Semestre 2009 > PUCPR > Design.
TEORIA DA COMPUTAÇÃO Parte III  Máquina de Turing
MPI – Comunicações Com. Colectiva esquecida Barrier não há troca de dados, apenas sincroniza os processos int MPI_Barrier( MPI_Comm, comm) T com = T lat.
MPI - Introdução Message-Passing Model Task: código + memória (uma ou várias tasks no mesmo processador) Mensagem: as tasks comunicação entre si trocando.
14 de Dezembro de 2009 Teste Diehard aplicado ao gerador da biblioteca OpenSSL Segurança em Redes Móveis Elaborado por: Luís Ricardo Fonseca Instituto.
TADS – Tipos Abstratos de Dados
Algoritmos Distribuídos Professora: Lúcia Drummond
Variáveis Dinâmicas Caixas de Nós
Threads Estagiário: Bruno Guazzelli Batista Slides de autoria do Prof Drº Marcos José Santana baseados no livro Sistemas Operacionais Modernos de A. Tanenbaum.
Maria Aparecida Castro Livi
Francieli Zanon Boito Rodrigo Virote Kassick
Estruturas de Dados I Prof.: Sergio Pacheco Prof.: Sergio Pacheco 1 1.
Processos Conceitos Básicos.
Listas com Ponteiros Listas encadeadas Listas circulares.
UNIX.
Treinamento no GRADEp HelloWorld Args. Slide 2 Rede Nacional de Ensino e Pesquisa Treinamento em Gradep - julho 2005 HelloWorld e Args Autoria Autora.
Laboratório de Programação de Computadores II 2S/2009.
Laboratório de Programação de Computadores II Aula 1 2S/2009.
Slides: Prof. João Fabro UTFPR - Curitiba
Claudio de Oliveira – Simulador SOsim 09/03/10 20:13 Claudio de Oliveira –
MySQL Gerdson de Araújo Silva Universidade Federal de Alagoas Maceió-AL, 21 de maio de 2009.
Experiments with Strassen’s Algorithm: from sequential to parallel
1 Felipe L. Severino Geração de Cenários para Desktop Computing Felipe L. Severino paralela e.
1 Felipe L. SeverinoPOD XtremWeb Felipe L. Severino Programação com Objetos Distribuídos paralela e.
1 Felipe L. SeverinoPDP Enhancing Grids for Massively Multiplayer Online Computer Games Felipe L. Severino Programação com Objetos Distribuídos paralela.
Listas Encadeadas.
Revisão da Linguagem C.
Classes e objetos Arrays e Sobrecarga
Sistema de Unificação de Cadastros
Introdução a Estruturas de Dados Avançadas Utilizando Linguagem C
Algoritmos de Ordenação 4
Revisão /*======================================================*/
IAED Tagus, 2009/2010 Introdução à Programação em C (I)
Compressão de Textos Juliano Palmieri Lage.
Pesquisa em memória primária: hashing
Comparação entre os métodos de ordenação
INPE / CAP-315 Airam J. Preto, Celso L. Mendes Aula 27 (1) Programação com MPI Tópicos: Modelo de Programação Funções de Ambiente Funções Básicas.
Instruções condicionais
© 2003 Introdução à programaçãoComputadores e programação I Linguagens de programação Introdução ao C (continuação)
Principais operações em Listas TPA Listas Simples Inserção no Final 1.void insereNofinalDaLista(Lista *l, Elemento e){ 2.Lista paux,p; 3. p.
Tópicos em redes e sistemas distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Programação de Computadores
Prof. Celso Cardoso Neto. (2) ALINHAMENTO Caso 1.
Desenvolvimento das funcionalidades do trabalho colaborativo da solução para Rastreabilidade de Requisitos de Software baseada na generalização de artefatos.
Computing on large scale distributed systems: experience of the XtremWeb project CMP-157 PROGRAMAÇÃO PARALELA E DISTRIBUÍDA Prof. Cláudio Fernando Resin.
1.
Algoritmos - Propriedades Desejáveis (1)
CMP 167– Programação com Objetos Distribuídos Prof. Cláudio Geyer
Regras de escopo Escopo: trecho de codificação no qual o identificador possui significado Escopo de função: identificador válido dentro do trecho de uma.
PCI- Estrutura Condicional Profa. Mercedes Gonzales Márquez.
Comando de Seleção switch
Pontifical Catholic University of Rio Grande do Sul Porto Alegre, Brazil.
The Mobile Sensing Platform: An Embedded Activity Recognition System
1 / 27 Trabalho Final de PDP – SimGrid: apresentação e aplicação de exemplo Carlos Eduardo Benevides Bezerra Programação distribuída e paralela O Simulador.
Sincronização de Clocks em Sistemas Distribuídos Alessandra Antunes Vargas UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL Programa de Pós-Graduação em Engenharia.
Estudo da Plataforma XtremWeb para Grade CMP157 Computação Paralela e Disribuída Prof. Cláudio Fernando Resin Geyer Aluno: Emerson André Fedechen Apresentação.
SimGrid Fernando Afonso. 2 Sumário Introdução Simulação SimGrid XtremWeb Experimentos Trabalhos futuros Conclusões.
Monarc Framework para Simulações Disciplina: Programação Distribuída e Paralela Alunos: Anderson Bestteti e Rafael Zancan Frantz Professor: Cláudio Fernando.
Comparativo GridSim x MONARC 2 Programação Distribuída e Paralela – 2006/2 Prof.: Cláudio Geyer Aluno: Anderson Bestteti.
A Multilayer P2P Framework for Distributed Synchronous Collaboration Fernando Abrahão Afonso Leonardo Kunz Programação com Objetos Distribuídos Trabalho.
UNIVERSIDADE FEDERAL DE PERNAMBUCO cin.ufpe.br MultiMachine Middleware M M M M M M M M M M M Tarcisio Coutinho
Fundamentos de Programação 1 Slides 22 Prof.ª Fabiany e Prof. SIMÃO Linguagem C “Lista Duplamente Encadeada - Projeto com vários Arquivos”.
IF E ITERAÇÃO WHILE Dilvan Moreira (baseado no livro Big Java e T. Munzner)
Programação de Computadores LINGUAGEM C – AULA 05 - PROF. WELLINGTON TELLES.
Transcrição da apresentação:

Alan Malta Rodrigues CMP167 – Programação com Objetos Distribuídos Instituto de Informática Universidade Federal do Rio Grande do Sul 08 de julho de Modelagem da XtremWeb no SimGrid 1 Alan Malta Rodrigues CMP167 Prof. Claudio Geyer

Sumário Objetivos XtremWeb SimGrid Protótipo Trabalhos Futuros Conclusões 2 Alan Malta Rodrigues CMP167 Prof. Claudio Geyer

Objetivos 3 Estudar e apresentar o simulador SimGrid; Modelar a Grid XtremWeb no SimGrid Avaliar diferentes configurações da XtremWeb: Quantidade de nodos; Quantidade de tarefas; Tamanho da tarefa (CPU-Gflops); Tamanho da tarefa (NET-KB). Alan Malta Rodrigues CMP167 Prof. Claudio Geyer

XtremWeb 4 Grid de código aberto para plataformas distribuída; Modelo de desktop computing; Conceito de computação oportunista; Implementada em C e Java; Composta por 3 componentes: Server Escalona tarefas. Worker Executa as tarefas. Client Requisita tarefas. Alan Malta Rodrigues CMP167 Prof. Claudio Geyer

SimGrid 5 SimGrid é um toolkit para desenvolvimento de ambientes distribuídos; Possui várias APIs de programação; Alan Malta Rodrigues CMP167 Prof. Claudio Geyer

SimGrid 6 Requisitos para simulação no módulo MSG: 1. Arquivo xml da plataforma: Power, bandwidth e latency; Tabela de roteamento. 2. Arquivo xml do deploy: Função dos processos; Argumentos como: Quantidade de tarefas, requisito de CPU e de NET por tarefa. 3. Código em C linkando as bibliotecas do SimGrid (msg e xbt). Alan Malta Rodrigues CMP167 Prof. Claudio Geyer

Protótipo Cenário: desktop computing; Váriáveis da simulação: Todas as combinações de teste; Cada teste feito 30 vezes*. 7 Alan Malta Rodrigues CMP167 Prof. Claudio Geyer NodesTasksCPU_reqNET_reqFail rate 100 ~6,3Gf (1min)10KB10% 5001K~63Gf (10min)100KB30% 1K100K~126Gf (20min)1MB40% 5K1M-10MB+5%

Protótipo – Platform.xml 8 Plataformas geradas aleatoriamente, seguindo os seguintes argumentos: Power: Mínima: 35Mflops (P3 600MHz) Máxima: 181Mflops (Pentium M 1.83MHz) Bandwidth: Mínima: 250/128Kbps Máxima: 14/1Mbps Latency: Mínima: 5ms Máxima: 2000ms Alan Malta Rodrigues CMP167 Prof. Claudio Geyer Bandwidth DownloadTaxa (%) >= 1Mbps37 >= 512Kbps & < 1Mbps 33 >= 256Kbps & < 512Kbps 20% < 256Kbps10%

Protótipo – Platform.xml 9 (...) Alan Malta Rodrigues CMP167 Prof. Claudio Geyer

Protótipo – deploy.xml 10 Alan Malta Rodrigues CMP167 Prof. Claudio Geyer

Protótipo – Código fonte (server) 11 Alan Malta Rodrigues CMP167 Prof. Claudio Geyer int server(int argc, char *argv[]) { server_host = MSG_host_self(); num_workers = argc – 4; xbt_assert1(sscanf(argv[1],"%d", &tasks_count), "Invalid parameter %s\n",argv[1]); xbt_assert1(sscanf(argv[2],"%lg", &task_cpu_size), "Invalid parameter %s\n",argv[2]); xbt_assert1(sscanf(argv[3],"%lg", &task_net_size), "Invalid parameter %s\n",argv[3]); todo = create_tasks(); workers = create_hosts(argv); scheduler(tasks_count, num_workers, workers); free(workers); free(todo); return 0; } /* end_of_server */

Protótipo – Código fonte (scheduler) 12 Alan Malta Rodrigues CMP167 Prof. Claudio Geyer int scheduler(int tasks_count, int workers_count, m_host_t* workers) { for (i = 0; i < tasks_count; i++) { requester = NULL; requester = receive_request_task(); if(requester == NULL) continue; else a = send_task_to_worker(i, requester); } for (; i < (tasks_count+tasks_losted); i++) { (...) } for(i=0; i<workers_count; i++) { (...) } INFO1("NUMBER OF TASKS LOSTED %d", tasks_losted); return 0; }/* end_of_scheduler */

Protótipo – Código fonte (worker) 13 Alan Malta Rodrigues CMP167 Prof. Claudio Geyer int worker(int argc, char *argv[]) { srand(time(NULL)+pid); while(1) { if(rand()%4 == 1)/* 25% can sleep */ { to_sleep = rand()%86401; if(to_sleep >= 60) { MSG_process_sleep(to_sleep); } a = request_task_to_server(); switch(a) { case MSG_OK: b = receive_task_from_server();/* execute_task(task); */ break; } }/* end_of_while */ return 0; } /* end_of_worker */

Trabalhos Futuros 14 Simular a XtremWeb com 10K e 100K nodes; Simular a XtremWeb com tarefas de 30min e 60min; Simular outros algoritmos de escalonamento; Simular outros cenários (corporativo e G5K). Alan Malta Rodrigues CMP167 Prof. Claudio Geyer

Conclusões 15 As simulações na SimGrid não são tão rápidas; Algoritmo de escalonamento da XtremWeb não é bom; Ausência de checkpoint é bastante prejudicial; Arquivos XML são relativamente grandes para distribuir na XtremWeb. Alan Malta Rodrigues CMP167 Prof. Claudio Geyer