Análise de soluções para Grid Computing

Tamanho: px
Começar a partir da página:

Download "Análise de soluções para Grid Computing"

Transcrição

1 Análise de soluções para Grid Computing Jones Bunilha Radtke 1, Carlos Vinícius Rasch Alves 2 1 Curso Superior de Redes de Computadores Faculdade de Tecnologia SENAC Pelotas (FATEC) Rua Gonçalves Chaves Pelotas RS Brazil jones.radtke@gmail.com,cvalves@senacrs.edu.br Abstract. This article presents a study of solutions that aims at the implementation of a computer system where its main feature is the parallel and distributed processing applications, also known as Grid Computing. In the tests performed will be presented and their results in order to determine the performance of the scheduling methods used for each solution. Keywords: grid computing, OAR, HTcondor, analysis, performance. Resumo. Este artigo apresenta um estudo de soluções que tem por objetivo a implantação de um sistema computacional onde a sua principal característica é o processamento paralelo e distribuído de aplicações, também conhecidos como Grid Computing. Neste será apresentado os testes efetuados e seus resultados, a fim de, determinar o desempenho dos métodos de escalonamento utilizados por cada solução. Palavras-Chave: grade computacional, OAR, HTcondor, análise, desempenho. 1. Introdução O crescimento do conhecimento científico está diretamente relacionado a evolução das tecnologias computacionais, visto que, cada vez mais são utilizados sistemas de alto desempenho computacional, como ferramenta, para a resolução de cálculos matemáticos complexos, criação de modelos de simulação e processamento de renderização de imagens e videos na produção cinematográfica. Ainda, pesquisas na área da Medicina, Biologia e das Ciências Exatas são altamente beneficiadas com o uso destes sistemas. A aquisição de sistemas computacionais que tem como característica principal um alto poder de processamento e armazenamento, também chamados de supercomputadores, requerem um alto investimento financeiro. Em conjunto à ideia de que recursos computacionais ociosos possam ser melhor aproveitados, o uso de sistemas de Grid Computing torna-se uma alternativa, onde por intermédio de um único ambiente, pesquisadores podem submeter, tarefas jobs e aplicações, para serem processados em algumas centenas de computadores, que dispõe de menor recurso de hardware, mas que atuam em conjunto de forma paralela e distribuída geograficamente. 2. Computação Paralela e Distribuída A Computação Paralela tem como objetivo a divisão de um problema ou tarefa, para que seja executada de forma concorrente, em processadores distintos, a fim de, obter-se resultados em menor tempo ou com maior eficiência, desta forma, aumentando o poder computacional da estrutura. Ainda, segundo [Dongarra et al. 2003], o ponto crítico de um processamento paralelo é manter todos processadores envolvidos ocupados de forma

2 balanceada, mantendo o nível de comunicação entre os mesmos, de forma harmônica com o meio de comunicação utilizado. Sistemas Distribuídos são um conjunto de computadores independentes, que se apresenta a seus usuários como um sistema único e coerente, desta forma, atua de forma transparente para o usuário, com componentes autônomos que colaboram entre si, e este é o principal desafio para os desenvolvedores desta área. Uma característica importante, do sistema, é estar sempre disponível, mesmo que alguns componentes encontram-se com problemas. Para os usuários ou tarefas, deve ser imperceptível que tais partes possam estar sendo substituídas, consertaras ou adicionadas ao sistema. Com a intenção de manter-se a organização e o controle, sistemas distribuídos são organizados por meio de uma camada de software, muitas vezes denominada de middleware [Tanenbaum and Steen 2007] Cluster Na década 90 novas pesquisas na área de Processamento Paralelo e Sistemas Distribuídos surgem com o intuito de solucionar os problemas de alto investimento para a aquisição de supercomputadores. Ainda nesta década, o cenário computacional começa a modificar-se, em virtude da maior facilidade à aquisição de computadores pessoais. Aliada ao aumento do poder computacional destes equipamentos e o avanço da tecnologia de Redes de Computadores, torna-se um estimulo para o início do desenvolvimento de sistemas que possuem como principal objetivo, interconectar computadores de menor capacidade de recursos de hardware através de um rede local de alta velocidade, com o uso de protocolos de comunicação, e efetuar o compartilhamento destes recursos entre si, de forma a distribuir a carga de processamento na execução de uma tarefa, tornando a capacidade computacional, deste conjunto, tão eficiente quanto ao desempenho de um supercomputador. Este é o conceito básico no qual operam os clusters computacionais [Kon and Goldman 2008] Grid Computing Com o avanço das tecnologias de Redes de Computadores, com conexões a Internet mais rápidas e mais estáveis, propiciou, inicialmente, que universidades norte-americanas e européias fossem capazes de interconectar seus supercomputadores e clusters computacionais, criando assim, organizações virtuais localizadas geograficamente distantes, e em instituições distintas, dando origem aos primeiros grids computacionais. Grid Computing são sistemas computacionais com uma plataforma heterogênea e distribuída geograficamente de forma dispersa, onde os recursos são compartilhados de forma transparente para seus usuários que a utilizam, por intermédio de um único ambiente. Ainda, segundo [Dantas 2005], um grid é um ambiente computacional distribuído paralelo que permite o compartilhamento, a seleção, a agregação de recursos autônomos e geograficamente distribuídos. Estas operações e recursos podem ser utilizados durante a execução de uma aplicação, dependendo de sua disponibilidade, capacidade, desempenho e custo. O objetivo é prover aos usuários serviços com os requisitos de qualidade corretos para o perfeito funcionamento de suas aplicações, através da habilidade de cooperação de compartilhamento e agregação de recursos computacionais distribuídos e disponibilizando-os como recursos e serviços. O nome Grid Computing, ou Computação em Grade, é originada de uma analogia com as malhas de distribuição de energia elétrica dos Estados Unidos, conhecido por

3 Power Grid. Ao utilizar a energia elétrica, o usuário não tem a percepção de onde está sendo gerada, da mesma forma que os recursos computacionais disponibilizados por um grid, irão se apresentar ao seu usuário. Anteriormente ao conceito de grid, os esforços da Computação de Alto Desempenho, eram voltados ao desenvolvimento na criação de algoritmos paralelos, novas arquiteturas para paralelização de hardware e no estudo de escalonamento de algoritmos para otimização de recursos. Máquinas paralelas com dezenas de processadores, conectados por barramentos de alta velocidade eram as plataformas utilizadas. A diferença entre estes sistemas e os grids, está na quantidade de canais de comunicação entre os elementos da estrutura. Supercomputadores paralelos possuem canais de comunicação de alta velocidade, baixa latência e alta confiabilidade, já os grids empregam tecnologias do mercado comum, como redes locais de padrão Ethernet [IETF 2015] e link de Internet, que apresentam baixa velocidade, maior latência e menor confiabilidade, com relação aos barramentos de um supercomputador, para a conexão de aglomerados de computadores. Devido a este aspecto, algoritmos paralelos que apresentavam grande desempenho em computadores dedicados, não necessariamente terão o mesmo desempenho nestas estruturas [Kon and Goldman 2008] Arquitetura Em busca de uma padronização, pesquisadores propõem uma arquitetura de Grid Computing, que permita a interoperabilidade entre organizações virtuais e que alguns módulos como autenticação, autorização, mecanismos de troca de mensagens, compartilhamentos de recursos, escalonamento e balanceamento de tarefas devam fazer parte do sistema [Dantas 2005]. Um modelo de estrutura de quatro camadas é apresentado na figura 1. Figura 1. Modelo de arquitetura de Grid Computing. A camada de Aplicações e Serviços é o nível mais elevado do modelo. Neste, inclui-se um conjunto de ferramentas de desenvolvimento de aplicações que podem variar de organização virtual para organização virtual. Os serviços são os responsáveis pelo gerenciamento dos recursos compartilhados entre diferentes usuários, departamentos e empresas. O Middleware é a camada que permite que múltiplos elementos, servidores, ambientes de armazenamento e redes, possam compor um ambiente de grid, por meio de protocolos dedicados. Este protocolos são os responsáveis por dar suporte aos elementos heterogêneos que irão compor a estrutura de grid. Os elementos de heterogeneidade podem ser diferentes sistemas operacionais, sistemas de arquivos e protocolos de comunicação de rede. A camada de Recursos é formada pelo conjunto de recursos dis-

