Ambientes Distribuídos Híbridos

Documentos relacionados
SIST706 Sistemas Distribuídos

Computação em Grid e em Nuvem

SISTEMAS DISTRIBUÍDOS

OpenMP: Variáveis de Ambiente

Desenvolvimento de Aplicações Distribuídas

Introdução aos Sistemas Distribuídos

Características de Sistemas Distribuídos

SSC510 Arquitetura de Computadores. 10ª aula

Características de Sistemas Distribuídos

Paralelização de Algoritmos de CFD em Clusters Multi-Core MC7. Escola de Verão Arquiteturas Multi-Core

Sistemas Distribuídos

Supercomputador Pleiades

Paradigmas de Computação

Arquitetura de Computadores Paralelos. Introdução Conceitos Básicos Ambientes de Programação Modelos de Programação Paralela

Conceitos de Sistemas Distribuídos

Sistemas Distribuídos

Introdução à Programação Paralela através de Padrões. Denise Stringhini Calebe Bianchini Luciano Silva

Desenvolvimento de Aplicações Distribuídas

Sistemas Distribuidos. Prof. Walter Gima

Quando Distribuir é bom

DESENVOLVIMENTO DE UM ALGORITMO PARALELO PARA APLICAÇÃO EM CLUSTER DE COMPUTADORES

30/5/2011. Sistemas computacionais para processamento paralelo e distribuído

Sistemas Distribuídos

Grades Computacionais e Globus. uso de recursos geograficamente dispersos

Implementação e Desenvolvimentos de Grade Computacional

Programação de Alto Desempenho - 2. Prof: Carla Osthoff

Sistemas distribuídos. Prof. Emiliano Monteiro

Avanços e Perspectivas do Projeto Integrade na UFMA

Componente de aplicação. Figura 1 - Elementos funcionais de uma aplicação sendo executados de forma distribuída

Quando Distribuir é bom

SISTEMAS DISTRIBUÍDOS TIPOS

Índice FCA - EDITORA DE INFORMÁTICA XV

Sistemas Operacionais Distribuídos

SISTEMAS OPERACIONAIS DE REDE

UNIVERSIDADE FEDERAL DE GOIÁS INSTITUTO DE INFORMÁTICA. Sistemas Distribuídos

Engenharia de Software

Caracterização de Sistemas Distribuídos

Backup e Restauração Banco de Dados. Evandro Deliberal

Infra-Estrutura de Software

Informática UFRGS. Programação com Objetos Distribuídos (C. Geyer) Java Comunicação 1

Programação Paralela e Distribuída

SSC0611 Arquitetura de Computadores

InGriDE: Um Ambiente Integrado de Desenvolvimento para Computação em Grade

Tipos de Sistemas Distribuídos

UNIVERSIDADE FEDERAL DO PARÁ PRÓ-REITORIA DE PESQUISA E PÓS-GRADUAÇÃO DIRETORIA DE PESQUISA PROGRAMA INSTITUCIONAL DE BOLSAS DE INICIAÇÃO CIENTÍFICA

Sistemas Distribuídos

Introdução a Computação em Nuvem

Roteiro da apresentação. Por que o alto desempenho? Máquinas de Alto desempenho. Projetos de Alto Desempenho

...de forma confiável, consistente, económica. Permite- nos acesso a grandes capacidades. Infra-estrutura de hardware e software

AULA 06: PROGRAMAÇÃO EM MÁQUINAS PARALELAS

Sistemas Distribuídos

Sistemas Distribuídos

Aluno de Pós-Graduação em Engenharia de Software para Dispositivos Móveis pela UNINTER

Introdução a Computação em Nuvem

Bibliografia em processamento paralelo

SISTEMAS OPERACIONAIS

Sistemas Operacionais: O quê? Por quê? Quando?

Sistemas Distribuídos

Arquitetura de sistemas distribuídos

AULA 03: PROCESSAMENTO PARALELO: MULTIPROCESSADORES

InteGrade: um Sistema de Middleware para Computação em Grade Oportunista

INTRODUÇÃO AOS SISTEMAS DISTRIBUÍDOS. Prof. Cesar Augusto Tacla

Sistema Distribuído. Sistema Distribuído. Aplicações Distribuídas. Conceitos Básicos

Estruturas de Sistemas Operacionais

