COMPUTAÇÃO PARALELA E DISTRIBUÍDA
|
|
|
- Bernardo Lopes Sequeira
- 9 Há anos
- Visualizações:
Transcrição
1 COMPUTAÇÃO PARALELA E DISTRIBUÍDA Aluno: Alessandro Faletti Orientadora: Noemi Rodriguez Introdução O objetivo inicial no projeto era aplicar a possibilidade de processamento em paralelo no sistema CSBase da Tecgraf. No entanto, percebemos que seria necessário um estudo anterior sobre programação paralela em ambientes de memória distribuída, e acabamos redirecionando o projeto para o estudo de programação paralela no ambiente de memória distribuída provido pelo serviço Amazon Elastic Compute Cloud (AmazonEC2) que disponibiliza capacidade computacional redimensionável na nuvem como um serviço web. Softwares SO: Linux Fedora 21 AmazonEC2 Metodologia Antes de começarmos com a implementação direta do processamento paralelo no sistema CSBase da Tecgraf, começamos com um estudo de como funcionam os sistemas que utilizam a programação paralela. Para isso estudamos o livro Parallel Programming in C with MPI and OpenMP de Michael J. Quinn. Desta forma fizemos um estudo sobre a biblioteca MPI (Message-Passing Interface), onde seu principal objetivo é a troca de mensagens entre dois ou mais processos. Utilizamos a biblioteca para realizar vários pequenos testes didáticos, programando em linguagem C. A princípio os primeiros programas foram desenvolvidos para serem utilizados em máquinas locais, entretanto no decorrer do estudo, surgiu a ideia de utilizarmos a programação paralela em conjunto com a nuvem (internet). Após o entendimento básico da biblioteca, começamos a estudar a possibilidade de adaptarmos o programa que havíamos feito, para funcionar com várias instancias de máquinas virtuais na nuvem. Para isso, utilizamos do serviço Amazon Elastic Compute Cloud (AmazonEC2) que é um serviço da web que disponibiliza capacidade computacional redimensionável na nuvem. Essa integração foi onde encontramos algumas dificuldades de implementação, pois nos deparamos com o problema de comunicação entre as máquinas e então foi necessário um estudo maior de como funcionam as chaves públicas e privadas no sistema operacional Linux. Para a comunicação entre as máquinas, é utilizado comandos como ssh e scp, porém essa comunicação requer uma autenticação usualmente feita através de senha, isso impossibilita que a transferência de arquivos entre hosts possa ser feita automaticamente, sem intervenções. Logo, para resolver esse problema é possível gerar chaves públicas de acesso e criptografar os dados de maneira direta e assim remover a autenticação por senha. Utilizando as funções fornecidas pela MPI [1], foi possível gerar um script em lua [2] que criasse uma quantidade de máquinas virtuais fornecidas pela Amazon EC2 e que todas essas máquinas pudessem se comunicar e trocar mensagens entre elas. Dessa forma qualquer usuário que tiver um tipo de computação de grande escala para ser realizado, pode-se utilizar desse sistema para obter um resultado bem mais rápido. Entretanto observamos que o
2 programador que desejado desenvolver algo para utilizar o nosso script, ele teria que entender muito do funcionamento da biblioteca e esse não era o nosso objetivo. Portanto demos início a um outro estudo, este era sobre o modelo de programação paralela muito utilizado nos dias atuais, o MapReduce. Este novo modelo computacional é inspirado pelas funções MAP e REDUCE [3] usadas comumente em programação funcional e desta forma eliminaríamos o fato do programar necessitar conhecer sobre o funcionamento de troca de mensagens entre as máquinas. A função MAP, leva uma série de pares (chave / valor) processa cada um e gera zero ou mais (chave / valor) pares de saída. Os tipos de entrada e de saída do mapa podem ser (e geralmente são) diferentes umas das outras. Se o aplicativo está fazendo uma contagem de palavras, a função de mapa iria quebrar a linha em palavras e de saída de um par chave / valor para cada palavra. Cada par de saída deve conter a palavra como a chave e o número de ocorrências dessa palavra na linha como o valor. A função REDUCE pode percorrer os valores que estão associados com a chave e produzir zero ou mais saídas. No exemplo a contagem de palavras, a função toma os valores de entrada, resume-os e gera uma única saída da palavra e a soma final. Assim, utilizando este novo modelo, começamos a implementação de um framework que seu principal objetivo é o gerenciamento de arquivos processados em paralelo na computação elástica da AmazonEC2. Dessa maneira fizemos um script em lua no qual o usuário não precisa se preocupar com a comunicação entre os máquinas que irão funcionar em paralelo, sua única preocupação é desenvolver as funções MAP e REDUCE. O framework é desenvolvido em lua e para a realização de troca de mensagens entre os computadores da AmazonEC2, foi utilizado uma biblioteca de lua, chamada de luasocket, que possibilita o tráfego de informações entre as máquinas pelas portas sockets que a biblioteca gerencia. Com esse pequeno sistema desenvolvido, pode-se processar dados em grande volume, com um tempo de processamento curto, pois todo o trabalho será subdividido para cada máquina escrava que estará localizada na nuvem, desta forma sem a necessidade de ter máquinas físicas à disposição. Entretanto existe um ponto negativo no framework desenvolvido, pois este divide o trabalho para cada máquina de acordo com a quantidade de arquivos de entrada. Portanto para ter uma maior divisão de tarefas e o trabalho ficar bem mais dividido e homogêneo, é necessário que o programador divida a grande quantidade de dados que ele precisa processar em vários arquivos. Uma ideia posterior seria desenvolver uma ferramenta que faça essa divisão de dados em vários arquivos como complemento do framework. Discussões Observamos que para processar poucos dados, o framework possui um desempenho muito ruim se comparado ao processar os mesmos dados em uma máquina individual. Entretanto para grandes volumes de dados, ele se torna extremamente útil. O framework, apesar de simples, é funcional e foi uma grande forma de aprendizado sobre a computação paralela e distribuída.
3 Exemplos da ferramenta utilizando MPI Primeiramente uma imagem de 3 máquinas da amazon em funcionamento, criadas diretamente pelo script desenvolvido em lua. Esta imagem mostra o resultado de uma multiplicação de matrizes utilizando a biblioteca MPI e a Amazon
4 Exemplos da ferramenta utilizando MapReduce Nesta imagem é possível observar 2 máquinas da Amazon criadas pelo framework do MapReduce. Nesta imagem é possível observar um pequeno exemplo para achar amigos em comum entre pessoas. O exemplo pode ser visto com mais detalhes pelo link
5 Conclusões O estudo teórico permitiu uma maior compreensão do uso das funções fornecidas pelas bibliotecas. Foi possível realizar utilizá-las em vários testes iniciais em um ambiente local e após todos os testes feitos com sucessos, é feita a mudança para o ambiente nuvem. Pela sua própria experiência, a curva de aprendizado é não trivial e esse tipo de ferramenta em que foi trabalhado é importante para dar acesso ao potencial de ambientes de computação elástica. A computação paralela é usada hoje com bastante frequência para o processamento de grandes volumes de dados, onde somente um processador levaria muito tempo para conclusão do objetivo. Isso pode ser visto na própria internet, pois há uma enorme quantidade de dados sendo trafegados e a computação de todo o dado é realizado praticamente instantaneamente ao nossos olhos, isso só é possível graças a esse compartilhamento de processamento fornecido pela computação paralela. Referências 1 - Open MPI: Open Source High Performance Computing. Disponível em: Acessado em 10 de agosto de Ierusalimschy, Roberto. Programming in Lua. Roberto Ierusalimschy, What is MapReduce? About MapReduce. Disponível em: 01.ibm.com/software/data/infosphere/hadoop/mapreduce/. Acessado em 20 de janeiro de 2016
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
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: [email protected]
Sistema Computacional
Algoritmos e Lógica de Programação Conceitos Básicos Abstração Reinaldo Gomes [email protected] O que é um? Integração de componentes atuando como uma entidade, com o propósito de processar dados, i.e.
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
Informática Parte 10 Prof. Márcio Hunecke
Escriturário Informática Parte 10 Prof. Márcio Hunecke Informática CONCEITOS DE MAPREDUCE E HDFS/HADOOP/YARN 2.7.4 Big Data O termo Big Data refere-se a um grande conjunto de dados armazenados e baseia-se
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
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: [email protected] Definição Cluster é um termo amplamente utilizado, significa computadores independentes
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
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
Programação de Alto Desempenho - 2. Prof: Carla Osthoff
Programação de Alto Desempenho - 2 Prof: Carla Osthoff E-mail: [email protected] 3- Modelos de programação paralela Shared Memory/Threads Posix Win32 treads OpenMP Message Passing MPI Data Parallel OpenCL/Cuda
Introdução à Programação Aula 01. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação
Introdução à Programação Aula 01 Prof. Max Santana Rolemberg Farias [email protected] Colegiado de Engenharia de Computação QUAL O OBJETIVO DA DISCIPLINA? Objetivo Tornar vocês (alunos) capazes
SISTEMAS OPERACIONAIS
SISTEMAS OPERACIONAIS Introdução a Sistemas Operacionais Andreza Leite [email protected] Plano de Aula Introdução aos Sistemas Operacionais Fundamentação Teórica Evolução Histórica Características
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
Técnicas de Processamento Paralelo na Geração do Fractal de Mandelbrot
Técnicas de Processamento Paralelo na Geração do Fractal de Mandelbrot Bruno Pereira dos Santos Dany Sanchez Dominguez Esbel Tomás Evalero Orellana Universidade Estadual de Santa Cruz Roteiro Breve introdução
Vamos fazer um pequeno experimento
1 Vamos fazer um pequeno experimento Dividam-se em dois grupos: Mestre Escravo Projeto de Sistemas Distribuídos Comunicação entre Processos Prof. Msc. Marcelo Iury de Sousa Oliveira [email protected]
AULA 06: PROGRAMAÇÃO EM MÁQUINAS PARALELAS
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 06: PROGRAMAÇÃO EM MÁQUINAS PARALELAS Prof. Max Santana Rolemberg Farias [email protected] Colegiado de Engenharia de Computação PROGRAMAÇÃO PARALELA
3. Linguagem de Programação C
Introdução à Computação I IBM1006 3. Linguagem de Programação C Prof. Renato Tinós Departamento de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3. Linguagem de programação C 3.1. Conceitos
INFORMÁTICA: Informação automática
INTRODUÇÃO INFORMÁTICA: Informação automática Definição: é a ciência que estuda o tratamento automático e racional da informação (encarregada pelo estudo e desenvolvimento de máquinas e métodos para processar
Introdução OpenMP. Nielsen Castelo Damasceno
Introdução OpenMP Nielsen Castelo Damasceno Computação de auto desempenho Processamento Paralelo Memória Distribuída e Compartilhada Modelo de programação OpenMP Métricas de Desempenho Computação de auto
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,
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 02: INTRODUÇÃO
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 02: INTRODUÇÃO Prof. Max Santana Rolemberg Farias [email protected] Colegiado de Engenharia de Computação DO QUE É COMPOSTO UM SISTEMA COMPUTACIONAL?
Computação em nuvem (Cloud Computing)
Computação em nuvem (Cloud Computing) Disciplina: Gestão da Tecnologia de Sistemas Professor: Thiago Silva Prates Computação em nuvem O termo computação em nuvem refere-se a modelo de capacitação na qual
Introdução a Sistemas Operacionais. Adão de Melo Neto
Introdução a Sistemas Operacionais Adão de Melo Neto 41 Definição de SO Sistema Operacional É um conjunto de rotinas (programa) executado pelo processador que controla o funcionamento do computador como
Introdução à Ciência da Computação
1 Universidade Federal Fluminense Campus de Rio das Ostras Curso de Ciência da Computação Introdução à Ciência da Computação Professor: Leandro Soares de Sousa e-mail: [email protected] site:
Paralelização de Algoritmos de CFD em Clusters Multi-Core MC7. Escola de Verão Arquiteturas Multi-Core
RSS-Verão-01/08 p.1/36 Paralelização de Algoritmos de CFD em Clusters Multi-Core MC7 Escola de Verão 2008 Arquiteturas Multi-Core Renato S. Silva LNCC - MCT Janeiro de 2008 RSS-Verão-01/08 p.2/36 Objetivo:
A CASA DO SIMULADO DESAFIO QUESTÕES MINISSIMULADO 122/360
1 DEMAIS SIMULADOS NO LINK ABAIXO CLIQUE AQUI REDE SOCIAL SIMULADO 122/360 INFORMÁTICA INSTRUÇÕES TEMPO: 30 MINUTOS MODALIDADE: CERTO OU ERRADO 30 QUESTÕES CURTA NOSSA PÁGINA MATERIAL LIVRE Este material
QUESTIONÁRIO SOBRE HADOOP LEITURA DO MATERIAL FORNECIDO ALUNO/GRUPO ;
QUESTIONÁRIO SOBRE HADOOP LEITURA DO MATERIAL FORNECIDO ALUNO/GRUPO ; LEIA O MATERIAL ANTES DE FAZER O EXEMPLO DIDÁTICO. AS QUESTÕES ABAIXO PODEM SER RESPONDIDAS, USANDO, PREFERENCIALMENTE, SUA PRÓPRIAS
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
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
Sistemas Operacionais II. Prof. Gleison Batista de Sousa Aula 01
Sistemas Operacionais II Prof. Gleison Batista de Sousa Aula 01 Sistemas Operacionais Livres Prof. Gleison Batista de Sousa Aula 01 Objetivos - Ter conhecimento sobre os diversos módulos que compõem um
Introdução ao CUDA. Material elaborado por Davi Conte.
Introdução ao CUDA Material elaborado por Davi Conte. O objetivo deste material é que o aluno possa iniciar seus conhecimentos em programação paralela, entendendo a diferença da execução de forma sequencial
informação enviada (ex. Facebook) ou que a rede social utilize essa informação para sugerir locais de interesse próximos ao usuário (ex. Foursquare).
1 Introdução 1.1 Contextualização Recentemente, tem-se percebido um movimento de integração de comunidades físicas e comunidades virtuais. As pessoas utilizam cada vez mais a Internet para se comunicar
Algoritmos e Programação
ESTADO DE MATO GROSSO SECRETARIA DE ESTADO DE CIÊNCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITÁRIO DE SINOP FACULDADE DE CIÊNCIAS EXATAS E TECNOLÓGICAS CURSO DE ENGENHARIA ELÉTRICA
Também conhecidos como programas. Conjunto de instruções organizadas que o processador irá executar. É o software que torna o computador útil.
Software 2 Também conhecidos como programas. Conjunto de instruções organizadas que o processador irá executar. É o software que torna o computador útil. Informando quais as instruções e como executar
Conceitos avançados de programação. Módulo 8 Programação e Sistemas de Informação Gestão e Programação de Sistemas Informáticos
Conceitos avançados de programação Módulo 8 Programação e Sistemas de Informação Gestão e Programação de Sistemas Informáticos Objetivos de Aprendizagem e Entender as especificidades da programação em
GoogleDocs. Potencializando o uso de questionários online em pesquisas científicas.
GoogleDocs Potencializando o uso de questionários online em pesquisas científicas. Sumário - Apresentar o conceito de computação nas nuvens; - Apresentar o ambiente do Google Docs; - Apresentar a interface
O que é um sistema distribuído?
Disciplina: Engenharia de Software 4 Bimestre Aula 1: ENGENHARIA DE SOFTWARE DISTRIBUÍDO O que é um sistema distribuído? Segundo Tanenbaum e Steen (2007) um sistema distribuído é uma coleção de computadores
Comparação de eficiência entre OpenCL e CUDA
Aluno: Thiago de Gouveia Nunes Orientador: Prof. Marcel P. Jackowski GPGPU O que é GPGPU? É programação de propósito geral em GPUs. =D GPGPU Existem 2 linguagens populares no mercado para GPGPU, o CUDA
2. Conceitos Básicos. Introdução à Ciência da Computação.
2. Conceitos Básicos Introdução à Ciência da Computação http://www.inf.unioeste.br/~claudia/icc2017.html Sumário Computador Processamento de dados Hardware Software Sistemas Arquivos Modalidades de Computadores
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.
Aplicações com Banco de Dados e Cliente-Servidor
Aplicações com Banco de Dados e Cliente-Servidor Aula #231 EBS 211 POO e UML Prof Luiz Fernando S Coletta luizfsc@tupaunespbr Campus de Tupã Roteiro Rede de computadores; Aplicação cliente/servidor; Sockets
AULA 03: PROCESSAMENTO PARALELO: MULTIPROCESSADORES
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 03: PROCESSAMENTO PARALELO: MULTIPROCESSADORES Prof. Max Santana Rolemberg Farias [email protected] Colegiado de Engenharia de Computação MULTIPROCESSADORES
Introdução à Programação Aula 02. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação
Introdução à Programação Aula 02 Prof. Max Santana Rolemberg Farias [email protected] Colegiado de Engenharia de Computação QUAIS SÃO OS COMPONENTES BÁSICOS DO HW DE UM SISTEMA COMPUTACIONAL?
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
ATIVIDADES PRÁTICAS SUPERVISIONADAS
ATIVIDADES PRÁTICAS SUPERVISIONADAS Tecnologia em Análise e Desenvolvimento de Sistemas 5ª. Série Programação Distribuída A atividade prática supervisionada (ATPS) é um método de ensinoaprendizagem desenvolvido
INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO CONCEITO DE SOFTWARE PROFESSOR CARLOS MUNIZ
INTRODUÇÃO À TECNOLOGIA DA PROFESSOR CARLOS MUNIZ Software é um conjunto de programas de computador, que realiza procedimentos, dotado de regras, documentos e dados associados que fazem parte das operações
Sistemas Operacionais II. Prof. Gleison Batista de Sousa Aula 01
Sistemas Operacionais II Prof. Gleison Batista de Sousa Aula 01 Revisão de SO Linux Prof. Gleison Batista de Sousa Objetivos - Ter conhecimento sobre os diversos módulos que compõem um sistema operacional
Disciplina de Algoritmos e Programação
Disciplina de Algoritmos e Programação Atividades Plano de ensino Conteúdos da disciplina, definição das datas, critérios de avaliação e bibliografias Início da matéria Conceito e definição de algoritmos
Curso online de Fundamentos em Android. Plano de Estudo
Curso online de Fundamentos em Android Plano de Estudo Descrição do programa A Certificação Android ensina como usar as ferramentas necessárias para projetar e implantar aplicativos Android para dispositivos
Tipos de Clusters. Introdução. Introdução 21/03/12
Tipos de Clusters Prof. Msc. André Luiz Nasserala Pires [email protected]! Cluster pode ser definido como um sistema onde dois ou mais computadores trabalham de maneira conjunta para realizar processamento
Projeto Integrador. <Projeto Integrador> Documento Visão. Versão <1.0>
Projeto Integrador Documento Visão Versão Histórico de Revisões Data Versão Descrição Autor
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) Conceitos de Hardware e Software Referências: Arquitetura de Sistemas Operacionais. F. B. Machado, L. P. Maia. Editora
Curso de Bacharelado em Ciência da Computação
Curso de Bacharelado em Ciência da Computação Há um século, riqueza e sucesso vinham para aqueles que produziam e distribuíam mercadorias manufaturadas. Hoje, riqueza e sucesso vêm para aqueles que utilizam
COMPARAÇÃO DE DESEMPENHO ENTRE IMPLEMENTAÇÕES DO ALGORITMO JOGO DA VIDA COM PTHREAD E OPEMMP 1
COMPARAÇÃO DE DESEMPENHO ENTRE IMPLEMENTAÇÕES DO ALGORITMO JOGO DA VIDA COM PTHREAD E OPEMMP 1 Márcia Da Silva 2, Igor Gamste Haugg 3, Eliézer Silveira Prigol 4, Édson L. Padoin 5, Rogério S. M. Martins
MANUTENÇÃO DE COMPUTADORES
MANUTENÇÃO DE COMPUTADORES Professor Marlon Marcon Introdução Alguns pesquisadores consideram STONEHENGE o 1º computador feito pelo homem. Trata-se de um monumento paleolítico construído de pedras de 3
Informática. Cloud Computing e Storage. Professor Márcio Hunecke.
Informática Cloud Computing e Storage Professor Márcio Hunecke www.acasadoconcurseiro.com.br Informática COMPUTAÇÃO EM NUVEM Cloud Computing ou Computação em Nuvem pode ser definido como um modelo no
SSC PROGRAMAÇÃO CONCORRENTE. Aula 06 Modelos de Programação Prof. Jó Ueyama e Julio Cezar Estrella
SSC- 0143 PROGRAMAÇÃO CONCORRENTE Aula 06 Modelos de Programação Prof. Jó Ueyama e Julio Cezar Estrella Créditos Os slides integrantes deste material foram construídos a par4r dos conteúdos relacionados
PROVA 03/07 Segunda-feira (semana que vem)
[email protected] PROVA 03/07 Segunda-feira (semana que vem) SISTEMAS OPERACIONAIS Os sistemas operacionais mais comuns que existem para computadores e que o mercado irá oferecer para você são : Microsoft
Projeto de Algoritmos
Projeto de Algoritmos Introdução aos Sistemas Computacionais Prof. Ernani Viriato de Melo / Reginaldo Costa http://www.ernani.eti.br http://reginaldofazu.blogspot.com 2º Semestre - 2008 Conceitos Básicos
TÍTULO: PROGRAMAÇÃO PARALELA - UMA INTRODUÇÃO AO PARALELISMO COM A OPENMPI
Anais do Conic-Semesp. Volume 1, 2013 - Faculdade Anhanguera de Campinas - Unidade 3. ISSN 2357-8904 TÍTULO: PROGRAMAÇÃO PARALELA - UMA INTRODUÇÃO AO PARALELISMO COM A OPENMPI CATEGORIA: CONCLUÍDO ÁREA:
PROGRAMAÇÃO SERVIDOR PADRÕES MVC E DAO EM SISTEMAS WEB. Prof. Dr. Daniel Caetano
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB PADRÕES MVC E DAO Prof. Dr. Daniel Caetano 2011-2 Visão Geral 1 2 3 4 5 6 7 Padrão de Desenvolvimento? O Conceito de Padrão de Projeto Padrão MVC Persistência MVC Nível
GFM015 Introdução à Computação. Plano de Curso e Introdução. Ilmério Reis da Silva UFU/FACOM
GFM015 Introdução à Computação Plano de Curso e Introdução Ilmério Reis da Silva [email protected] www.facom.ufu.br/~ilmerio/ic UFU/FACOM Plano de Curso Ementa Noções básicas sobre os componentes de
Algoritmos e Programação
ESTADO DE MATO GROSSO SECRETARIA DE ESTADO DE CIÊNCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITÁRIO DE SINOP FACULDADE DE CIÊNCIAS EXATAS E TECNOLÓGICAS Algoritmos e Programação
Conceitos Básicos INTRODUÇÃO À COMPUTAÇÃO E SUAS APLICAÇÕES
FACULDADE DOS GUARARAPES INTRODUÇÃO À COMPUTAÇÃO E SUAS APLICAÇÕES Conceitos Básicos Prof. Rômulo César [email protected] [email protected] www.romulocesar.com.br INTRODUÇÃO
IFSC/Florianópolis - Programação Orientada a Objetos com Java - prof. Herval Daminelli
Programa de computador sequência de comandos ou instruções executados por um computador com a finalidade de produzir um resultado e resolver um problema; Linguagem de programação método para a criação
Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos
Introdução Laboratório de Computação para Ciências Módulo II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Mestrado Profissional
SSC510 Arquitetura de Computadores 1ª AULA
SSC510 Arquitetura de Computadores 1ª AULA REVISÃO DE ORGANIZAÇÃO DE COMPUTADORES Arquitetura X Organização Arquitetura - Atributos de um Sistema Computacional como visto pelo programador, isto é a estrutura
Implementação da Especificação de Tempo Real Java para o EPOS
UNIVERSIDADE FEDERAL DE SANTA CATARINA Curso de Ciências da Computação Implementação da Especificação de Tempo Real Java para o EPOS ANDERSON LUIS ZAPELLO Florianópolis, julho de 2005 ANDERSON LUIS ZAPELLO
Introdução aos Sistemas Operacionais
Introdução aos Sistemas Operacionais Eleri Cardozo FEEC/Unicamp 1 Definição de Sistema Operacional Um sistema operacional é um gerenciador de recursos de hardware ou uma máquina virtual que oferece uma
Prof. Esp. Fabiano Taguchi SOFTWARES
1 ELEMENTOS DE COMPUTADORES Prof. Esp. Fabiano Taguchi [email protected] http://fabianotaguchi.wordpress.com SOFTWARES 2 2 SOFTWARES CONCEITO Conjunto alterável de instruções ordenadas e lógicas
Arquitetura de Computadores
Arquitetura de Computadores 2018.1 Computador O computador é uma máquina que realiza processamento de dados automaticamente. Ela é formada por um hardware e um software. O Engenho Analítico é o primeiro
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
Introdução à Computação
Introdução à Computação Jordana Sarmenghi Salamon [email protected] [email protected] http://inf.ufes.br/~jssalamon Departamento de Informática Universidade Federal do Espírito Santo Agenda