4 poníveis em cada elemento da estrutura que compõe um grid. A Rede é a camada de nível mais baixo, e tem por objetivo fazer conectividade dos elementos do grid. Nesta camada estão switches, roteadores e a infra-estrutura das redes de comunicação [Dantas 2005] Diferenças entre Cluster e Grid Computing Com um ambiente de um único proprietário, configuração de hardware e software local e com o propósito de resolução de tarefas de uma única organização, é a forma como se caracteriza um cluster. Já um grid disponibiliza recursos e serviços de uma forma geograficamente distribuída, portanto, o gerenciamento destes recursos e serviços, dáse diferentemente. Em um cluster, há uma autoridade central e os elementos trabalham em conjunto com uma única entidade física, enquanto, que nas configurações de grid, o gerenciamento dos elementos é efetuado por cada organização virtual, sem ter uma visão única de sistema [Zem and Brito ]. 3. Soluções de Grid Computing Nesta seção serão apresentadas características, funcionalidades, arquitetura e o método de escalonamento de cada solução estudada OAR O OAR é um gerenciador de recursos para sistemas altamente distribuídos desenvolvido no Instituto Politécnico Nacional de Genoble na França. A filosofia do projeto é que seja possível desenvolver um sistema complexo para o gerenciamento de recursos, sem que a eficiência e escalabilidade seja comprometida. Trata-se de uma solução em código aberto, com licença GPL, implementado com ferramentas de alto nível como bancos de dados MySQL ou PostgreSQL, linguagem scripting Perl e mecanismos para trabalhar com CPUSET, módulo integrado ao kernel do Linux que tem por objetivo fornecer um mecanismo para atribuir um conjunto de recursos computacionais para um conjunto de tarefas. O OAR encontra-se em funcionamento no projeto Grid5000 [Grid ] e no projeto CIMENT [CIMENT 2015] sendo o responsável pelo gerenciamento de recursos e agendamento de tarefas destes grids [OAR 2015] Arquitetura Segundo os desenvolvedores do OAR, pelo fato do sistema possuir um banco de dados de propósito geral, seja a melhor forma de garantir uma interface amigável e um facilitador para a análise de dados com relação aos estados dos recursos e das execuções das aplicações. Portanto não há uma API para o seu uso, pois todo o sistema é definido de acordo com o banco de dados, possibilitando que cada módulo possa ser desenvolvido em qualquer linguagem que possua uma biblioteca de acesso a banco de dados [OAR 2015]. A figura 2, apresenta como é composto a arquitetura do OAR. O único meio de comunicação entre os módulos, é através de consultas SQL no banco de dados, responsável por armazenar as informações relacionados a procuras e ofertas de recursos utilizados. No OAR cada aplicação é representada por uma tabela SQL, o que caracteriza o OAR como uma solução robusta. Os demais módulos do sistemas

5 Figura 2. Arquitetura do OAR. são desenvolvidos em Perl responsáveis por iniciar e controlar a execução das tarefas e escalonar as mesmas [Capit et al. 2005]. Em sua arquitetura o Client ou Frontend, é o elemento que fornece os mecanismos para a submissão das tarefas ou aplicações, para ser processada na estrutura e efetuar a reserva de recursos do grid. O Server Node é o responsável por executar o OAR daemon e armazenar todas as informações relacionados a procuras e ofertas de recursos que poderão ser utilizados e os Nodes são os responsáveis por efetuar a execução das tarefas submetidas ao grid [OAR 2015] Escalonamento Como principal objetivo é apresentar uma solução em plataforma aberta para experimentos e pesquisas, o módulo de escalonamento implementado, no OAR, possui bastantes funcionalidades com algoritmos simples, ainda que as funcionalidades mais importantes são implementadas, como prioridades sobre tarefas, reservas de recursos e backfilling.o método de escalonamento basea-se que todas a aplicações submetidas para execução são ordenadas de acordo com a sua chegada na fila, First Come First Served, conforme o algoritmo padrão implementado no OAR. Gradativamente as aplicações são escalonadas, de uma vez que, não implique em atraso para as tarefas já em execução [Aliaga 2011] HTCondor O HTCondor é um sistema desenvolvido na universidade de Wisconsin-Madison, especializado em gerenciar aplicações de computação que necessitam de alto poder de processamento. Trata-se de um projeto em software livre com licença Apache 2.0 e um dos pioneiros na área da computação distribuída, lançado em Em busca de soluções que permita o uso de ciclos ociosos de recursos computacionais, o HTCondor foi o projeto que influenciou o meio acadêmico, na área da Computação em Alto Desempenho, a intensificar suas pesquisas para este propósito. Ainda a solução pode ser utilizada na construção de ambientes de Grid Computing. A tecnologia flocking permite que múltiplas instâncias trabalhem em conjunto. O HTCondor incorpora muitas das atuais implantações de grid e computação baseada em nuvem, em conjunto com os recursos administrativos do Globus ToolsKit [Globus 2015], torna-se interoperável [HTCondor 2015].

6 Arquitetura A arquitetura do HTCondor suporta que seja utilizado como um gerenciador de um grupo de computadores dedicados ou não, desta forma, através de mecanismos próprios aproveita-se o poder computacional ocioso dos recursos computacionais disponíveis no grid. A estrutura básica da solução é composta por um elemento chamado de gerenciador central (Central Manager), nós executores (Execution Machine) e nós submissores (Submit Machine), e este conjunto também é chamado de pool, conforme apresentado na figura 3. Figura 3. Arquitetura do HTCondor. O gerenciador central, em um pool, é o responsável por coletar informações, através do daemon condor collector, que irá compor as características dos recursos computacionais disponíveis e o seu uso, pertencentes a estrutura. De acordo com as informações coletadas, o gerenciador realizará a seleção dos recursos necessários para a execução de uma tarefa, com a utilização do daemon condor negotiator. O usuário poderá submeter as tarefas através dos nós submissores, e estes serão inseridos em uma fila com o uso do daemon schedd. Já a execução das tarefas são efetuadas nos nós executores com a utilização do daemon start [Aliaga 2011] Escalonamento O HTCondor utiliza um mecanismo de escalonamento conhecido como matchmaking [Raman et al. 1998], que consiste em determinar onde e quando será executada uma tarefa. No ato de submissão de uma tarefa, um componente denominado agente especifica os recursos computacionais necessários para a sua execução e o anuncia para às entidades de matchmaker, que por sua vez, encontra qual o recurso é o mais adequado para executar a tarefa. Após, há a notificação da tarefa e do recurso elegido, que por fim, negociam possíveis termos para iniciar a execução [Aliaga 2011]. 4. Testes Realizados Nesta seção serão apresentados os cenários e a metodologia utilizada nos testes de cada solução de Grid Computing.