19:00 20:30 Cluster 20:30 21:45 Grids Computacionais 21:00 Lista de presença 21:45 22:35 Trabalho em sala de aula. Planejamento

PAULI FIGUEREDO GOMES USO DE COMPUTAÇÃO EM GRADE EM ORGANIZAÇÕES VIRTUAIS

Sistemas Distribuídos. Plano de Curso. Plano de Curso 04/03/12 ! EMENTA:

Introdução PARTE I. VISÃO GERAL

Curso de Programação Distribuída e Paralela 29/09/2008. Informática UFRGS. Sistemas Operacionais II (C. Geyer) Sincronização 1. Pg.

Proposta Comercial CloudFlex

Sumário. 1 Caracterização de Sistemas Distribuídos 1. 2 Modelos de Sistema Redes de Computadores e Interligação em Rede 81

Santos Dumont - LNCC: Utilização e Pesquisa. Carla Osthoff e Roberto Souto CENAPAD/LNCC Laboratório Nacional de Computação Científica

Tecnologias de Distribuição e Integração. Quais as preocupações a ter com um sistema distribuído?

TÓPICOS EM COMPUTAÇÃO APLICADA

Introdução a Web Services

Sistema de Software Distribuído

Análise do impacto da atualização e adoção de novas tecnologias de software no projeto GradPAD

PROGRAMA DE DISCIPLINA

Carlos Eduardo Batista Centro de Informática - UFPB

Paradigmas de Processamento Paralelo na Resolução do Fractal de Mandelbrot

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 04: PROCESSAMENTO PARALELO: MULTICOMPUTADOR

Tipos de Clusters. Introdução. Introdução 21/03/12

Sistemas MIMD. CES-25 Arquiteturas para Alto Desmpenho. Paulo André Castro

Grades Computacionais. uso de recursos geograficamente dispersos

Escalonamento de Aplicações BoT em Ambiente de Nuvem

UNIVERSIDADE FEDERAL DE GOIÁS INSTITUTO DE INFORMÁTICA. Sistemas Distribuídos

Bacharelado em Sistemas de Informação Sistemas Operacionais. Prof. Filipo Mór

Implementação de Estrutura de Cloud Privada para Investigação e Serviços da UAlg

Técnicas de Processamento Paralelo na Geração do Fractal de Mandelbrot

Computação Distribuída Baseada em Java rodando em Arquiteturas Beowulf e Arquiteturas Heterogêneas

Bases de Dados Distribuídas

Sistemas Distribuídos

ARQUITETURA DE SISTEMAS DISTRIBUÍDOS. Aula 1- Introdução aos Sistemas Distribuídos

de petróleo. Um novo domínio chamado computação de propósito geral em processadores gráficos (GPGPU) surgiu quando os pipelines de gráficos de

Sistemas Distribuídos

Apresentação. Ementa da Disciplina. Objetivo da Disciplina. DCA-108 Sistemas Operacionais. Referências Bibliográfica. Referências Bibliográfica

CHPC Computational Platforms

Grid Computing Implementação utilizando o framework Alchemi

Transcrição:

010101010101010110110010010010101011101010111100010111100010101010100100111001010001001010100101010100010010100101010110101010101 0110000001111110101001010001010101001001010110100100101010101010101101100100100101010111010101111000101111 101010101001001110010100010010101001010101000100101001010101101010101010110000001111110101001010001010101001001010110100100010010 Ambientes Distribuídos Híbridos Prof. Francisco Isidro Massetto, PhD Universidade Federal do ABC

Agenda Computação Distribuída Sistemas Híbridos Cluster e Grid Computing Integração Pesquisas Desenvolvidas na Univ. Anhembi Morumbi Conclusões e Lições Aprendidas

Introdução Por que Computação Distribuída? Desempenho Escalabilidade Tolerância a Defeitos (falhas) Custo Atingir poder computacional jamais imaginado Localização física dos componentes Distribuição inerente Fonte: Tanembaun, A. Distributed Systems

High Performance Cenário Atual Processadores de múltiplos núcleos Dual-core Quad-core Octo-core core 80-core (em testes na Intel - Teraflops) Como explorar ao máximo tais processadores? Multithreaded Multiprogramação Linguagens C, Java Bibliotecas OpenMP, PosixThreads, WinThreads, Fibers

