Impacto do uso da Biblioteca ScaLAPACK no Algoritmo de Análise de Componentes Principais (ACP)
|
|
- Baltazar Ferrão
- 5 Há anos
- Visualizações:
Transcrição
1 Impacto do uso da Biblioteca ScaLAPACK no Algoritmo de Análise de Componentes Principais (ACP) Thiago Valença Silva 1, Edward David Moreno 1, Wanderson Roger Azevedo Dias 2 1 Departamento de Computação Universidade Federal de Sergipe (UFS) São Cristóvão SE Brasil 2 Coordenadoria de Informática Instituto Federal de Sergipe (IFS) Laboratório de Arquiteturas Computacionais e Processamento de Alto Desempenho (LACPAD) Itabaiana SE Brasil {thiagovs23, edwdavid, wradias}@gmail.com Abstract. Using parallel features to hone algorithms is a trend in the computing world. This research analyzed the use of parallel libraries for the refinement of the ACP algorithm. From the results obtained from the executions carried out with ScaLAPACK, it was possible to perceive the importance of the correct use of the parallel resources (software and hardware). Resumo. A utilização de recursos paralelos para aprimorar algoritmos é uma tendência no mundo da computação. Esta pesquisa analisou o uso de bibliotecas paralelas para o aperfeiçoamento do algoritmo ACP. A partir dos resultados obtidos das execuções realizadas com o ScaLAPACK, foi possível perceber a importância da utilização correta dos recursos paralelos (software e hardware). 1. Introdução Atualmente, aplicações como a rede social Facebook e a máquina de busca Google têm a tarefa de retirar informações, em tempo hábil, de bases de dados cada vez maiores. Sendo assim, necessita-se um poder computacional robusto para a execução desta atividade, mas como fazer isso sem aumentar exponencialmente os custos relacionados a criação deste computador? A resposta pode estar na inserção de uma arquitetura paralela em que são utilizados computadores não tão potentes, mas que possam trabalhar em conjunto na execução de uma tarefa, conhecido como cluster heterogêneo. Vários algoritmos necessitam processar uma quantidade considerável de dados, como é o caso da Análise de Componentes Principais (ACP) (Jolliffe, 2002), necessitando de um tempo maior para apresentar resultados. Um dos pontos que atrasam o processamento em uma arquitetura sequencial é que mesmo que não exista uma dependência entre as tarefas, elas são executadas uma após a outra. Assim, buscou-se reunir dados com o propósito de responder de que forma a aplicação de técnicas de desenvolvimento paralelo pode aumentar o desempenho no processo de obtenção de componentes principais. Então, para o desenvolvimento deste trabalho foram utilizadas pesquisas bibliográficas e testes de escalabilidade, sendo estes executados utilizando multiplicação de matrizes e o programa que reproduz o algoritmo de Análise de Componentes Principais. O restante do artigo está organizado da seguinte forma: a Seção 2 apresenta uma breve contextualização sobre a programação paralela, a fim, de ambientar o estudo corrente, nesta seção também explana conceitos sobre Message Passing Interface (MPI), ScaLAPACK e Análise de Componentes Principais (ACP); A Seção 3 apresenta as análises de resultados dos testes realizados e a Seção 4 finaliza com as conclusões e idéias para trabalhos futuros. 2. Programação Paralela Em um cenário onde a indústria não estava conseguindo desenvolver chips que acompanhassem a Lei de Moore, foi necessário haver uma ruptura com o modelo antigo de processadores mono-core. A indústria de 129
2 computação mudou o curso em 2005 quando a Intel [...] anunciou que dali em diante seus computadores de alta performance iriam conter múltiplos processadores ou núcleos. (Asanović, et al., 2006). Em consonância com a citação acima, Pacheco (2011, p.1,2) afirma que a maioria dos produtores de chip (Intel, AMD, ARM e etc), decidiram que o caminho para o rápido aumento de desempenho é na direção do paralelismo. Além disso, ele afirma que essas mudanças revolucionariam também o modo de programar já que os códigos seriais não iriam se adequar magicamente às novas arquiteturas para aumentar o ritmo de processamento. Contudo, antes de 2005 a computação paralela não era tão explorada porque até então o processamento serial fazia bem o seu papel, porém isso começou a não acontecer mais e era necessária uma mudança. A programação paralela surge como solução para este problema, porém foi necessário haver mudanças que vão além da arquitetura. Programas deveriam ser reescritos, agora, para realizar instruções paralelas e não só seriais como eram antigamente. Segundo Rauber & Rünger (2013, p.1) a computação paralela vem sendo bem consolidada ao passar dos anos em simulações de problemas científicos que exigem uma alta performance. Ademais, por causa das mudanças de hardware já citadas, o processamento paralelo tornou-se um campo primordial em técnicas de desenvolvimento de software. Então, subentende-se que cada vez mais a computação paralela deve continuar sendo explorada tanto no meio acadêmico quanto na indústria como resultado da estagnação nos índices de desenvolvimento em processamentos mono-core Message Passing Interface (MPI) De acordo com Rauber & Rünger (2013, p.228) o modelo de envio de mensagens (Message Passing Model) é apropriado para uma arquitetura onde não há memória global, ou seja, a memória está distribuída entre os processadores. Este modelo trabalha enviando mensagens da memória de um processador para a memória de outro. Para isso, instruções de envio e recebimento devem ser realizadas pelos processadores. É interessante destacar que o modelo MPI foi criado para arquiteturas como clusteres, onde a memória está distribuída entre os processadores, além da necessidade de utilização de instruções extras para lidar com a comunicação entre memórias. Mesmo assim espera-se que essas instruções sejam utilizadas de forma a não se sobrepor as comunicações com outras operações em tempo de execução do algoritmo. Conforme Gropp, et. al. (1999), o desafio encontrado para a obtenção de uma interface que pudesse prover paralelismo era a portabilidade, então, a comunidade científica se mobilizou para criar uma biblioteca padrão que pode ser utilizada na maioria dos sistemas paralelos de memória distribuída. Muitas bibliotecas foram criadas, porém a que mais se destacou e a mais utilizada é a Interface de Envio de Mensagens (Message Passing Interface ou MPI). Pode-se dizer que tanto Rauber & Rünger (2013) quanto Gropp, et. al. (1999) concordam sobre a importância da criação de uma biblioteca padrão capaz de fazer a interação entre o desenvolvedor e os recursos paralelos e convergem também sobre a adequação do modelo apresentado com a arquitetura que é utilizada em clusteres ScaLAPACK O MPI traz uma forma do desenvolvedor interagir com arquiteturas de memória distribuída, porém essa interação deve ser feita com alguns cuidados para que o programa não apresente uma performance aquém do esperado. O ScaLAPACK (Blackford, et. al. 1997) possui funções de álgebra linear otimizadas para sistemas de memória distribuída. A biblioteca ScaLAPACK utiliza duas outras bibliotecas para fornecer funções que resolvem problemas de álgebra linear em sistemas de memória distribuída (Pacheco, 1996). A primeira é o LAPACK (Linear Algebra Package) que viabiliza funções para a resolução de problemas de álgebra em sistemas de memória compartilhada. A segunda biblioteca é o BLAS (Basic Linear Algebra Subprogram) que oferece funções operações básicas como multiplicação vetor-matriz, multiplicação entre matrizes, entre outras. 130
3 Por se utilizar do LAPACK e entender suas funções para sistemas de memória distribuída, o ScaLAPACK (Scalable Linear Algebra Package, ou Pacote de Álgebra Linear Escalável) possui portabilidade e a otimização alcançada nas operações faz com que a biblioteca seja bastante utilizada pelo meio acadêmico em processamento de alta performance. De acordo com Quinn (2003, p.211), o ScaLAPACK oferece uma variedade de funções como operações básicas em matrizes e vetores, resolução de sistemas lineares de equações e o cálculo de autovalores e autovetores. Trata-se inegavelmente de uma biblioteca de ampla utilidade em algoritmos comumente utilizados no meio acadêmico, além de ser uma biblioteca gratuita. Pode-se dizer que as funções citadas por Pacheco (1996) e Quinn (2003) podem ser escritas utilizando apenas MPI e que a utilização da biblioteca ScaLAPACK traz algumas vantagens para o programa que contém as funções oferecidas, como: (i) eficiência; (ii) portabilidade e (iii) disponibilidade Análise em Componentes Principais (ACP) A Análise em Componentes Principais é uma técnica que realiza redução dimensional dos dados sem grande perda de informação. Isso é feito eliminando a parte redundante da informação (Araujo, 2009). Então, para encontrar os componentes principais é necessário: (i) padronização dos dados; (ii) cálculo da matriz de correlação; (iii) cálculo dos autovalores e autovetores e (iv) transformada de Hotelling. 3. Resultados Experimentais 3.1. Multiplicação de Matrizes Para a realização dos testes com multiplicação de matrizes foi utilizada uma base de dados numéricos contendo 32,66MB de dados. Os testes foram feitos utilizando matrizes quadradas de dimensão variando entre quadrados perfeitos encontrados de a e número de processos variando entre quadrados perfeitos de 1 a 16. No gráfico da Figura 1, cada ponto representa o tempo de execução da multiplicação em determinado tamanho de matriz e cada reta representa o número de processos que foi utilizado nas execuções. Então, analisando a Figura 1 destacamos que a reta representando as execuções que utilizaram oito processos teve desempenho melhor que as outras retas, porém esse ganho não é significativo. Também é interessante destacar que mesmo que exista um ganho de performance, as retas têm um padrão de crescimento similar fazendo com que não exista uma diferença significante entre a quantidades de processos em execução. Ainda analisando a Figura 1 é possível destacar que a execução do programa com dezesseis processos teve a pior performance. Isso pode ter ocorrido principalmente porque apesar de muitos processos em execução, a arquitetura utilizada nos testes só possui um único processador (core). Por este motivo, a inserção de n processos em uma arquitetura como esta é prejudicial quanto ao desempenho computacional do programa em execução, quando o melhor caso para o uso do ScaLAPACK é quando se tem vários nós. Figura 1. Tempos de execução do algoritmo de multiplicação de matrizes 131
4 Também destacamos que o comportamento do crescimento das retas na Figura 1 é que existe um padrão de crescimento linear levando em consideração que o tamanho das matrizes utilizadas nos testes é sempre 4x menor que a sua subsequente. Por fim, é imprescindível lembrar que os testes representados na Figura 1 foram executados em uma máquina em que só existe um nó de processamento e os processos são organizados em um único processador (core) o que resulta em pequeno ganho ou até mesmo em overhead. Então, espera-se que em uma arquitetura com mais de um nó a computação seja melhor distribuída entre esses nós o que possivelmente resultará em um melhor desempenho na execução do algoritmo Multiplicação de Matrizes com ACP Igualmente para os testes de multipliação de matrizes (conforme Seção 3.1), também foi utilizada uma base de dados numéricos contendo 32,66MB de dados. Os dados de entradas foram lidos como uma matriz em que as linhas representavam as variáveis e as colunas as informações sobre as mesmas. Então, os testes foram feitos utilizando matrizes de entrada com números de linhas alternando entre 2, 4 e 8 e número de colunas alternando em quadrados perfeitos entre e Também alterou-se a quantidade de processos utilizados em cada bloco de testes usando os valores 1, 2, 4, 8 e 16. Os testes foram divididos em três gráficos (a, b e c) apresentados na Figura 2, conforme a quantidade de variáveis que são representadas pelas linhas da matriz de entrada. A Figura 2(a) mostra os resultados obtidos na execução do ACP em uma matriz com apenas duas variáveis, onde cada linha representa o programa sendo executado por diferente número de processos. (a) com 2 variáveis (b) com 4 variáveis (c) com 8 variáveis Figura 2. Tempo de execução da multiplicação de matriz usando ACP Observando a Figura 2(a), percebe-se que quanto maior o número de processos utilizados, pior é a performance do programa. Isso pode parecer não lógico devido ao fato de um maior número de processos organizarem melhor as partes do programa em diferentes nós, porém é necessário perceber que o ambiente onde o programa foi executado possui apenas um nó, ou seja, apenas um processador, então a criação de vários processos nesse caso adiciona complexidade (overhead) à execução sem haver uma compensação. 132
5 Analisando a Figura 2(b), destacamos que execução com 8 e 16 processos em uma matriz com colunas não foi finalizada com sucesso devido a complexidade adicionada pelo aumento das variáveis. A utilização de uma arquitetura em que esses processos sejam divididos entre diferentes nós pode ser uma possível solução para este problema de execução. Também destacamos que o mesmo fato ocorreu quando a execução foi realizada com 8 variáveis (ver Figura 2(c)). No entanto, é interessante destacar a disparidade quando se compara a execução utilizando dois processos com a execução que utiliza dezesseis processos, é visível que o overhead foi causado por causa do acréscimo de complexidade ao aumentar o número de processos criados em uma arquitetura com processador único. Por fim, a Figura 3 mostra a execução do ACP em matrizes com 2, 4 e 8 variáveis utilizando apenas 2 processos que foi constatado como melhor caso. Observando a Figura 3, é perceptível ver o aumento de complexidade quando o número de variáveis é aumentado. É esperado que a execução deste algoritmo em uma arquitetura que contenha vários nós apresente melhores resultados e uma menor disparidade quando comparado os tempos de execução com quantidades de variáveis distintas. Figura 3. Tempo de execução do ACP utilizando 2 processo com 2, 4 e 8 variáveis 3.3. Multiplicação de Matrizes com ACP no Cluster Para a realização das execuções no cluster foram gerados em tempo de execução dados numéricos aleatórios, a plataforma usada foi o cluster Cristal localizado no Departamento de Computação (DComp) da Universidade Federal de Sergipe (UFS). Os dados de entradas foram lidos como uma matriz em que as linhas representavam as variáveis e as colunas as informações sobre as mesmas. Os testes foram feitos utilizando matrizes de entrada com número de linhas alternando entre 2, 4, 8, 16, 32, 64 e 128 e número de colunas alternando em quadrados perfeitos entre 2 a de acordo com a capacidade do hardware de processar esses dados. Além do tamanho da matriz, alterou-se também a quantidade de processos utilizados em cada bloco de testes usando os valores 4, 8, 16 e 32. A Figura 4(a) apresenta parte dos testes executados no cluster Cristal e mostra a quantificação de dados computados no cluster que foi maior que nos testes realizados anteriormente. Pode-se perceber que com 8 variáveis, o cluster conseguiu computar uma matriz com colunas resultando em uma matriz de mais de um bilhão de dados. Além disso, pode-se aumentar o número de variáveis para 512 conseguindo ainda sucesso nas execuções, algo não atingido nas outras execuções. O programa utilizando a biblioteca ScaLAPACK se mostrou mais escalável no cluster. Outro cenário importante para a comparação é o efeito gerado a partir da mudança de quantidade de processos na execução como é mostrado na Figura 4(b). Execuções com 2, 64 e 128 processos também foram executados, mas não apresentaram resultados coesos, ou seja, algumas execuções apresentaram resultado e outros erros. Ainda observa-se na Figura 4(b) que as execuções que utilizaram 4 e 8 processos tiveram um crescimento mais contido em relação às outras configurações. 133
6 (a) com 4 processos (b) com 8 processos Figura 4. Biblioteca ScaLAPACK executando uma matriz no cluster Cristal 4. Conclusões e Trabalhos Futuros O desenvolvimento deste trabalho possibilitou uma análise do uso de ferramentas paralelas, no caso o MPI e o ScaLAPACK, na execução do algoritmo ACP de forma paralela. Ao mesmo tempo o trabalho ampliou a noção de que é necessário um ambiente apropriado para que a execução de códigos paralelos sejam eficientes. De forma geral, foi demonstrado que a utilização de ferramentas paralelas em um ambiente (hardware) que não dá suporte aos recursos necessários, como por exemplo a disponibilidade de vários processadores independentes, estará acrescentando complexidade ao programa e por consequência aumentando o tempo de execução. Então, é válida a idéia do uso do ScaLAPACK como instrumento para aumentar o desempenho de um algoritmo que executa rotinas de álgebra linear, porém é necessário prover recursos suficientes para que todo o potencial da biblioteca possa ser extraído. Portanto, a utilização de técnicas de desenvolvimento paralelo tem o potencial de aumentar o desempenho no processo de obtenção de componentes principais. Dada a necessidade de investigar mais profundamente o tema, sugere-se como trabalhos futuros: (i) configurar um ambiente que atenderá todos os requisitos para explorar o potencial do ScaLAPACK; (ii) execução do ACP em um cluster embarcado; (iii) utilizar outros métodos de cálculo numérico para identificação dos autovalores e dos autovetores, tais como: método das Potências, ou o método de Leverrier. Referências Araujo, W. O. de (2009) Análise de Componentes Principais (PCA). Centro Universitário de Anápolis, Relatório Técnico RT-MSTMA_003-09, Maio, 2009, 12p. Asanović, K.; Bodik, R.; Catanzaro, B. C.; Gebis, J. J.; Husbands, P.; Keutzer, K.; Patterson, D. A.; Plishker, W. L.; Shalf, J.; Williams, S. W. and Yelick, K. A. (2006) The Landscape of Parallel Computing Research: A View from Berkeley. EECS Department, University of California, Berkeley, Technical Report Nº UCB/EECS , December 18, 2006, 56p. Blackford, L. S.; Choi, J.; Cleary, A.; D'Azevedo, E.; Demmel, J.; Dhillon, I.; Dongarra, J.; Hammarling, S.; Henry, G.; Petitet, A.; Stanley, K.; Walker, D. and Whaley, R. C. (1997) ScaLAPACK Users Guide. Series: Software, Environments and Tools. Book Code, 345p. Gropp, W.; Lusk, E.; Skjellum, A. (1999) Using MPI: Portable Parallel Programming with the Message- Passing Interface. Cambridge: MIT Press, 2 nd edition, 350p. Jolliffe, I. T. (2002) Principal Component Analysis, Series: Springer Series in Statistics. New York: Springer, 2 nd edition, 487p. Pacheco, P. S. (2011) An Introduction to Parallel Programming. San Francisco: Elsevier, 1 st edition, 392p. Pacheco, P. S. (1996) Parallel Programming with MPI. San Francisco: Morgan Kaufmann, 1 st edition, 500p. Quinn, M. J. (2003) Parallel Programming in C with MPI and OpenMP. Mc Graw Hill, 1 st edition, 544p. Rauber, T.; Rünger, G. (2013) Parallel Programming for Multicore and Cluster Systems. New York: Springer, 2 nd edition, 529p. 134
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 maisAluno 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 maisUSO DE PARALELISMO DE DADOS PARA MAIOR EFICIÊNCIA DE ALGORITMOS DE PROCESSAMENTO DE IMAGENS
Universidade Federal de Ouro Preto - UFOP Instituto de Ciências Exatas e Biológicas - ICEB Departamento de Computação - DECOM USO DE PARALELISMO DE DADOS PARA MAIOR EFICIÊNCIA DE ALGORITMOS DE PROCESSAMENTO
Leia maisUNIVERSIDADE FEDERAL DO PARÁ PRÓ-REITORIA DE PESQUISA E PÓS-GRADUAÇÃO DIRETORIA DE PESQUISA PROGRAMA INSTITUCIONAL DE BOLSAS DE INICIAÇÃO CIENTÍFICA
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 RELATÓRIO TÉCNICO CIENTÍFICO Período: Outubro/2015 a
Leia maisParalelizaçã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:
Leia maisOpenMP: 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 maisBALANCEAMENTO 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 maisUM ESTUDO COMPARATIVO DE DESEMPENHO UTILIZANDO PROGRAMAÇÃO SEQUENCIAL VS PARALELA APLICADO EM ALGORITMOS GENÉTICOS 1
UM ESTUDO COMPARATIVO DE DESEMPENHO UTILIZANDO PROGRAMAÇÃO SEQUENCIAL VS PARALELA APLICADO EM ALGORITMOS GENÉTICOS 1 Eldair F. Dornelles 2, Henrique A. Richter 3, Miquéias F. M. Trennepohl 4, Taís T. Siqueira
Leia maisIntroduçã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
Leia maisParalelismo em Computadores com Tecnologia Multicore
IFRN - Pau dos Ferros Pau dos Ferros/RN, 25 de fevereiro de 2016 O minicurso Descrição: Para se utilizar os vários núcleos de processamento disponíveis nos computadores atuais de forma eficiente, faz necessário
Leia maisAULA 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 max.santana@univasf.edu.br Colegiado de Engenharia de Computação PROGRAMAÇÃO PARALELA
Leia mais30/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 maisModelo de Programação Paralela
Modelo de Programação Paralela As arquiteturas paralelas e distribuídas possuem muitos detalhes Como especificar uma solução paralela pensando em todos esses detalhes? O que queremos? Eecutar a solução
Leia maisProgramação Concorrente e Paralela
2010.2 Objetivos princípios e técnicas de programação paralela multiprocessadores memória compartilhada troca de mensagens arquiteturas alternativas multicomputadores troca de mensagens obs: Essa troca
Leia maisAnálise empírica de algoritmos de ordenação
Análise empírica de algoritmos de ordenação Mario E. Matiusso Jr. (11028407) Bacharelado em Ciências da Computação Universidade Federal do ABC (UFABC) Santo André, SP Brasil mario3001[a]ig.com.br Resumo:
Leia maisUniversidade Estadual de Mato Grosso do Sul UEMS Curso de Ciência da Computação Disciplina de Algoritmos Paralelos e Distribuídos
Universidade Estadual de Mato Grosso do Sul UEMS Curso de Ciência da Computação Disciplina de Algoritmos Paralelos e Distribuídos Pensando em Paralelo Pensar em paralelo é uma tarefa que exige disciplina
Leia maisde 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
12 1 1.1. Motivações Dentre os tipos de técnicas de Inteligência Artificial existentes, as técnicas de Programação Genética (PG) continuam mudando rapidamente conforme os pesquisadores e profissionais
Leia maisA IMPORTÂNCIA DE THREADS NO DESEMPENHO DE APLICAÇÕES
A IMPORTÂNCIA DE THREADS NO DESEMPENHO DE APLICAÇÕES Euzébio da Costa Silva 1, Victor Pereira Ribeiro 2, Susana Brunoro Costa de Oliveira 3 1 29520-000, euzebioprogramacao@gmail.com 2 29520-000, victor3ifes@gmail.com
Leia maisCOMPARAÇÃ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
Leia maisComputadores e Programação (DCC/UFRJ)
Computadores e Programação (DCC/UFRJ) Aula 3: 1 2 3 Abstrações do Sistema Operacional Memória virtual Abstração que dá a cada processo a ilusão de que ele possui uso exclusivo da memória principal Todo
Leia maisTÍ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:
Leia maisProgramação de Alto Desempenho - 2. Prof: Carla Osthoff
Programação de Alto Desempenho - 2 Prof: Carla Osthoff E-mail: osthoff@lncc.br 3- Modelos de programação paralela Shared Memory/Threads Posix Win32 treads OpenMP Message Passing MPI Data Parallel OpenCL/Cuda
Leia maisComparação entre Abordagens de Paralelização para o Problema do Jogo da Vida
Comparação entre Abordagens de Paralelização para o Problema do Jogo da Vida Daniel Michelon de Carli 1,2, Eduardo Spolaor Mazzanti 1,2,3, Rodrigo Dewes 1, Ronaldo Canofre M. dos Santos 1,3, Valdir Stumm
Leia maisIMPLEMENTAÇÃO E AVALIAÇÃO DE UM MODELO DE MERCADO IMPERFEITO EM COMPUTAÇÃO PARALELA
IMPLEMENTAÇÃO E AVALIAÇÃO DE UM MODELO DE MERCADO IMPERFEITO EM COMPUTAÇÃO PARALELA Ana Luísa de A. Santos, Diego Carvalho, Felipe G. França DEL/UFRJ, COPPE/UFRJ E-mail: analuisa@lps.ufrj.br RESUMO Este
Leia maisPROCESSADORES 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 maisArquitetura de Computadores. Processamento Paralelo
Arquitetura de Computadores Processamento Paralelo 1 Multiprogramação e Multiprocessamento Múltiplas organizações de computadores Single instruction, single data stream - SISD Single instruction, multiple
Leia maisArquitetura de Sistemas Digitais
Universidade Federal do Amazonas Faculdade de Tecnologia Departamento de Eletrônica e Computação Arquitetura de Sistemas Digitais Lucas Cordeiro lucascordeiro@ufam.edu.br Notas de Aula Os slides deste
Leia maisCOMPUTAÇÃO PARALELA E DISTRIBUÍDA
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
Leia maisComplexidade de Tempo e Espaço
Complexidade de Tempo e Espaço Profa. Sheila Morais de Almeida DAINF-UTFPR-PG junho - 2018 Sheila Almeida (DAINF-UTFPR-PG) Complexidade de Tempo e Espaço junho - 2018 1 / 43 Este material é preparado usando
Leia maisProjeto BELIEVe : Andamento de projeto. Junho / 2003
Projeto BELIEVe : Andamento de projeto Junho / 2003 Participantes EFA Angelo Passaro Onofre Felix de Lima Neto (Sgto) Roberto Y. Tanaka Ademar Muraro Jr. Nancy M. Abe Marcos A. Rugierri Franco Antônio
Leia maisTé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
Leia maisSSC PROGRAMAÇÃO CONCORRENTE. Aula 03 Terminologia Geral de Computação Paralela Prof. Jó Ueyama
SSC- 0742 PROGRAMAÇÃO CONCORRENTE Aula 03 Terminologia Geral de Computação Paralela Prof. Jó Ueyama Créditos Os slides integrantes deste material foram construídos a par4r dos conteúdos relacionados às
Leia maisProgramação Paralela e Distribuída
Curso de Informática DCC-IM / UFRJ Programação Paralela e Distribuída Um curso prático Mario J. Júnior Gabriel P. Silva Colaboração: Adriano O. Cruz, Julio S. Aude Ementa Paradigma de Troca de Mensagens
Leia maisArquitetura e Organização de Processadores. Aula 1. Introdução Arquitetura e Organização
Universidade Federal do Rio Grande do Sul Instituto de Informática Programa de Pós-Graduação em Computação Arquitetura e Organização de Processadores Aula 1 Introdução Arquitetura e Organização 1. Arquitetura
Leia maisProcessamento Paralelo
Processamento Paralelo Apresentação do Curso Esbel Tomás Valero Orellana Bacharelado em Ciência da Computação Departamento de Ciências Exatas e Tecnológicas Universidade Estadual de Santa Cruz evalero@uesc.br
Leia maisMonografia de Conclusão do Curso de Graduação em Ciência da Computação. 2
APLICAÇÃO DE BALANCEAMENTO DE CARGA COM CHARM++ NA PARALELIZANDO DE UM SIMULADOR DO MOVIMENTO DA ÁGUA NO SOLO 1 LOAD BALANCING APLICATION WITH CHARM++ IN THE PARALELIZATION OF A WATER MOVEMENT SIMULATOR
Leia maisThe future is parallel but it may not be easy
The future is parallel but it may not be easy Adriano Tabarelli, Alex Morinaga, Caio Silva, Cássia Ferreira, Daniel Santos, Eduardo Apolinário, Hugo Posca, Thiago Batista, Paulo Floriano Universidade de
Leia maisArquiteturas Paralelas
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES Arquiteturas Paralelas Medidas de desempenho Alexandre Amory Edson Moreno Índice 2 1. Introdução 2. Medidas de Desempenho Introdução 3 Aumento de desempenho dos
Leia maisAnálise e Projeto de Algoritmos
Análise e Projeto de Algoritmos Profa. Sheila Morais de Almeida DAINF-UTFPR-PG junho - 2018 Sheila Almeida (DAINF-UTFPR-PG) Análise e Projeto de Algoritmos junho - 2018 1 / 40 Este material é preparado
Leia maisCRIVO QUADRÁTICO: UM ESTUDO DA OBTENÇÃO DE UM QUADRADO PERFEITO
CRIVO QUADRÁTICO: UM ESTUDO DA OBTENÇÃO DE UM QUADRADO PERFEITO Marcelo Figueiredo Terenciani 1 ; Adriana Betânia de Paula Molgora 2 1 Estudante do Curso de Ciência da Computação da UEMS, Unidade Universitária
Leia maisSuporte à Execução Eficiente de Aplicações em Plataformas com Paralelismo Multi-Nível
Suporte à Execução Eficiente de Aplicações em Plataformas com Paralelismo Multi-Nível Vinícius Garcia Pinto Lucas Mello Schnorr Nicolas Maillard Grupo de Processamento Paralelo e Distribuído (GPPD) Instituto
Leia maisMedida de desempenho
Medida de desempenho Aceleração (Speedup) = (Tempo em 1 CPU) / (Tempo em p CPUs) O que devemos comparar? Programa paralelo em 1 CPU? Programa equivalente sequencial? Melhor programa sequencial? Fator de
Leia maisParadigmas de Processamento Paralelo na Resolução do Fractal de Mandelbrot
Paradigmas de Processamento Paralelo na Resolução do Fractal de Mandelbrot Bruno Pereira dos Santos Dany Sanchez Dominguez Universidade Estadual de Santa Cruz Cronograma Introdução Serial vs Processamento
Leia maisParalelismo de dados. (execução de simultaneidade) Tipo de arquitetura paralela SIMD. SIMD (Single Instruction Multiple Data)
Paralelismo de dados (execução de simultaneidade) Em métodos tradicionais de programação (processamento sequencial), uma grande quantidade de dados é processada em um único núcleo de uma CPU, enquanto
Leia maisExemplo de Arquitetura: Cliente/Servidor com Mestre e Escravos. Interface. Fator de speed-up. Speed-up
Exemplo de Arquitetura: Cliente/Servidor com Mestre e s Arquitetura Mestre- Speed-up / Cliente Mestre Prof João Paulo A Almeida (jpalmeida@infufesbr) Cliente 2015/01 - INF02799 Com alguns slides de Parallel
Leia maisAnálise de Desempenho da Paralelização do Problema de Caixeiro Viajante
Análise de Desempenho da Paralelização do Problema de Caixeiro Viajante Gabriel Freytag Guilherme Arruda Rogério S. M. Martins Edson L. Padoin Universidade Regional do Noroeste do Estado do Rio Grande
Leia maisAnálise de algoritmos
Análise de algoritmos SCE-181 Introdução à Ciência da Computação II Alneu Lopes Thiago A. S. Pardo 1 Algoritmo Noção geral: conjunto de instruções que devem ser seguidas para solucionar um determinado
Leia maisAmbientes de computação de alto desempenho no LNCC
Ambientes de computação de alto desempenho no LNCC Roberto Pinto Souto MCTI/LNCC/CSR - CENAPAD-RJ rpsouto@lncc.br 24 de Março de 2014 (Seminário da Pós-graduaçao) 24 de Março de 2014 1 / 78 Roteiro 1 Introdução
Leia maisIntrodução aos Conceitos de Computação Paralela através da estimativa de Pi
Introdução aos Conceitos de Computação Paralela através da estimativa de Pi Diego da Silva Pereira 1 1 Professor de Redes de Computadores IFRN Câmpus Currais Novos. e-mail: diego.pereira@ifrn.edu.br Resumo:
Leia maisPreliminares. Profa. Sheila Morais de Almeida. agosto
Preliminares Profa. Sheila Morais de Almeida DAINF-UTFPR-PG agosto - 2016 Algoritmos Definição - Skiena Algoritmo é a ideia por trás dos programas de computador. É aquilo que permanece igual se o programa
Leia maisComputação de Alto Desempenho Clusters de PCs
RSS-10/03 p.1/31 Computação de Alto Desempenho Clusters de PCs Renato Silva LNCC - MCT Outubro de 2003 RSS-10/03 p.2/31 Renato S. Silva sala: 2a-23 - ramal: 6148 - e-mail: rssr@lncc.br Material: Aulas:
Leia maisBacharelado em Sistemas de Informação Sistemas Operacionais. Prof. Filipo Mór
Bacharelado em Sistemas de Informação Sistemas Operacionais Prof. Filipo Mór WWW.FILIPOMOR.COM - REVISÃO ARQUITETURAS PARALELAS Evolução das Arquiteturas Evolução das Arquiteturas Entrada CPU Saída von
Leia maisPesquisa de Iniciação Científica desenvolvida no Grupo de Pesquisa em Computação Aplicada (GCA) da UNIJUI 2
AMBIENTE DE EXPERIMENTAÇÃO PARA PLATAFORMAS DE INTEGRAÇÃO DE APLICAÇÕES EMPRESARIAIS 1 AN EXPERIMENTAL ENVIRONMENT FOR ENTERPRISE APPLICATIONS INTEGRATION PLATFORMS Matheus Henrique Rehbein 2, Rafael Z.
Leia maisIntroduçã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
Leia mais1.1 Descrição do problema A programação genética (PG) é uma meta-heurística utilizada para gerar programas de computadores, de modo que o computador
1 Introdução 1.1 Descrição do problema A programação genética (PG) é uma meta-heurística utilizada para gerar programas de computadores, de modo que o computador possa resolver problemas de forma automática
Leia maisComputação científica utilizando placas gráficas
Brasília, dezembro de 2008 Universidade de Brasília - Faculdade do Gama Sumário Introdução Sumário Introdução Arquitetura da GPU Sumário Introdução Arquitetura da GPU Modelo de programação Sumário Introdução
Leia maisIntroduçã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 max.santana@univasf.edu.br Colegiado de Engenharia de Computação QUAL O OBJETIVO DA DISCIPLINA? Objetivo Tornar vocês (alunos) capazes
Leia maisCarlos 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 maisBenchmarks. 1. Introdução
Benchmarks 1. Introdução Um Benchmark é um programa de teste de desempenho que analisa as características de processamento e de movimentação de dados de um sistema de computação com o objetivo de medir
Leia maisInstituto Tecnológico de Aeronáutica. Prof. Carlos Henrique Q. Forster Sala 121 IEC. ramal 5981
CCI-36 Computação Gráfica Apresentação Instituto Tecnológico de Aeronáutica Prof. Carlos Henrique Q. Forster Sala 121 IEC VERSÃO 2019 ramal 5981 Tópicos do curso Gráficos vetoriais Imagens Inteface gráfica
Leia maisDefinindo melhor alguns conceitos
Definindo melhor alguns conceitos Concorrência termo mais geral, um programa pode ser constituído por mais de um thread/processo concorrendo por recursos Paralelismo uma aplicação é eecutada por um conjunto
Leia maisParalelismo de dados. (execução de simultaneidade) Tipo de arquitetura paralela SIMD. SIMD (Single Instruction Multiple Data)
Paralelismo de dados (execução de simultaneidade) Em métodos tradicionais de programação (processamento sequencial), uma grande quantidade de dados é processada em um único núcleo de uma CPU, enquanto
Leia maisAplicação de Processamento Paralelo com GPU a Problemas de Escoamento Monofásico em Meios Porosos. Bruno Pereira dos Santos Dany Sanchez Dominguez
Aplicação de Processamento Paralelo com GPU a Problemas de Escoamento Monofásico em Meios Porosos Bruno Pereira dos Santos Dany Sanchez Dominguez 1 Roteiro 1. Introdução 2. Five-Spot Problem 3. Modelagem
Leia maisProcessamento de áudio em tempo real utilizando dispositivos não convencionais:
Processamento de áudio em tempo real utilizando dispositivos não convencionais: Processamento paralelo com Pure Data e GPU. André Jucovsky Bianchi ajb@ime.usp.br Departamento de Ciência da Computação Instituto
Leia maisImplementaçã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
Leia maisAlgoritmos Genéticos em Ambientes Paralelos
Algoritmos Genéticos em Ambientes Paralelos Michele Alves de Freitas Batista Instituto Nacional de Pesquisas Espaciais michele.afreitas@gmail.com Lamartine Nogueira Frutuoso Guimarães Instituto Nacional
Leia maisArquitetura de Microprocessadores
Arquitetura de Computadores UNIDADE 4 Arquitetura de 26-02-2019 Sumário Técnicas de processamento paralelo; Pipeline; Hyper-Threading; Processadores de vários núcleos; O aumento de velocidade de processamento
Leia maisAvaliação de Desempenho
Avaliação de Desempenho Clock do Sistema Cristal de Quartzo envia onda de sinais constantes que são convertidas em sinais digitais 1GHz = 1 bilhão de pulsos Taxa de pulsos = taxa de clock Incremento de
Leia maisINFRAESTRUTURA PARA CLOUD COMPUTING VISANDO INTEROPERABILIDADE E DISPONIBILIDADE. Charles Boulhosa Rodamilans Edson Toshimi Midorikawa
IMPLEMENTAÇÃO DE UMA INFRAESTRUTURA PARA CLOUD COMPUTING VISANDO INTEROPERABILIDADE E DISPONIBILIDADE Charles Boulhosa Rodamilans Edson Toshimi Midorikawa {rodamilans, emidorik}@usp.br AGENDA Introdução
Leia maisUniversidade Federal de Campina Grande Unidade Acadêmica de Sistemas e Computação Curso de Bacharelado em Ciência da Computação.
Universidade Federal de Campina Grande Unidade Acadêmica de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de Computadores I Organização e Arquitetura Básicas
Leia maisPARALELIZAÇÃO DE ALGORITMO DE INSPEÇÃO DE ROTAS UTILIZANDO PERMUTAÇÃO LEXICOGRÁFICA 1
PARALELIZAÇÃO DE ALGORITMO DE INSPEÇÃO DE ROTAS UTILIZANDO PERMUTAÇÃO LEXICOGRÁFICA 1 Jessica De Almeida Berlezi 2, Janiel Ceretta Foletto 3, Edson Luiz Padoin 4, Rogério S. M. Martins 5. 1 Trabalho realizado
Leia maisSERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG
Matriz Curricular FGGCOMP - Bacharelado em Ciência da Computação 0. Disciplinas Obrigatórias FGGCOMP.00 Cálculo I FGGELET.00 - Cálculo I / FGGMATE.00 - Cálculo Diferencial e Integral I FGGCOMP.00 Geometria
Leia maisSERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG
Matriz Curricular FGGCOMP - Bacharelado em Ciência da Computação 0. Disciplinas Obrigatórias FGGCOMP.00 Cálculo I FGGELET.00 - Cálculo I / FGGMATE.00 - Cálculo Diferencial e Integral I FGGCOMP.00 Geometria
Leia maisSERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG
Matriz Curricular FGGCOMP - Bacharelado em Ciência da Computação 0. Disciplinas Obrigatórias FGGCOMP.00 Cálculo I FGGELET.00 - Cálculo I / FGGMATE.00 - Cálculo Diferencial e Integral I FGGCOMP.00 Geometria
Leia maisImplantação e Análise de Desempenho de um Cluster com Processadores ARM e Plataforma Raspberry Pi
UNIVERSIDADE FEDERAL DE SERGIPE CENTRO DE CIÊNCIAS EXATAS E TECNOLOGIA PROGRAMA DE PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO Implantação e Análise de Desempenho de um Cluster com Processadores ARM e Plataforma
Leia maisMonitorando o Consumo Energético de Aplicações Concorrentes com Arduino
Monitorando o Consumo Energético de Aplicações Concorrentes com Arduino Bruno Giacobo Pinto Lucas Mendonça da Silva Xavier Gerson G. H. Cavalheiro Laboratory of Ubiquitous and Parallel Systems Universidade
Leia maisMáquinas mais rápidas do mundo
Máquinas mais rápidas do mundo Jorge Melegati Instituto de Matemática e Estatística Introdução à Computação Paralela e Distribuída melegati@ime.usp.br Junho de 2015 Jorge Melegati (IME) Máquinas mais rápidas
Leia maisArquitecturas Paralelas I Computação Paralela em Larga Escala LESI - 4º Ano. Desenvolvimento de Aplicações Paralelas
Arquitecturas Paralelas I Computação Paralela em Larga Escala LESI - 4º Ano Desenvolvimento de Aplicações Paralelas (gec.di.uminho.pt/lesi/ap10203/aula06aplicaçõespar.pdf) João Luís Ferreira Sobral Departamento
Leia maisIntrodução à Programação Paralela através de Padrões. Denise Stringhini Calebe Bianchini Luciano Silva
Introdução à Programação Paralela através de Padrões Denise Stringhini Calebe Bianchini Luciano Silva Sumário Introdução: conceitos de paralelismo Conceitos básicos sobre padrões de programação paralela
Leia maisSSC0112 Organização de Computadores Digitais I - Turma 2
SSC0112 Organização de Computadores Digitais I - Turma 2 1ª Aula Apresentação e Introdução da disciplina Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Apresentada pelo Prof. Paulo Sergio Lopes de Souza
Leia maisSistema 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 maisSoftwares livres e sua utilização no ensino de engenharia
Softwares livres e sua utilização no ensino de engenharia Ana Flávia Marques Martins, Frederico Ferreira Alvim de Aguiar, Giordano Moyses Temponi, Luciano Rubinger Júnior, Victor Rangel de Carvalho Resumo
Leia maisSumário. Referências utilizadas. Introdução. MAFIA: Merging of Adaptive Finite Intervals. Introdução Visão Geral e Objetivos do MAFIA
Sumário : Merging of Adaptive Finite Intervals Elaine Ribeiro de Faria Análise de Agrupamento de Dados ICMC-USP Dezembro 2010 Introdução Visão Geral e Objetivos do Algoritmo Grid Adaptativo Algoritmo Algoritmo
Leia maisPredição de Utilização de Recursos Computacionais Usando Séries Temporais
Predição de Utilização de Recursos Computacionais Usando Séries Temporais Aluno: Paulo Roberto Pereira da Silva Orientador: Paulo Romero Martins Maciel Coorientador: Jean Carlos Teixeira de Araujo de Garanhuns
Leia maisArquiteturas Paralelas
Arquiteturas Paralelas Arquiteturas Paralelas Graduação em Ciência da Computação Universidade do Vale do Rio dos Sinos Prof. Gerson Cavalheiro Programação Paralela e Distribuída 2006 CC / UNISINOS Classificação
Leia maisSistemas Digitais INE 5406
Universidade Federal de Santa Catarina Centro Tecnológico Departamento de Informática e Estatística Curso de Graduação em Ciências da Computação Sistemas Digitais INE 5406 Aula 10-P Refinamento das especificações
Leia maisIntel Thread Building Blocks (TBB)
Intel Thread Building Blocks (TBB) MCZA020-13 - Programação Paralela Emilio Francesquini e.francesquini@ufabc.edu.br 2019.Q1 Centro de Matemática, Computação e Cognição Universidade Federal do ABC Disclaimer
Leia maisXV ESCOLA REGIONAL DE ALTO DESEMPENHO ERAD 2015
XV ESCOLA REGIONAL DE ALTO DESEMPENHO ERAD 2015 Impacto das Interfaces de Programação Paralela e do Grau de Paralelismo no Consumo Energético de uma Aplicação Thayson R. Karlinski, Arthur F. Lorenzon,
Leia maisProgramaçã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 maisAluno do Curso de Ciência da Computação UNIJUÍ, 3
PROPOSTA DE UM BALANCEADOR DE CARGA PARA REDUÇÃO DE TEMPO DE EXECUÇÃO DE APLICAÇÕES EM AMBIENTES PARALELOS 1 PROPOSAL FOR A LOAD BALANCER TO REDUCE APPLICATION RUNTIME IN PARALLEL ENVIRONMENTS Vinícius
Leia maisProgramaçã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 maisSISTEMAS 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 maisFerramentas de Suporte
Cálculo Numérico Módulo I Prof Reinaldo Haas Como estudar Métodos Numéricos? 2 Uso do método numérico Computador Programa Desenvolver Utilizar Verificar validade dos resultados obtidos 3 Programas para
Leia maisANÁLISE COMPARATIVA ENTRE MODELOS DISTINTOS DE SGBD UTILIZANDO PROCESSAMENTO EM GPU E NOSQL
ANÁLISE COMPARATIVA ENTRE MODELOS DISTINTOS DE SGBD UTILIZANDO PROCESSAMENTO EM GPU E NOSQL José Luiz Bermudez 1 ; Iury Krieger 2 ; Tiago Heineck 3 INTRODUÇÃO Segundo previsões de renomadas empresas de
Leia maisModelos para Concorrência
Modelos para Concorrência Modelos para descrição de concorrência Programa Interdisciplinar de Pós Graduação em Computação Aplicada Universidade do Vale do Rio dos Sinos Gerson Cavalheiro Processamento
Leia maisAvaliação do Tempo de Processamento e Comunicação via Rotinas MPI Assíncronas no Modelo OLAM
Universidade Federal do Pampa 15º Escola Regional de Alto Desempenho/RS Avaliação do Tempo de Processamento e Comunicação via Rotinas MPI Assíncronas no Modelo OLAM Matheus Beniz Bieger - Claudio Schepke
Leia maisUniversidade Federal de Ouro Preto
Outubro de 2012 WSCAD-WIC 2012 - Petrópolis - RJ A parallel simulator for large scale wireless sensor network (1) Universidade Federal de Ouro Preto A parallel simulator for large scale wireless sensor
Leia maisMATRIZ CURRICULAR BACHARELADO EM ENGENHARIA DA COMPUTAÇÃO. 1º Período
MATRIZ CURRICULAR BACHARELADO EM ENGENHARIA DA COMPUTAÇÃO 1º Período Código Disciplina CHT 1 CHP 2 CH Total Pré-requisitos Dados I 40 40 80 - Cálculo I 80-80 - Fundamentos da Computação 40-40 - Fundamentos
Leia maisSSC0611 Arquitetura de Computadores
SSC0611 Arquitetura de Computadores 5ª e 6ª Aulas Revisão de Hierarquia de Memória Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br 1 Memória Memória Todo componente capaz de armazenar bits de informação
Leia mais