7 4.1. Cenário de Testes Com o objetivo de verificar o desempenho, a performance dos métodos de escalonamento, a eficiência e mensurar a utilização de recursos consumidos por cada solução, foi estruturado um ambiente virtualizado, com a ferramenta XenServer versão 6.5, para a instalação dos grids. Ambas estruturas, OAR e HTCondor, foram compostos por um elemento de submissão de tarefas, um gerenciador e dez executores, com harware de uma CPU de 4 cores, 512MB de memória RAM e com sistema operacional Linux Ubuntu Server 14.04, totalizando 40 cores de processamento e 5,12GB de memória RAM de recursos disponíveis em cada estrutura. Com o propósito de comparativo dos resultados, testes realizados no ambiente desenvolvido exclusivamente para esse estudo, também foram efetuados na estrutura do Grid5000, na França. Foram utilizados dois frontends do Grid5000, o Grenoble, composto por 234 cores, divididos em 3 clusters e o frontend Lyon, composto por 106 cores, divididos em 4 clusters Metodologia de Testes Consistem na submissão de algoritmo para o grid, com a utilização da API própria de cada solução, por intermédio do elemento frontend (OAR) ou submit (HTCondor), gerando carga de processamento, uso de memória e recursos de redes em cada elemento que compõe a estrutura, desta forma, verifica-se o tempo de execução de cada tarefa. Para a execução de algoritmos com essa finalidade, é necessário que sejam desenvolvidos baseados em Sistemas Paralelos e que possuam métodos de escalonamento em seu código. Utilizou-se algoritmos de divisão de carga, síntese de códigos irregulares e otimização de memória hierárquica, disponível no projeto Galois [Galois 2015]. O foco principal desta análise é mensurar a eficiência com relação aos recursos utilizados de cada solução, com tudo, não será abordado os mecanismos de desenvolvimento do código utilizado. Figura 4. Gráfico de primeira execução do algoritmo. Os recursos de cada solução foram mensurados através da ferramenta de monitoramento Ganglia [Ganglia 2015], que é um sistema desenvolvido para ser utilizado em ambientes distribuídos e de alto desempenho, nos quais se enquadram os cluster e grid computacionais. As técnicas de engenharia de software e sua organização facilitam a busca de dados. O sistema tem sua origem na Universidade da Califórnia em Berkeley e é distribuído sobre licença open source. Utiliza-se de comunicação multicast para o monitoramento dos elementos do ambiente monitorado.

8 O primeiro teste consiste na submissão do algoritmo para cada solução com sua estrutura de forma completa, com todos os elementos executores ativos. No teste seguinte haverá uma variação da quantidade de elementos executores ativos, em cada estrutura, e também no número de tarefas, job, submetidos, desta forma, será avaliado o desempenho do escalonador de cada grid nestas condições. O terceiro teste, tem por objetivo verificar os resultados na submissão de tarefas utilizando-se da funcionalidade de recursos desejados disponível na solução OAR. 5. Resultados A figura 4, apresenta um gráfico com os tempos de execução do algoritmo em cada solução. Observa-se que o HTCondor foi a solução com melhor desempenho, seguido pelo OAR e o Grid5000 para o teste de primeira execução. Ainda neste gráfico é possível verificar o quanto é eficiente um sistema de grid, em comparação a execução do mesmo algoritmo em um computador, localhost, que possui os mesmos recursos de hardware de um elemento executor do grid. Figura 5. Gráfico de execução do algoritmo em função da quantidade de tarefas submetidas. Os tempos de execução, nos testes seguintes, serão relativamente menores, pois o grid utilizará de recursos de otimização de memória, presente no código do algoritmo utilizado, aumentando a eficiência de execução das tarefas. Tal recurso do algoritmo provê paralelizar as tarefas com utilização de memória compartilhada dentro da estrutura do grid. Os resultados dos testes apresentados nos gráfico da figura 5, foram obtidos por meio da submissão de um conjunto de tarefas simultâneas, dividias em 50, 100, 500 e 2000 tarefas, para quatro ambientes com configurações distintas, onde a primeira foi composta por um executor, o segundo por três executores, o terceiro com cinco executores e o último com dez executores. A submissão de 50 tarefas também foi efetuada nos

9 dois frontend do Grid5000. Devido a uma política existe neste grid, o máximo de tarefas submetidas por único usuário não deve ultrapassar o valor de 50. O propósito desta sequencia de testes é avaliar o desempenho e a eficiência dos métodos de escalonamento de cada solução e o gerenciamento de recursos, quando há um volume de tarefas em fila de execução. Figura 6. Gráficos da utilização de CPU, memória e rede de cada elemento do grid OAR com 2000 tarefas e 10 executores ativos. O OAR foi a solução mais eficiente, pois executou em menor tempo todas as tarefas, em todos cenários testados, toda via, é a solução que utilizou mais recursos de hardware, conforme os dados apresentados na tabela 1, que encontra-se em anexo ao artigo. Os gráficos da figura 6 e 7, apresentam a utilização dos recursos de CPU, memória RAM e tráfego de rede de cada solução em função do tempo, na execução de 2000 tarefas submetidas a cada grid. Analisando-os, é possível constatar que no OAR, o elemento que possui maior carga de processamento é o Server Node, uma vez que é o servidor de banco de dados do sistema, responsável por armazenar todas as informações relacionadas a execução das tarefas e gerenciamento de recursos do grid. Já para o HTCondor, o elemento com maior carga de processamento é o Submit Machine, devido este ser o responsável por efetuar o agendamento das tarefas submetidas ao grid. Estes aspectos foram igualmente repetidos em todos os cenários testados e podem ser analisados nos demais gráficos em anexo ao artigo. O gráfico apresentado na figura 8, exibe o resultado da submissão de 50 tarefas simultâneas com a seleção de recurso desejado, funcionalidade presente no OAR, a ser executado em 12, 20 e 40 cores de processamento. Na estrutura desenvolvida para os testes, a cada 4 cores, representa um elemento executor, portanto, 12 cores condiz a 3 elementos executores. Observa-se que o melhor desempenho foi obtido pelo OAR

10 Figura 7. Gráficos da utilização de CPU, memória e rede de cada elemento do grid HTCondor com 2000 tarefas e 10 executores ativos. Figura 8. Gráfico de execução do algoritmo com seleção de recurso desejado. comparado ao Grid5000, mas a principal constatação é que quanto maior o recurso desejado, maior será o tempo de execução das tarefas concorrentes, pois o grid só iniciará a execução de uma tarefa, quando houver a disponibilidade do recurso desejado, consequentemente, acrescendo de tempo para o início de execução de cada tarefa. 6. Conclusões Conclui-se que ambas soluções estudas, OAR e HTCondor, desempenham de forma satisfatório o objetivo proposto. Fazem utilização de recursos ociosos, na execução das tarefas submetidas ao sistema, sem a oneração e prejuízos aos elementos que compõe o grid, indo de encontro com uma das premissas de um Grid Computing, portanto, são boas alternativas de implantação em ambientes que necessitam de sistemas com mais recursos computacionais. A diferença de eficiência comprovada, por meio dos resultados dos testes efe-