Distributed Computing Comunicação Passagens de Mensagens Sockets (TCP/IP) RMI, RPC WebServices MPI Message-Passing Interface Organização Clusters, Network Of Workstations, Massive Parallel Processors Dedicação dos Processadores e Rede de Interconexão Ambientes de rede local Organização: com ou sem nodos front-end (limitação de endereçamentos) Grids Abrangência mundial Comunicação já é considerada consolidada

Motivação Necessidade real Alto poder computacional Distribuição geográfica inerente Agregar diferentes sites em um único ambiente cooperativo Acesso a recursos Bag of tasks Infraestrutura Tecnológica Ineficiente Windows Servers < 5% Unix Servers 15% 20% Desktops < 5% Fonte: IBM Corporation Taxonomy of Actual Utilization of Real Unix and Windows Servers

Motivação Por que se fala tanto em distribuição? Desempenho das Redes x Desempenho das CPUs Velocidade dos computadores dobra a cada 18 meses Velocidade das redes dobra a cada 9 meses Diferença = magnitude por 5 anos 1986 2000 Computadores: x500 Redes: x340.000 2001 2010 Computadores: x60 Redes: x4000 Fonte: Ian Foster Introduction to Grid Computing

Cenário

Motivação Quem necessita de Ambientes Distribuídos? Cientistas e Engenheiros Simulações, cálculos, detecção de padrões Treinamento e Educação Integrar pessoas remotamente distantes Tornar recursos acessíveis a todos os membros do ambiente Corporações Petrobrás Daimler-Chrysler Bancos Órgãos Governamentais/Estratégicos Infraero

Exemplos Daimler-Chrysler Propósitos Computer Aided Engineering Vehicle Simulations Fluid Dynamics Impact Events Noise, Vibration, Harshness Dados Mais de 700.000 elementos (parâmetros) Intensivo uso de CPU e Memória Duração: de horas a dias

Exemplo - Daimler Chrysler Clusters IBM Intellistations 172 Nós, 344 CPUs Xeon 2.8 GHz Storage 1.8 Tb Itanium NVH Cluster 96 Nós, 192 CPUs Storage 675 Gb 2 SGI SMP Front-End 64 CPUs de 64bits Pentium compute Cluster 32 Nós, 64 CPUs de 32 bits Ambiente Híbrido Variedade de processadores Sistemas Operacionais Bibliotecas de Programação

Exemplos Infraero Distribuição inerente Controle do espaço aéreo Vôos em vigência Decolagens Pousos Sincronização entre horários de Vôos Nacionais e Internacionais Número de Aeroportos no Brasil Hubs

Aspectos Conceituais Um ambiente distribuído tem basicamente 2 aspectos Hardware Rede de Computadores Software Desafios Sistema de Imagem única Cooperação entre os processadores Software Segurança Autenticação, autorização, políticas

Aspectos Conceituais Ambientes Distribuídos já são realidade há muito tempo Cluster Computing Grid Computing Desafio Integração de diversos ambientes Sistemas Operacionais Arquiteturas de máquinas Implementações de Bibliotecas Como tornar o sistema transparente Definir Transparência

Distributed Supercomputing Diferentes categorias Distributed High Performance DIS, Rendering,, Ab Into Chemistry High Throughput SETI, Condor, Cryptography On Demand NetSolve, Scanning Tunneling Microscope Data Intensive Meteorological Forecasting Terabytes, Petabytes of Data Collaborative CSCW Computer Support for Cooperative/Colaborative Colaborative Work

Modelos de Programação Modelo Exemplos Prós Contras Datagram/Stream TCP,UDP, Multicast Baixo Overhead Baixo nível Shared Memory Threads Alto Nível Escalabilidade Paralelismo de Dados HPF, HPC++ Paralelização Automática Aplicabilidade Restrita Message-Passing MPI, PVM Alto Desempenho Baixo Nível Orientação a Objetos Corba,, RMI, DCOM Suporte para grande porte Desempenho RPC DCE, ONC Simplicidade Aplicabilidade Restrita High Throughput Condor, LSF Facilidade de uso Aplicabilidade Restrita Agentes Aglets Flexibilidade Desempenho, Robustez