11 tuados, é diretamente relacionada aos métodos de escalonamento e gerenciamentos dos recursos utilizados por cada grid. O HTCondor mostrou-se mais eficiente na execução de algoritmo em primeira instância. Por sua vez o OAR mostrou-se mais eficiente no gerenciamento da fila de execução de tarefas, e paralelismo da tarefas, igualmente, foi a solução que utilizou mais recursos de hardware dos elementos executores e de rede. Ainda conclui-se que o desempenho na execução de tarefas em um grid, está diretamente relacionado aos requisitos necessários para a execução desta tarefa. Se determinado algoritmo necessite de mais recursos para ser executado, o grid utilizará dos métodos de gerenciamento de recursos para verificar quando haverá a viabilidade de sua execução, característica comprovada com a submissão de tarefas para o Grid5000, onde mesmo sendo uma estrutura que dispõe de mais recursos, apresentou maior tempo de execução, em virtude da concorrência pelos recursos disponíveis com as tarefas que já encontravam-se aguardando na fila de execução do sistema. Referências Aliaga, A. H. M. (2011). Estudo comparativo de técnicas de escalonamento de tarefas dependentes para grades computacionais. PhD thesis, Universidade de São Paulo. Capit, N., Da Costa, G., Georgiou, Y., Huard, G., Martin, C., Mounié, G., Neyron, P., and Richard, O. (2005). A batch scheduler with high level components. In Cluster Computing and the Grid, CCGrid IEEE International Symposium on, volume 2, pages IEEE. CIMENT (2015). Ciment. Disponível em: < Acesso em: maio Dantas, M. A. (2005). Computação distribuída de alto desempenho: redes, clusters e grids computacionais. Axcel books. Dongarra, J., Foster, I., Fox, G., Gropp, W., Kennedy, K., Torczon, L., and White, A. (2003). Sourcebook of parallel computing, volume Morgan Kaufmann Publishers San Francisco. Galois (2015). Galois. Disponível em: < Acesso em: maio Ganglia (2015). Ganglia. Disponível em: < Acesso em: abril Globus (2015). Globus toolkit. Disponível em: < Acesso em: março Grid5000 (2015). Grid5000. Disponível em: < Acesso em: maio HTCondor (2015). Htcondor. Disponível em: < Acesso em: maio IETF (2015). networks Rfc894 - a standard for the transmission of ip datagrams over ethernet Disponível em: < Acesso em: maio

12 Kon, F. and Goldman, A. (2008). Grades computacionais: Conceitos fundamentais e casos concretos. Proceedings of the Tomasz Kowaltowski e Karin Breitman (Org.) Atualizações em Informática, pages OAR (2015). Oar. Disponível em: < Acesso em: março Raman, R., Livny, M., and Solomon, M. (1998). Matchmaking: Distributed resource management for high throughput computing. In High Performance Distributed Computing, Proceedings. The Seventh International Symposium on, pages IEEE. Tanenbaum, A. S. and Steen, M. V. (2007). Princípios e paradigmas. 2 a edição. Zem, J. L. and Brito, S. H. B. Monitoramento distribuído de clusters e grids computacionais utilizando o ganglia. 7. Anexos Tabela 1. Tabela de recursos de hardware consumido por cada solução. Grid Nodes N o Job CPU % RAM (MB) kb/s rec. kb/s env. OAR ,3 466, ,9 HTCondor ,1 382,8 43,7 43,7 OAR ,1 274,7 286,5 HTCondor ,2 396,6 43,6 43,7 OAR , ,1 HTCondor ,2 456, OAR ,2 542,9 153,4 153,1 HTCondor ,1 632, ,9 OAR ,9 343,2 130,1 136 HTCondor ,1 609, ,4 OAR ,2 413,5 251,3 255 HTCondor , ,5 48,7 OAR ,7 829,9 127,9 152,2 HTCondor ,1 949,1 117,7 114,6 OAR ,6 585,7 215,8 217,7 HTCondor ,1 967,8 117,6 116 OAR ,4 976,4 497,3 529,2 HTCondor ,1 1000,9 117,7 114,4

13 Figura 9. Gráficos da utilização de CPU, memória e rede de cada elemento do grid OAR com 500 tarefas e 10 executores ativos. Figura 10. Gráficos da utilização de CPU, memória e rede de cada elemento do grid HTCondor com 500 tarefas e 10 executores ativos.

14 Figura 11. Gráficos da utilização de CPU, memória e rede de cada elemento do grid OAR com 2000 tarefas e 5 executores ativos. Figura 12. Gráficos da utilização de CPU, memória e rede de cada elemento do grid HTCondor com 2000 tarefas e 5 executores ativos.

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

Componente de aplicação. Figura 1 - Elementos funcionais de uma aplicação sendo executados de forma distribuída 11 1 Introdução Recentes avanços em redes de computadores impulsionaram a busca e o desenvolvimento de meios para facilitar e acelerar o desenvolvimento de aplicações em sistemas distribuídos, tornando

Leia mais

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

Tipos de Clusters. Introdução. Introdução 21/03/12 Tipos de Clusters Prof. Msc. André Luiz Nasserala Pires nassserala@gmail.com! Cluster pode ser definido como um sistema onde dois ou mais computadores trabalham de maneira conjunta para realizar processamento

Leia mais

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

Arquitetura de Computadores Paralelos. Introdução Conceitos Básicos Ambientes de Programação Modelos de Programação Paralela Arquitetura de Computadores Paralelos Introdução Conceitos Básicos Ambientes de Programação Modelos de Programação Paralela Por que estudar Computação Paralela e Distribuída? Os computadores sequenciais

Leia mais

Tipos de Sistemas Distribuídos

Tipos de Sistemas Distribuídos (Cluster, Grid, Informação e Pervasivos) Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia

Leia mais

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

DESENVOLVIMENTO DE UM ALGORITMO PARALELO PARA APLICAÇÃO EM CLUSTER DE COMPUTADORES DESENVOLVIMENTO DE UM ALGORITMO PARALELO PARA APLICAÇÃO EM CLUSTER DE COMPUTADORES João Ricardo Kohler Abramoski (PAIC/FUNDAÇÃO ARAUCÁRIA), Sandra Mara Guse Scós Venske (Orientadora), e-mail: ssvenske@unicentro.br

Leia mais

Introdução a Computação em Nuvem

Introdução a Computação em Nuvem Introdução a Computação em Nuvem Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia

Leia mais

Serviços WEB/BD/Armazenamento com suporte a balanceamento e alta disponibilidade

Serviços WEB/BD/Armazenamento com suporte a balanceamento e alta disponibilidade ?? Nuno Fidalgo 21140369? Serviços WEB/BD/Armazenamento com suporte a balanceamento e alta disponibilidade Disponibilidade e Desempenho 2017/18 Curso Engenharia Informática Raspberry Pi 2 O Raspberry PI

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Motivação Aplicações Motivam Possibilita Engenharia Motivação! Aplicações cada vez mais complexas! Qual a técnica mais comum para redução de complexidade? " Modularização Dividir

Leia mais

Introdução a Computação em Nuvem

Introdução a Computação em Nuvem Introdução a Computação em Nuvem Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia

Leia mais

Escalonamento de Aplicações BoT em Ambiente de Nuvem

Escalonamento de Aplicações BoT em Ambiente de Nuvem Escalonamento de Aplicações BoT em Ambiente de Nuvem Maicon Ança dos Santos 1 Fernando Angelin 1 Gerson Geraldo H. Cavalheiro 1 1 Universidade Federal de Pelotas {madsantos,fangelin,gerson.cavalheiro}@inf.ufpel.edu.br

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS CUP Disk Memoey CUP Memoey Disk Network CUP Memoey Disk Introdução aos Sistemas Distribuídos 1 Sumário Evolução Problema/Contexto O que é um Sistema Distribuído? Vantagens e Desvantagens

Leia mais

Caracterização de Sistemas Distribuídos

Caracterização de Sistemas Distribuídos Caracterização de Sistemas Distribuídos Roteiro Conceitos de Hardware Conceitos de Software Classificação de Flynn Classificação baseada no acesso a memória 2 Conceitos de HW Múltiplas CPUs Diferentes

Leia mais

Sistemas Operacionais Aula 3

Sistemas Operacionais Aula 3 Sistemas Operacionais Aula 3 Anderson L. S. Moreira anderson.moreira@recife.ifpe.edu.br http://dase.ifpe.edu.br/~alsm Curso de Análise e Desenvolvimento de Sistemas de Informação Recife - PE O que fazer

Leia mais

Sistemas Operacionais Distribuídos

Sistemas Operacionais Distribuídos Sistemas Operacionais Distribuídos Introdução O uso de redes locais e da Internet está amplamente difundido mesmo para uso doméstico. Mas para que tais recursos físicos sejam aproveitados da melhor forma

Leia mais

Administração de Serviços de Redes. Introdução a Clusters. Prof. Dayvidson Bezerra Contato:

Administração de Serviços de Redes. Introdução a Clusters. Prof. Dayvidson Bezerra Contato: Administração de Serviços de Redes Introdução a Clusters Prof. Dayvidson Bezerra Contato: dayvidsonbezerra@gmail.com Definição Cluster é um termo amplamente utilizado, significa computadores independentes

Leia mais

Data Warehouse ETL. Rodrigo Leite Durães.

Data Warehouse ETL. Rodrigo Leite Durães. Data Warehouse ETL Rodrigo Leite Durães rodrigo_l_d@yahoo.com.br Introdução Um dos desafios da implantação de um DW é a integração dos dados de fontes heterogêneas e complexas, padronizando informações,

Leia mais

SISTEMAS OPERACIONAIS

SISTEMAS OPERACIONAIS SISTEMAS OPERACIONAIS Introdução a Sistemas Operacionais Andreza Leite andreza.leite@univasf.edu.br Plano de Aula Introdução aos Sistemas Operacionais Fundamentação Teórica Evolução Histórica Características

Leia mais

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

Sistema Distribuído. Sistema Distribuído. Aplicações Distribuídas. Conceitos Básicos Sistema Distribuído Conjunto de máquinas (CPU + memória) interligadas em rede. Sistema Distribuído Sistema operacional distribuído trata este conjunto como um único sistema computacional. Estação 1 Estação

Leia mais

BOINC + R: Executando rotinas de

BOINC + R: Executando rotinas de de bioinformática Instituto de Matemática e Estatística Universidade de São Paulo 16 de novemo de 2009 Bioinformática Aplicação de técnicas computacionais e matemáticas para geração, gerenciamento e análise

Leia mais

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

Aluno de Pós-Graduação em Engenharia de Software para Dispositivos Móveis pela UNINTER COMPARAÇÃO DE DESEMPENHO NA PROGRAMAÇÃO PARALELA HÍBRIDA (MPI + OPENMP) NA BUSCA DE TEXTO EM ARQUIVOS 1 COMPARISON OF PERFORMANCE IN HYBRID PARALLEL PROGRAMMING (MPI + OPENMP) IN SEARCH OF TEXT IN FILES

Leia mais

Um Calculador de Capacidade de Computação para Nós de Máquinas Virtuais LAM/MPI

Um Calculador de Capacidade de Computação para Nós de Máquinas Virtuais LAM/MPI Um Calculador de Capacidade de Computação para Nós de Máquinas Virtuais LAM/MPI Diego Luis Kreutz 1 Lucas Mello Schnorr 2 Cleverton Marlon Possani 3 Resumo Este texto apresenta um calculador de capacidade

Leia mais

Nuvem e Virtualização Redes Programáveis

Nuvem e Virtualização Redes Programáveis Nuvem e Virtualização Redes Programáveis Visão Geral da Nuvem A computação em nuvem envolve muitos computadores conectados em uma rede, possibilitando que eles sejam fisicamente localizados em qualquer

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Faculdades SENAC Análise e Desenvolvimento de Sistemas 23 de fevereiro de 2011 Histórico Anos 50 - Sistemas Operacionais tipo Lote Aumentar a capacidade de processamento de programas Usuário ia ao computador

Leia mais

Fundamentos da Informática Aula 03 - Sistemas operacionais: Software em segundo plano Exercícios Professor: Danilo Giacobo

Fundamentos da Informática Aula 03 - Sistemas operacionais: Software em segundo plano Exercícios Professor: Danilo Giacobo Fundamentos da Informática Aula 03 - Sistemas operacionais: Software em segundo plano Exercícios Professor: Danilo Giacobo Múltipla escolha 1. Em que consiste um sistema operacional: a. Um conjunto de

Leia mais

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

30/5/2011. Sistemas computacionais para processamento paralelo e distribuído Arquitetura de Computadores Sistemas computacionais para processamento paralelo e distribuído Prof. Marcos Quinet Universidade Federal Fluminense UFF Pólo Universitário de Rio das Ostras - PURO Processamento

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Caracterização de Faculdades SENAC Análise e Desenvolvimento de Sistemas 24 de fevereiro de 2010 Caracterização de Histórico Anos 50 - Sistemas Operacionais tipo Lote Aumentar a capacidade de processamento

Leia mais

Introdução. capítulo

Introdução. capítulo Introdução capítulo 1 Definição de de um sistema distribuído Um sistema distribuído é um conjunto de computadores independentes que se apresenta a seus usuários como um sistema único e coerente Definição

Leia mais

Matéria: Sistema Computacional - SC. Prof.: Esp.: Patrícia Dias da Silva Peixoto

Matéria: Sistema Computacional - SC. Prof.: Esp.: Patrícia Dias da Silva Peixoto Matéria: Sistema Computacional - SC Prof.: Esp.: Patrícia Dias da Silva Peixoto SISTEMA OPERACIONAL E TIPOS DE SISTEMAS OPERACIONAIS O QUE É UM SISTEMA OPERACIONAL (S.O.). Por mais complexo que possa parecer,

Leia mais

Comparação de ferramentas Grid tipo Desktop Computing Boinc, XtremWeb e Condor

Comparação de ferramentas Grid tipo Desktop Computing Boinc, XtremWeb e Condor Comparação de ferramentas Grid tipo Desktop Computing Boinc, XtremWeb e Condor Resumo Almir Jose da Cruz Universidade Federal do Rio Grande do Sul (UFRGS) Porto Alegre RS Brasil almircruz@ig.com.br Este

Leia mais

Adaptação Dinâmica desistemas Distribuídos p.1/54

Adaptação Dinâmica desistemas Distribuídos p.1/54 Adaptação Dinâmica de Sistemas Distribuídos Francisco José da Silva e Silva Orientadores: Prof. Dr. Markus Endler Prof. Dr. Fabio Kon Instituto de Matemática e Estatística da Universidade de São Paulo

Leia mais

Sistema de Software Distribuído

Sistema de Software Distribuído Sistema de Software Distribuído É composto por uma sequência de instruções, que é interpretada e executada por um processador É composto por instruções concorrentes ou paralelas, que são interpretadas

Leia mais

Programação Paralela e Distribuída

Programação Paralela e Distribuída INE 5645 Programação Paralela e Distribuída Professor: Lau Cheuk Lung (turma A) INE UFSC lau.lung@inf.ufsc.br Conteúdo Programático 1. Introdução 2. Programação Paralela 3. Controle de Concorrência 4.

Leia mais

Introdução aos Sistemas Distribuídos

Introdução aos Sistemas Distribuídos Introdução aos Sistemas Distribuídos Prof. Leonardo Barreto Campos http://sites.google.com/sitew/leonardobcampos 1/29 Sumário Ementa; Bibliografia Calendário Site Introdução Características http://sites.google.com/sitew/leonardobcampos

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Thaís Vasconcelos Batista UFRN DIMAp http://www.dimap.ufrn.br/~thais thais@ufrnet.br Programa do Curso INTRODUÇÃO Conceitos Básicos Sistemas em Rede X Sistemas Distribuídos Necessidade

Leia mais