Grid Computing Recursos compartilhados de maneira segura, coordenada e flexível entre indivíduos, instituições e outros recursos Compartilhamento de recursos de forma transparente, segura e coordenada através de sites Capacidade de formar organizações virtuais e colaborativas que compartilham aplicações e dados em um ambiente heterogêneo Agregar recursos computacionais geograficamente dispersos, criando uma imagem de site único Infra-estrutura de HW e SW que proporciona acesso de forma confiável (dependable), pervasiva (anywhere), e barata (inexpensive( inexpensive) A Web proporciona a informação, o Grid permite processá-la

Grid Anatomy Fonte: Grid Computing A Practical Guide to Technology and Applications

Grid Anatomy Fabric Hardware e Infra-Estrutura Middleware Funcionalidades para acesso aos recursos Message-Passing Passing, Scheduling, Compilers, Tools ServiceWare Suporte Operacional para Grid Computing Applications Grid Resource Providers CPU Time, Storage, Grid Application Service Providers Propósitos específicos

Grid Infrastructure OBIGrid Japão Fonte: Advanced Genome Information Technlogy Research Group http://big.gsc.riken.jp/index_html

Grid Infrastructure TeraGrid Fonte: CenaPAD - UFRGS

Integração OGSA - Open Grid Service Architecture

Serviços Infra-Estrutura Transmissão, Nomeação, Segurança, Notificação, Transação, Orquestração (Workflow( Workflow) Gerenciamento de Execução Encontrar, Selecionar, Gerenciar execução de tarefas em hosts Dados Flat Files (rw( rw), Streams,, DBMS (relational( relational,, XML, OO), Catálogos Remote Access, Staging (move), Replication, Federation, Derivation, Metadata, Transfer Heterogeneidade, Gerenciamento de Recursos (Resource( Management) Reboot de hosts, gerenciarvlan,, outros serviços OGSA Escalável, Interoperável,, Seguro Segurança Autenticação, Mapeamento de Identidades, Autorização, Conversão de Credenciais, Log e Auditoria, Privacidade Auto-Gerenciamento Auto-configuração, auto-conserto, auto-otimização otimização Reduzir custos de manutenção com infra-estrutura de TI Serviço de Informação Manipular informações sobre aplicações, recursos e serviços em um u Grid (diretórios)

Middleware Integração Oferta de serviços Necessito executar uma aplicação Necessito de armazenamento Necessito acessar um recurso Garantia de disponibilidade Autenticação/Autorização/Níveis de Acesso Gerenciamento/Atualização/Manutenção Notificação de término de execução Quem faz parte da minha Organização Virtual?

Middleware para Grids Globus Toolkit Resource Grid Resource Allocator Manager (GRAM) Gerenciamento de Recursos Grid Resource Information Protocol (GRIP) Serviços de Informação Grid File Transfer Protocol (GridFTP) Transferência de Arquivos Connectivity Grid Secure Infrastructure (GSI) Segurança Development MPICH-G2 Implementação MPI para Globus Globus IO Acesso síncrono e assíncrono com autenticação e criptografia

Middleware para Grids Condor Job Execution High-Throughput Scheduler Non-Dedicated Resources Job Checkpoint and Migration Remote System Calls Utiliza serviços disponíveis no Globus Toolkit Apenas um único domínio administrativo Combinado com Globus,, permite vários domínios administrativos diferentes

Lições Aprendidas Distribuição é um caminho sem volta Necessidade de descentralização Software Modelo de funcionamento da aplicação Possibilidade de utilização de recursos On Demand Evolução natural dos modelos de processamento distribuído Ênfase em modelos de arquitetura aberta e fácil integração High-Performance Aproveitamento do hardware hoje disponível Volume de dados para processamento OLAP, Data Mining Aproveitar o melhor do que se tem disponível Capacidades das máquinas existentes Utilização de recursos em outras regiões

010101010101010110110010010010101011101010111100010111100010101010100100111001010001001010100101010100010010100101010110101010101 0110000001111110101001010001010101001001010110100100101010101010101101100100100101010111010101111000101111 101010101001001110010100010010101001010101000100101001010101101010101010110000001111110101001010001010101001001010110100100010010 Dúvidas?

010101010101010110110010010010101011101010111100010111100010101010100100111001010001001010100101010100010010100101010110101010101 0110000001111110101001010001010101001001010110100100101010101010101101100100100101010111010101111000101111 101010101001001110010100010010101001010101000100101001010101101010101010110000001111110101001010001010101001001010110100100010010 Obrigado! Contato: francisco.massetto@ufabc.edu.br