Carlos Eduardo Batista Centro de Informática - UFPB

Carlos Eduardo Batista Centro de Informática - UFPB Carlos Eduardo Batista Centro de Informática - UFPB bidu@ci.ufpb.br Motivação Arquitetura de computadores modernos Desafios da programação concorrente Definição de concorrência Correr junto Disputa por

Leia mais

Programação Concorrente

Programação Concorrente INE 5410 Programação Concorrente Professor: Lau Cheuk Lung (turma A) INE UFSC lau.lung@inf.ufsc.br Conteúdo Programático 1. 2. Programação Concorrente 3. Sincronização 1. Condição de corrida, região critica

Leia mais

Redes de Computadores

Redes de Computadores Instituto Superior Politécnico de Ciências e Tecnologia Redes de Computadores Prof Pedro Vunge I Semestre de 2017 SUMÁRIO I - Introdução às Redes de Computadores 1.4 Principais componentes de uma rede

Leia mais

BALANCEAMENTO DE CARGA EM SISTEMAS MULTIPROCESSADORES UTILIZANDO O MODELO DE PROGRAMAÇÃO CHARM++ 1

BALANCEAMENTO DE CARGA EM SISTEMAS MULTIPROCESSADORES UTILIZANDO O MODELO DE PROGRAMAÇÃO CHARM++ 1 BALANCEAMENTO DE CARGA EM SISTEMAS MULTIPROCESSADORES UTILIZANDO O MODELO DE PROGRAMAÇÃO CHARM++ 1 Guilherme Henrique Schiefelbein Arruda 2, Edson Luiz Padoin 3. 1 Trabalho desenvolvido no contexto do

Leia mais

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

Apresentação. Ementa da Disciplina. Objetivo da Disciplina. DCA-108 Sistemas Operacionais. Referências Bibliográfica. Referências Bibliográfica DCA-108 Sistemas Operacionais Luiz Affonso Guedes www.dca.ufrn.br/~affonso affonso@dca.ufrn.br Apresentação Disciplina básica do curso de Engenharia de Computação Carga-horária: 60h teóricas Associadas

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Conceito Aplicações Exemplos de sistemas distribuídos Relação dos sistemas distribuídos e as redes Tipos de Sistemas Distribuídos 1 Fonte: https://sites.google.com/site/firsistemasdistribuidos/

Leia mais

1 Introdução. 1.1 Motivação

1 Introdução. 1.1 Motivação 12 1 Introdução 1.1 Motivação O investimento em infraestrutura computacional para suportar picos de processamento de curta duração ou sazonais pode gerar desperdícios financeiros, em razão de na maior

Leia mais

SIST706 Sistemas Distribuídos

SIST706 Sistemas Distribuídos Slide01 Introdução e Conceitos de Sistemas Distribuídos SIST706 Sistemas Distribuídos 2013/1 Prof. Jéfer Benedett Dörr @: prof.jefer@gmail.com profjefer.wordpress.com Sistema Distribuído Definição de Andrew

Leia mais

QFlow: Um Sistema com Garantia de Isolamento e Oferta de Qualidade de Serviço para Redes Virtualizadas

QFlow: Um Sistema com Garantia de Isolamento e Oferta de Qualidade de Serviço para Redes Virtualizadas QFlow: Um Sistema com Garantia de Isolamento e Oferta de Qualidade de Serviço para Redes Virtualizadas Diogo Menezes Ferrazani Mattos Otto Carlos Muniz Bandeira Duarte SBRC 2012 maio/2012 Programa de Engenharia

Leia mais

Características de Sistemas Distribuídos

Características de Sistemas Distribuídos Características de Sistemas Distribuídos Carlos Ferraz cagf@cin.ufpe.br 2002-2003 Carlos A. G. Ferraz 2 Tópicos O conceito de Sistemas Distribuídos Infra-estrutura básica Exemplos Vantagens e desvantagens

Leia mais

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

Backup e Restauração Banco de Dados. Evandro Deliberal Backup e Restauração Banco de Dados Evandro Deliberal evandro@deljoe.com.br https://www.linkedin.com/in/evandrodeliberal Redes de armazenamento: Tecnologias e Virtualização Agenda I. DAS e Introdução a

Leia mais

Computação em Grid e em Nuvem

Computação em Grid e em Nuvem Computação em Grid e em Nuvem Grids Computacionais Características Infraestrutura Produtos Exemplos Computação em Nuvem Características Modelos Infraestrutura Exemplos 1 Grids Computacionais Definição

Leia mais

Sistemas Operacionais (SO)

Sistemas Operacionais (SO) Sistemas Operacionais (SO) Fundamentos Prof. Eduardo Abordagens SO Moderno (importância) Funções básicas Definição Componentes de um SC Objetivos de um SO Serviços de um SO Abstrações Tipos de SO Estudo

Leia mais

Grades Computacionais e Globus. uso de recursos geograficamente dispersos

Grades Computacionais e Globus. uso de recursos geograficamente dispersos Grades Computacionais e Globus uso de recursos geograficamente dispersos o que são grades analogia com rede eletrica: capacidade de ligar-se na rede e obter energia que não se sabe de onde vem capacidade

Leia mais

Curso: Redes de Computadores

Curso: Redes de Computadores Curso: Redes de Computadores Cadeira de Introdução a Sistemas Operacionais. Bibliografia Sistemas Operacionais Modernos Andew S. Tanembaum Sistema Operacionais Abraham Silberchatz, Peter Galvin e Greg

Leia mais

Aula 4 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS. Marcelo Henrique dos Santos

Aula 4 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS. Marcelo Henrique dos Santos Aula 4 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS Marcelo Henrique dos Santos Marcelo Henrique dos Santos Email: Site: marcelosantos@outlook.com www.marcelohsantos.com.br TECNOLOGIA EM JOGOS

Leia mais

Computação Distribuída

Computação Distribuída Aula 1 Introdução aos Sistemas Distribuídos Anos 50 - Sistemas Operacionais tipo Lote Aumentar a capacidade de processamento de programas Usuário ia ao computador Processamento Seqüencial Leitoras de cartões

Leia mais

Sistema Operacionais II. Aula: Virtualização

Sistema Operacionais II. Aula: Virtualização Sistema Operacionais II Aula: Virtualização Objetivos Entender o que é uma máquina virtual. Instalar várias máquinas virtuais em um mesmo computador usando o VirtualBox. Aprender os modos de rede suportados

Leia mais

Servidores. Um Servidor, em redes de computadores, nada mais é que um host da rede capaz de oferecer um determinado serviço a outros hosts da redes.

Servidores. Um Servidor, em redes de computadores, nada mais é que um host da rede capaz de oferecer um determinado serviço a outros hosts da redes. Roitier Campos Gonçalves Iporá, GO, 02 Maio de 2017 Introdução As redes de computadores são uma necessidade da humanidade para o seu desenvolvimento. Entretanto, esse desenvolvimento é relativo, tendo

Leia mais

Gerenciamento de Recursos (LANs) alocação de processos a processadores equilíbrio de carga e oportunismo

Gerenciamento de Recursos (LANs) alocação de processos a processadores equilíbrio de carga e oportunismo Gerenciamento de Recursos (LANs) alocação de processos a processadores equilíbrio de carga e oportunismo Distribuição de Carga carga =? processos a serem executados processos em execução (migração) dados

Leia mais

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

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 04: PROCESSAMENTO PARALELO: MULTICOMPUTADOR ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 04: PROCESSAMENTO PARALELO: MULTICOMPUTADOR Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação MULTICOMPUTADORES

Leia mais

Sistema Operacional. Prof. Leonardo Barreto Campos. 1/30

Sistema Operacional. Prof. Leonardo Barreto Campos.   1/30 Sistema Operacional Prof. Leonardo Barreto Campos 1/30 Sumário Introdução Middleware e SO de Rede SO de Rede Processos e Threads Leitura Complementar Bibliografia 2/30 Introdução A tarefa de qualquer sistema

Leia mais

PLANO DE CONTINGÊNCIA. Coordenação de Tecnologia da Informação - Exercício 2019

PLANO DE CONTINGÊNCIA. Coordenação de Tecnologia da Informação - Exercício 2019 PLANO DE CONTINGÊNCIA Coordenação de Tecnologia da Informação - Exercício 2019 Plano de Contingência Continuidade dos Serviços de Informática Propósito Estabelecer um plano de recuperação após desastres

Leia mais

Unidade III. Unidade III. Existe uma tendência dos sistemas de informação a funcionarem cada vez mais em Intranets e na Internet.

Unidade III. Unidade III. Existe uma tendência dos sistemas de informação a funcionarem cada vez mais em Intranets e na Internet. Unidade III Unidade III 3 GERENCIAMENTO DA SEGURANÇA DA TI Existe uma tendência dos sistemas de informação a funcionarem cada vez mais em Intranets e na Internet. 1 As organizações estão sofrendo, a cada

Leia mais

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

Sistemas Distribuídos. Plano de Curso. Plano de Curso 04/03/12 ! EMENTA: Sistemas Distribuídos Prof. Msc. André Luiz Nasserala Pires nassserala@gmail.com! EMENTA: Plano de Curso! Conceitos. Comunicação entre processos (IPC). Programação de aplicações cliente- servidor. Sincronização

Leia mais

Arquitetura de núcleo distribuído utilizando o sistema de switch central Z9000. Uma Nota Técnica da Dell

Arquitetura de núcleo distribuído utilizando o sistema de switch central Z9000. Uma Nota Técnica da Dell Arquitetura de núcleo distribuído utilizando o sistema de switch central Z9000 Uma Nota Técnica da Dell Esta nota técnica serve apenas para fins informativos e pode conter erros de digitação e erros técnicos.

Leia mais

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

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 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 Planejamento 1. Conceitos e terminologia de segurança quanto a disponibilidade

Leia mais

Tecnólogo em Análise e Desenvolvimento de Sistemas. Sistemas Operacionais (SOP A2)

Tecnólogo em Análise e Desenvolvimento de Sistemas. Sistemas Operacionais (SOP A2) Tecnólogo em Análise e Desenvolvimento de Sistemas Sistemas Operacionais (SOP A2) Visão Geral Referências: Sistemas Operacionais Modernos. Andrew S. Tanenbaum. Editora Pearson. 3ª ed. 2010. Seção: 1.1

Leia mais

Rede de computadores Servidor. Professor Carlos Muniz

Rede de computadores Servidor. Professor Carlos Muniz Rede de computadores Professor Carlos Muniz Definição Em informática, um servidor é um sistema de computação que fornece serviços a uma rede de computadores. Esses serviços podem ser de natureza diversa,

Leia mais

Aula 5 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MULTI PLAYER. Marcelo Henrique dos Santos

Aula 5 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MULTI PLAYER. Marcelo Henrique dos Santos Aula 5 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MULTI PLAYER Marcelo Henrique dos Santos Marcelo Henrique dos Santos Mestrado em Educação (em andamento) MBA em Negócios em Mídias Digitais MBA em Marketing e

Leia mais

AULA 03: PROCESSAMENTO PARALELO: MULTIPROCESSADORES

AULA 03: PROCESSAMENTO PARALELO: MULTIPROCESSADORES ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 03: PROCESSAMENTO PARALELO: MULTIPROCESSADORES Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação MULTIPROCESSADORES

Leia mais

Estudo Comparativo de Técnicas de Escalonamento de Tarefas Dependentes para Grades Computacionais

Estudo Comparativo de Técnicas de Escalonamento de Tarefas Dependentes para Grades Computacionais Estudo Comparativo de Técnicas de Escalonamento de Tarefas Dependentes para Grades Computacionais Candidato Alvaro Henry Mamani Aliaga 1 Orientador Alfredo Goldman Instituto de Matemática e Estatística

Leia mais

TIPOS DE SISTEMAS OPERACIONAIS. Ademar Alves Trindade

TIPOS DE SISTEMAS OPERACIONAIS. Ademar Alves Trindade TIPOS DE SISTEMAS OPERACIONAIS Ademar Alves Trindade INTRODUÇÃO TIPOS DE SISTEMAS OPERACIONAIS Tipos de Sistemas Operacionais Sistemas Monoprogramáveis Monotarefa Sistemas Multiprogramáveis Multitarefa

Leia mais

Quando Distribuir é bom

Quando Distribuir é bom Quando Distribuir? Se não precisar, não distribua. Problema de natureza descentralizada Rede de manufatura com atividades concorrentes de engenharia em locações remotas; Teleconferência; Automação industrial.

Leia mais

SISTEMAS OPERACIONAIS DE REDE

SISTEMAS OPERACIONAIS DE REDE SISTEMAS OPERACIONAIS DE REDE Questão 01 O sistema operacional gerencia o sistema de arquivos, que irá armazenar as informações/arquivos. Para esta tarefa, durante a formatação do disco rígido, são criados

Leia mais

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

InteGrade: um Sistema de Middleware para Computação em Grade Oportunista InteGrade: um Sistema de Middleware para Computação em Grade Oportunista Andrei Goldchleger Dissertação apresentada ao Instituto de Matemática e Estatística da Universidade de São Paulo para obtenção do

Leia mais

PROCESSADORES Unidade de Controle Unidade Aritmética e Lógica efetua memória de alta velocidade registradores Program Counter Instruction Register

PROCESSADORES Unidade de Controle Unidade Aritmética e Lógica efetua memória de alta velocidade registradores Program Counter Instruction Register PROCESSADORES Um computador digital consiste em um sistema interconectado de processadores, memória e dispositivos de entrada e saída. A CPU é o cérebro do computador. Sua função é executar programas armazenados

Leia mais

Virtualizando Sistema Operacional

Virtualizando Sistema Operacional INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA PARAÍBA CAMPUS CAMPINA GRANDE PROFESSOR: RHAVY MAIA GUEDES DATA: 11/05/2011 DISCIPLINA: INFORMÁTICA BÁSICA EXERCÍCIO PRÁTICO Leia com atenção todo o

Leia mais

6 ESCALONAMENTO DE CPU

6 ESCALONAMENTO DE CPU 6 ESCALONAMENTO DE CPU O escalonamento de CPU é ponto chave da multiprogramação. Ela permite que haja mais de um processo em execução ao mesmo tempo. Em ambientes com um único processador, o escalonador

Leia mais

Introdução aos Sistemas Operacionais

Introdução aos Sistemas Operacionais 1 Introdução aos Sistemas Operacionais 1.1 O que é um sistema operacional 1.2 História dos sistemas operacionais 1.3 O zoológico de sistemas operacionais 1.4 Conceitos sobre sistemas operacionais 1.5 Chamadas

Leia mais

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

PAULI FIGUEREDO GOMES USO DE COMPUTAÇÃO EM GRADE EM ORGANIZAÇÕES VIRTUAIS PAULI FIGUEREDO GOMES USO DE COMPUTAÇÃO EM GRADE EM ORGANIZAÇÕES VIRTUAIS FLORIANÓPOLIS 2007 1 UNIVERSIDADE FEDERAL DE SANTA CATARINA CURSO DE SISTEMAS DE INFORMAÇÃO USO DE COMPUTAÇÃO EM GRADE EM ORGANIZAÇÕES

Leia mais

Autor: Lênin Charqueiro. Pelotas,22 de março de 2013

Autor: Lênin Charqueiro. Pelotas,22 de março de 2013 Autor: Lênin Charqueiro. Pelotas,22 de março de 2013 1 1. Definição; 2. Sistemas de instrumentação associados a sistemas computacionais; 3.Instrumentação remota via World Wide Web; 4. Sistemas embarcados

Leia mais

Engenharia de Software.

Engenharia de Software. Engenharia de Software Prof. Raquel Silveira O que é (Rational Unified Process)? É um modelo de processo moderno derivado do trabalho sobre a UML e do Processo Unificado de Desenvolvimento de Software

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br 29 de julho de 2015 1/21 Apresentação da disciplina Objetivo da disciplina

Leia mais

Desenvolvimento de Aplicações Distribuídas

Desenvolvimento de Aplicações Distribuídas Desafios e Características Pontifícia Universidade Católica de Minas Gerais Instituto de Ciências Exatas e Informática DAD (2019/01) Tópicos Apresentação da disciplina Introdução Desafios e características

Leia mais

Aula 2. Prof: Carlos Eduardo de Carvalho Dantas

Aula 2. Prof: Carlos Eduardo de Carvalho Dantas Sistemas Operacionais Aula 2 Prof: Carlos Eduardo de Carvalho Dantas (carloseduardoxpto@gmail.com) http://carloseduardoxp.wordpress.com As três coisas mais difíceis no mundo: guardar segredo, perdoar uma

Leia mais

Aula 1 Conceitos Básicos

Aula 1 Conceitos Básicos Aula 1 Conceitos Básicos Redes e Comunicação de Dados Prof. Mayk Choji UniSALESIANO Araçatuba 6 de agosto de 2016 Sumário 1. Usos de Redes de Computadores 2. O que é a Internet? 3. A Borda da Rede 4. O

Leia mais

OpenMP: Variáveis de Ambiente

OpenMP: Variáveis de Ambiente Treinamento OpenMP C/C++ 1 TREINAMENTO OpenMP C/C++ Módulo 1 Computação de Alto Desempenho Módulo 2 OpenMP: Construtores Paralelos Módulo 3 OpenMP: Diretivas de sincronização Módulo 4 OpenMP: Funções de

Leia mais

QEEF-G: Execução Paralela Adaptativa de Consultas Iterativas

QEEF-G: Execução Paralela Adaptativa de Consultas Iterativas Vinícius Fontes Vieira da Silva QEEF-G: Execução Paralela Adaptativa de Consultas Iterativas Dissertação de Mestrado Dissertação apresentada ao programa de Pósgraduação em Informática do Departamento de

Leia mais

Sistemas Operacionais. Aula 1

Sistemas Operacionais. Aula 1 Faculdade Dom Bosco de Porto Alegre Bacharelado em Sistemas de Informação Sistemas Operacionais Aula 1 Prof. Filipo Mór www.filipomor.com 2018/II Capítulo 1 Introdução aos Sistemas Operacionais Esta aula

Leia mais

Redes de Computadores. Fundamentos de Sistemas Operacionais - 2º Período

Redes de Computadores. Fundamentos de Sistemas Operacionais - 2º Período Redes de Computadores Fundamentos de Sistemas Operacionais - 2º Período PARTE III: GERÊNCIA DE RECURSOS SUMÁRIO 8. GERÊNCIA DO PROCESSADOR: 8.1 Introdução; 8.2 Funções Básicas; 8.3 Critérios de Escalonamento;

Leia mais

Estruturas básicas de redes Internet Padronização e Protocolos

Estruturas básicas de redes Internet Padronização e Protocolos Estruturas básicas de redes Internet Padronização e Protocolos Universidade Católica de Pelotas Cursos de Engenharia da Computação Disciplina: Rede Computadores I 2 Agenda Estruturas básicas de redes A

Leia mais

Redes de Computadores. Fundamentos de Sistemas Operacionais - 2º Período

Redes de Computadores. Fundamentos de Sistemas Operacionais - 2º Período Redes de Computadores Fundamentos de Sistemas Operacionais - 2º Período PARTE I: CONCEITOS BÁSICOS SUMÁRIO 1. VISÃO GERAL: 1.1 Introdução; 1.2 Funções Básicas; 1.3 Máquina de Camadas; 1.5 Tipos de Sistemas

Leia mais

ARQUITETURA DE SISTEMAS OPERACIONAIS. VISÃO GERAL DE UM SISTEMA OPERACIONAL Prof. André Luís Alves E. M. DR. LEANDRO FRANCESCHINI

ARQUITETURA DE SISTEMAS OPERACIONAIS. VISÃO GERAL DE UM SISTEMA OPERACIONAL Prof. André Luís Alves E. M. DR. LEANDRO FRANCESCHINI ARQUITETURA DE SISTEMAS OPERACIONAIS VISÃO GERAL DE UM SISTEMA OPERACIONAL Prof. André Luís Alves E. M. DR. LEANDRO FRANCESCHINI INTRODUÇÃO Programas computacionais (ou software) constituem o elo entre

Leia mais

Estrutura do SO. Prof. Paulo Cesar F. de Oliveira, BSc, PhD

Estrutura do SO. Prof. Paulo Cesar F. de Oliveira, BSc, PhD Estrutura do SO Prof. Paulo Cesar F. de Oliveira, BSc, PhD 1 Seção 1.1 Introdução 2 Usuários Aplicações Utilitários Linguagem de Comandos Núcleo do Sistema ou kernel Rotinas do Sistema Operacional Hardware

Leia mais

Avanços e Perspectivas do Projeto Integrade na UFMA

Avanços e Perspectivas do Projeto Integrade na UFMA Avanços e Perspectivas do Projeto Integrade na UFMA Francisco José da Silva e Silva Universidade Federal do Maranhão - UFMA Departamento de Informática Laboratório de Sistemas Distribuídos - LSD Agosto

Leia mais

Material baseado nos slides de: Marcos José Santana Regina Helena Carlucci Santana

Material baseado nos slides de: Marcos José Santana Regina Helena Carlucci Santana Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação SSC643 Avaliaçãode Desempenhode Sistemas Computacionais Aula 5 Sarita Mazzini Bruschi

Leia mais

Arquiteturas para SGBD. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

Arquiteturas para SGBD. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Arquiteturas para SGBD Laboratório de Bases de Dados Arquitetura Centralizada Terminal responsável pela exibição dos resultados sem capacidade de processamento Computador central (mainframe) responsável

Leia mais

MEU SISTEMA ESTÁ LENTO! ENTENDA AS POSSÍVEIS CAUSAS DESTE PROBLEMA

MEU SISTEMA ESTÁ LENTO! ENTENDA AS POSSÍVEIS CAUSAS DESTE PROBLEMA MEU SISTEMA ESTÁ LENTO! ENTENDA AS POSSÍVEIS CAUSAS DESTE PROBLEMA VOCÊ SABIA? Algumas vezes temos uma lentidão ao utilizar o Shop Control 9 e o primeiro culpado é sempre o sistema. Mas ao tratarmos dessa

Leia mais

Sistemas Operacionais. Introdução

Sistemas Operacionais. Introdução Sistemas Operacionais Introdução Introdução Componentes de um sistema computacional: Hardware Recursos básicos (memória, dispositivos de E/S, CPU); Sistema Operacional: Controla e coordena o uso do hardware

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Processos Gustavo Reis gustavo.reis@ifsudestemg.edu.br 1 - Processos Conceito originado do campos de sistemas operacionais no qual, em geral, são definidos como programas em execução

Leia mais