• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 164
  • 10
  • 5
  • 4
  • 4
  • 4
  • 4
  • 3
  • 1
  • Tagged with
  • 182
  • 182
  • 98
  • 92
  • 77
  • 46
  • 37
  • 33
  • 30
  • 28
  • 27
  • 26
  • 25
  • 24
  • 21
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
91

Avaliação do desempenho e consumo energético de diferentes interfaces de programação paralela em sistemas embarcados e de propósito geral

Lorenzon, Arthur Francisco January 2014 (has links)
Nos sistemas computacionais atuais, enquanto é necessário explorar a disponibilidade de múltiplos núcleos, também é obrigatório consumir menos energia. Para acelerar o processo de desenvolvimento de aplicações paralelas e o tornar mais transparente ao programador, Interfaces de Programação Paralela (IPPs) são largamente utilizadas. Entretanto, cada IPP implementa diferentes formas para trocar dados usando regiões compartilhadas da memória. Estas regiões são, geralmente, mais distantes do processador do que regiões privadas da memória e, por consequência, possuem maior tempo de acesso e consumo de energia. Ademais, o sistema de memória dos processadores embarcados é diferente em hierarquia, tamanho, tempo de acesso, consumo de energia, etc., quando comparado aos processadores de propósito geral. Assim, considerando o cenário supracitado, com diferentes IPPs sendo utilizadas em sistemas multicore com diferentes requisitos, neste trabalho será mostrado que cada interface possui comportamento diferente em termos de desempenho, consumo de energia e Energy-Delay Product (EDP), e que este comportamento varia de acordo com a característica da aplicação e o processador utilizado (propósito geral ou embarcado). Por exemplo, Pthreads consome 8% menos energia que o melhor caso de OpenMP; 12% menos que MPI-1; e 8% menos que MPI-2, considerando todos os benchmarks no processador Intel Core i7 (propósito geral). Em contrapartida, no processador ARM Cortex-A9 (sistema embarcado), o melhor caso com OpenMP consumiu 2% menos energia que Pthreads; 6% menos que MPI-1; e 15% menos que MPI-2, para o mesmo conjunto de benchmarks. / In current computer systems, while it is necessary to exploit the availability of multiple cores, it is also mandatory to consume less energy. To accelerate the development of parallel applications and to make it more transparent to the programmer, Parallel APIs (Application Programming Interfaces) are widely used. However, each Parallel API implements different ways to exchange data using shared memory regions. These regions are generally more remote than the private ones, and therefore have greater access time and energy consumption. Furthermore, the memory system of embedded processors is different with regard to hierarchy, size, access time, energy consumption, etc., when compared to general purpose processors. Thus, considering the above scenario, with different Parallel APIs being used in multicore systems with different requirements, this work will show that each interface has different behavior in terms of performance, energy consumption and Energy-Delay Product (EDP), and that this behavior varies according to the characteristic of the application and the processor employed (general purpose or embedded). For example, as a result of this work, we have observed that Pthreads consumes 8% less energy than the best case of OpenMP; 12% less than MPI-1; and 8% less than MPI-2, considering all benchmarks on the Intel Core i7 (general purpose). In contrast, in the ARM Cortex-A9 processor (embedded system), the best case with OpenMP consumed 2% less energy than Pthreads; 6% less than MPI-1; and 15% less than MPI-2 for the same benchmarks set.
92

Agentes racionais baseados no modelo belief-desire-intention para o sistema multiagente MASE

Coelho, Cássio Giorgio Couto 15 August 2014 (has links)
Dissertação (mestrado)—Universidade de Brasília, Instituto de Ciências Exatas, Departamento de Ciência da Computação, 2014. / Submitted by Ana Cristina Barbosa da Silva (annabds@hotmail.com) on 2014-12-09T15:23:43Z No. of bitstreams: 1 2014_CassioGiorgioCoutoCoelho.pdf: 6440675 bytes, checksum: 8b5963a4d93a602d979ee7ef3249dccf (MD5) / Approved for entry into archive by Raquel Viana(raquelviana@bce.unb.br) on 2014-12-29T18:43:20Z (GMT) No. of bitstreams: 1 2014_CassioGiorgioCoutoCoelho.pdf: 6440675 bytes, checksum: 8b5963a4d93a602d979ee7ef3249dccf (MD5) / Made available in DSpace on 2014-12-29T18:43:20Z (GMT). No. of bitstreams: 1 2014_CassioGiorgioCoutoCoelho.pdf: 6440675 bytes, checksum: 8b5963a4d93a602d979ee7ef3249dccf (MD5) / MASE, acrônimo para Multi-Agent System for Enviromental Simulation, foi uma aplicação desenvolvida para a investigação da dinâmica do uso e conversão do solo em cenários ambientais, e apresentou bons resultados utilizando o modelo Cerrado-DF. Como forma de aumentar o domínio dessa ferramenta, este trabalho explorou o modelo de cognição baseado em Belief-Desire-Intention por meio do framework JADEX. Para isso, a arquitetura do MASE foi reformulada e seu código foi refatorado, tanto para que os agentes representassem melhor o raciocínio humano quanto para que a aplicação possuísse melhor desempenho de tempo na execução das simulações. A evolução dessas características trouxe o sucessor do MASE, que foi validado nesse trabalho por meio de dois estudos de caso. Os resultados gerados com essa nova proposta foram comparados com os obtidos no MASE, testando assim a exibilidade da ferramenta e a melhoria do desempenho do sistema. ____________________________________________________________________________________ ABSTRACT / MASE, acronym to Multi-Agent System for Enviromental Simulation, was an application developed for land usage and cover change dynamics investigation, using diferent environmental scenarios, and good results with the Cerrado-DF model were obtained with its usage. To increase the domain of MASE, this work explored the Belief-Desire- Intention cognition model using the JADEX framework. This objective was obtained by MASE architecture reformulation, with code refactoring, so the agents could better represent human rationality, as the system time performance could be enhanced. The evolution of this features brought MASE's sucessor: MASE-BDI, which was validated by two case studies. The generated results were compared with the ones obtained in the past with MASE, so the MASE-BDI _exibility could be tested, as performance enhance could be proved as well.
93

Estratégia paralela exata para o alinhamento múlltiplo de sequências biológicas utilizando Unidades de Processamento Gráfico (GPU)

Lima, Daniel Sundfeld 28 August 2012 (has links)
Dissertação (mestrado)—Universidade de Brasília, Instituto de Ciências Exatas, Departamento de Ciência da Computação, 2012. / Submitted by Albânia Cézar de Melo (albania@bce.unb.br) on 2013-04-11T12:42:16Z No. of bitstreams: 1 2012_DanielSundfeldLima.pdf: 2274332 bytes, checksum: 03f64cd52764929edc5ad78619656562 (MD5) / Approved for entry into archive by Guimaraes Jacqueline(jacqueline.guimaraes@bce.unb.br) on 2013-05-20T14:40:19Z (GMT) No. of bitstreams: 1 2012_DanielSundfeldLima.pdf: 2274332 bytes, checksum: 03f64cd52764929edc5ad78619656562 (MD5) / Made available in DSpace on 2013-05-20T14:40:19Z (GMT). No. of bitstreams: 1 2012_DanielSundfeldLima.pdf: 2274332 bytes, checksum: 03f64cd52764929edc5ad78619656562 (MD5) / O alinhamento múltiplo de sequências biológicas é um problema muito importante em Biologia Molecular, pois permite que sejam detectadas similaridades e diferenças entre um conjunto de sequências. Esse problema foi provado NP-Difícil e, por essa razão, geralmente algoritmos heurísticos são usados para resolvê-lo. No entanto, a obtenção da solucão ótima é bastante desejada e, por essa razão, existem alguns algoritmos exatos que solucionam esse problema para um número reduzido de sequências. Dentre esses algoritmos, destaca-se o método exato Carrillo-Lipman, que permite reduzir o espaço de busca utilizando um limite inferior e superior. Mesmo com essa redução, o algoritmo com Carrillo-Lipman executa-se em tempo exponencial. Com o objetivo de acelerar a obtenção de resultados, plataformas computacionais de alto desempenho podem ser utilizadas para resolver o problema do alinhamento múltiplo. Dentre essas plataformas, destacam-se as Unidades de Processamento Gráfico (GPU) devido ao seu potencial para paralelismo massivo e baixo custo. O objetivo dessa dissertação de mestrado é propor e avaliar uma estratégia paralela para execução do algoritmo Carrillo-Lipman em GPU. A nossa estratégia permite a exploração do paralelismo em granularidade na, onde o espaço de busca é percorrido por várias threads em um cubo tridimensional, divido em janelas de processamento que são diagonais projetadas em duas dimensões. Os resultados obtidos com a comparação de conjuntos de 3 sequências reais e sintéticas de diversos tamanhos mostram que speedups de até 8,60x podem ser atingidos com a nossa estratégia. ______________________________________________________________________________ ABSTRACT / Multiple Sequence Alignment is a very important problem in Molecular Biology since it is able to detect similarities and di erences in a set of sequences. This problem has been proven NP-Hard and, for this reason, heuristic algorithms are usually used to solve it. Nevertheless, obtaining the optimal solution is highly desirable and there are indeed some exact algorithms that solve this problemfor a reduced number of sequences. Carrillo-Lipman is a well-known exact algorithmfor the Multiple Sequence Alignment problemthat is able to reduce the search space by using inferior and superior bounds. Even with this reduction, the Carrillo-Lipman algorithm executes in exponential time. High Performance Computing (HPC) Platforms can be used in order to produce results faster. Among the existing HPC platforms, GPUs (Graphics Processing Units) are receiving a lot of attention due to their massive parallelism and low cost. The goal of this MsC dissertation is to propose and evaluate a parallel strategy to execute the Carrillo-Lipman algorithm in GPU. Our strategy explores parallelism at ne granularity, where the search space is a tridimensional cube, divided on processing windows with bidimensional diagonals, explored by multiple threads. The results obtained when comparing several sets of 3 real and synthetic sequences show that speedups of 8.60x can be obtained with our strategy.
94

Modelo híbrido de programação paralela para uma aplicação de elasticidade linear baseada no método dos elementos finitos

Silva, Leonardo Nunes da 07 December 2006 (has links)
Dissertação (mestrado)—Universidade de Brasília, Instituto de Ciências Exatas, Departamento de Ciência da Computação, 2006. / Submitted by Érika Rayanne Carvalho (carvalho.erika@ymail.com) on 2009-10-15T01:45:32Z No. of bitstreams: 1 DissertacaoMestrado Leonardo Nunes da Silva.pdf: 1605735 bytes, checksum: cd1350cb41219363224dc8d8c3d3f2e5 (MD5) / Approved for entry into archive by Guimaraes Jacqueline(jacqueline.guimaraes@bce.unb.br) on 2009-11-24T14:20:22Z (GMT) No. of bitstreams: 1 DissertacaoMestrado Leonardo Nunes da Silva.pdf: 1605735 bytes, checksum: cd1350cb41219363224dc8d8c3d3f2e5 (MD5) / Made available in DSpace on 2009-11-24T14:20:22Z (GMT). No. of bitstreams: 1 DissertacaoMestrado Leonardo Nunes da Silva.pdf: 1605735 bytes, checksum: cd1350cb41219363224dc8d8c3d3f2e5 (MD5) Previous issue date: 2006-12-07 / Na área de processamento paralelo existem dois paradigmas principais de programação: Memória Compartilhada e Troca de Mensagens. Cada um deles é adequado a uma arquitetra de hardware específica. No entanto, existem arquiteturas de multiprocessadores para as quais o mapeamento para um desses paradigmas não é tão simples. Clusters de SMP, por exemplo, são construídos com máquinas de memória compartilhada, conectadas através de uma rede de interconexão. Aplicações para clusters de SMP podem ser programadas para utilizar troca de mensagens entre todos os processadores. Mas existe a possibilidade de um melhor desempenho se utilizado um modelo híbrido de comunicação com troca de informações por memória compartilhada dentro do nó SMP e troca de informações por mensagens entre os nós. Nesse trabalho foi desenvolvido e avaliado um modelo híbrido de programação para uma aplicação na área de engenharia mecânica baseada no método dos elementos finitos. O objetivo desse trabalho é avaliar esse modelo e comparar seu desempenho com uma versão pura, por troca de mensagens, da aplicação. ___________________________________________________________________________________ ABSTRACT / In the area of parallel processing there are two major programming paradigms: Shared Memory and Message Passing. Each of them fits into a specific physical model, but there are multiprocessor architectures whose mapping to one of these paradigms is not so simple. SMP clusters, for example, are built by connecting some shared memory machines through an interconnection network. Applications on SMP clusters can be programmed to use message passing among all processors. However, it’s possible to achieve better performance using a hybrid model with shared memory communication inside SMP nodes and message passing communication between them. In this work, a hybrid model was used to develop an engineering application based on the Finite Element Method in order to evaluate this model and to compare its performance with a pure message passing version of the same application.
95

Caracterização de desempenho de uma aplicação paralela do método dos elementos finitos em ambientes heterogêneos de pcs

Ferreira, Roberta Ribeiro 27 July 2006 (has links)
Dissertação (mestrado)—Universidade de Brasília, Instituto de Ciências Exatas, Departamento de Ciência da Computação, 2006. / Submitted by Kathryn Cardim Araujo (kathryn.cardim@gmail.com) on 2009-11-13T12:07:06Z No. of bitstreams: 1 2006_RobertaRibeiroFerreira.pdf: 1012527 bytes, checksum: 0f8b6c0ad04b7092c4a0d6a3c623f831 (MD5) / Approved for entry into archive by Tania Milca Carvalho Malheiros(tania@bce.unb.br) on 2009-11-13T13:42:12Z (GMT) No. of bitstreams: 1 2006_RobertaRibeiroFerreira.pdf: 1012527 bytes, checksum: 0f8b6c0ad04b7092c4a0d6a3c623f831 (MD5) / Made available in DSpace on 2009-11-13T13:42:12Z (GMT). No. of bitstreams: 1 2006_RobertaRibeiroFerreira.pdf: 1012527 bytes, checksum: 0f8b6c0ad04b7092c4a0d6a3c623f831 (MD5) Previous issue date: 2006-07-27 / Na área das Engenharias muitos problemas complexos de soluções extremamente trabalhosas e normalmente impossíveis de serem resolvidos por métodos analíticos exigem soluções numéricas. O método dos elementos finitos (MEF) é uma abordagem para solução destes problemas encontrados em análise de estruturas, fluídos, eletromagnetismo, modelagem de circuitos integrados, biomédica e transferência de calor que necessitam processamento de alto desempenho e trabalham com grandes volumes de dados. A computação paralela aparece como uma alternativa viável para a obtenção do desempenho necessário para a solução de problemas através do MEF e a utilização de clusters, como alternativa para a obtenção deste desempenho a baixo custo, se comparados a outros sistemas de computação paralela. Contudo, em ambientes heterogêneos, para que o paralelismo seja explorado eficientemente é fundamental uma distribuição balanceada da carga de trabalho. Para isto, se faz necessário o conhecimento detalhado dos custos de execução e comunicação envolvidos no processamento da aplicação paralela, nas diferentes máquinas do ambiente. Este trabalho tem como objetivo caracterizar o desempenho, através de medições de tempo de execução detalhadas, de um código paralelo para um problema de análise estrutural modelado pelo método dos elementos finitos e resolvido pelo método dos gradientes conjugados (MGC), em um ambiente heterogêneo de PCs. Através dos resultados obtidos com as medições detalhadas, foi possível estabelecer um balanceamento de carga empírico para o ambiente heterogêneo, mostrando a viabilidade da utilização deste ambiente para a execução do código paralelo do método dos elementos finitos. _________________________________________________________________________________________ ABSTRACT / There are many complex problems of extremely difficult solutions in engineering area. These complex problems are usually impossible to be resolved for analytic methods and then they demand numeric solutions. The Finite Elements Method (FEM) is an approach for the solution of these problems found in analysis of structures, fluids, electromagnetism, assembling of integrated circuits, biomedical and transfer of heat, that need high performance processing and work with great volumes of data. The parallel computing appears as a viable alternative for obtaining the necessary performance for the solution of problems through the FEM and the use of cluster appears as an alternative for obtaining this performance processing at a low cost, if compared with the other systems of parallel computing. However, in heterogeneous environments, for an efficiently exploration of the parallelism, it is fundamental a balanced distribution of the work load. For this, it is necessary the knowledge of the execution costs and the communication involved in the processing of the parallel application, in the different machines of the environment. This work has as objective to characterize the performance of a parallel code for a problem of structural analysis modeled by the Finite Elements Method and solved by the Conjugated Gradients Method, in a heterogeneous environment. Through the results obtained with the detailed measurements, it was possible to establish an empiric load balancing for the heterogeneous environment, showing the viability of the use of this environment for the execution of the parallel code of the Finite Elements Method.
96

Avaliação de métodos de paralelização automática. / Evaluation of automatic parallelization methods.

Edson Pedro Ferlin 24 March 1997 (has links)
Este trabalho aborda alguns conceitos e definições de processamento paralelo, que são aplicados a paralelização automática, e também às análises e condições para as dependências dos dados, de modo a aplicarmos os métodos de paralelização: Hiperplano, Transformação Unimodular, Alocação de Dados Sem Comunicação e Particionamento & Rotulação. Desta forma, transformamos um programa seqüencial em seu equivalente paralelo. Utilizando-os em um sistema de memória distribuída com comunicação através da passagem de mensagem MPI (Message-Passing Interface), e obtemos algumas métricas para efetuarmos as avaliações/comparações entre os métodos. / This work invoke some concepts and definitions about parallel processing, applicable in the automatic parallelization, and also the analysis and conditions for the data dependence, in order to apply the methods for parallelization: Hyperplane, Unimodular Transformation, Communication-Free Data Allocation and Partitioning & Labeling. On this way, transform a sequential program into an equivalent parallel one. Applying these programs on the distributed-memory system with communication through message-passing MPI (Message-Passing Interface), and we obtain some measurements for the evaluations/comparison between those methods.
97

Heurística paralela para solução do problema de cobertura de rotas em larga escala. / Parallel heuristic for solution of lane covering problem in large scale.

Guilherme Marques Dias 15 April 2013 (has links)
Empresas estão procurando reduzir seus custos e aumentar seu desempenho e competitividade. Neste cenário de redução de custos, a logística colaborativa pode ser uma aliada. Numa rede complexa, onde embarcadores muitas vezes nem sabem da existência de outros embarcadores com demandas complementares, existe um potencial de sinergia e redução de custos através da diminuição de deslocamentos de veículos sem carga, ou seja, deslocamentos para reposicionar os veículos. Visando essa redução, o Problema de Cobertura de Rotas (PCR), que tem como objetivo cobrir rotas no mínimo custo, une as demandas de frete de vários embarcadores e tenta minimizar os deslocamentos sem cargas (reposicionamentos), reduzindo assim o custo total de toda a rede dos embarcadores envolvidos. Esta pesquisa propõe um modelo e uma heurística para resolver, em grande escala através de programação paralela, uma expansão do PCR. / Companies are looking to reduce costs and improve performance and competitiveness. In this cost-cutting scenario, collaborative logistics can be an ally. In a complex network where shippers often do not know of the existence of other shippers with complementary demands, there is potential for synergy and cost savings by reducing unloaded travelling of vehicles, i.e, the distance and time to reposition the vehicles\'. Towards that reduction, the Lane Covering Problem (LCP), which aims to cover at least cost routeslinks the various shippers\' demands of freight and tries to minimize operations without loads (repositioning), thus reducing the total cost of the entire network for involved shippers. This research proposes a model and an heuristic to solve, in large-scale through parallel programming, an expansion of the PCR.
98

Implementação de framework computacional de paralelização híbrida do Moving Particle Semi-implicit Method para modelagem de fluidos incompressíveis. / Implementation of framework for hybrid parallel computing of the Moving Particle Semi-Implicit Method for incompressible fluids modeling.

Davi Teodoro Fernandes 04 June 2013 (has links)
O Tanque de Provas Numérico (TPN) é um laboratório pioneiro em hidrodinâmica aplicada e fruto de uma colaboração entre a indústria brasileira de petróleo (PETROBRAS S.A.) e as principais instituições de pesquisa do país. Seu principal objetivo é atuar como parceiro da indústria offshore e de petróleo, colaborando para a obtenção da autossuficiência da produção nacional de petróleo como uma poderosa ferramenta para projeto e análise de sistemas flutuantes de produção de óleo e gás. O coração do TPN é um cluster de computadores SMP que é hoje um dos maiores agrupamentos do Brasil para fins de pesquisa. Um dos focos de atenção do TPN é a aplicação do Moving Particles Semi-implicit Method (MPS) na exploração de soluções para muitos problemas de Engenharia. Por trabalhar sem a necessidade do uso de malhas (método tradicional Euleriano), o método tem diversas aplicações na simulação de corpos flutuantes e na hidrodinâmica aplicada, sendo atualmente utilizado para realização de estudos sobre a influência do movimento de ondas em navios; simulações de fenômenos que envolvem fragmentações; superfícies livres; grandes deformações; dinâmica de fluidos em condições extremas, como é o caso em processos prospecção do petróleo onde muitas vezes é difícil e economicamente inviável fazer ensaios físicos. Devido ao grande número de partículas utilizadas na simulação de sistemas complexos pelo método MPS, é necessário aproveitar de forma eficiente os recursos computacionais disponíveis para a análise de modelos com o refinamento adequado às aplicações práticas. Com tera-FLOPS disponíveis na rede cluster do TPN para modelagem computacional, há uma grande necessidade de uma solução computacional paralela altamente escalonável que, além disto, seja fácil de manutenção e extensibilidade. Dentro desta linha de pesquisa, foi desenvolvida uma solução com essas características através do emprego de modernas técnicas de engenharia de software. / The Numerical Offshore Tank (TPN) is a pioneer laboratory in applied hydrodynamics and result of collaboration between the Brazilian oil (Petrobras SA) and the major research institutions in the country. Its main purpose is to act as a partner of industry and offshore oil, contributing to the achievement of self-sufficiency of domestic oil production as a powerful tool for design and analysis of floating production systems for oil and gas. The heart of TPN is a cluster of SMP computers that is now one of the largest groupings of Brazil for research purposes. One focus of attention of TPN is the application of Moving Particles Semi-implicit Method (MPS) in exploring solutions to many engineering problems. By working without the use of mesh (Eulerian traditional method), the method has several applications in the simulation of floating bodies and applied hydrodynamics, currently being used for studies on the influence of the movement of ships in waves; simulations of phenomena involving fragmentation; free surfaces, large deformations; fluid dynamics in extreme conditions, as is the case in processes where petroleum exploration is often difficult and uneconomical to do physical tests. Due to the high number of particles used in the simulation of complex systems by the MPS method, it is necessary to efficiently take advantage of the computational resources available for the analysis of models with the refinement suitable for practical applications. With tera-FLOPS available in the TPN network cluster for computational modeling, there is a great need for a parallel highly scalable solution which, moreover, must be easy maintenance and extensibility. Within this line of research, we developed a solution with these characteristics through the use of modern software engineering techniques.
99

Avaliação do desempenho e consumo energético de diferentes interfaces de programação paralela em sistemas embarcados e de propósito geral

Lorenzon, Arthur Francisco January 2014 (has links)
Nos sistemas computacionais atuais, enquanto é necessário explorar a disponibilidade de múltiplos núcleos, também é obrigatório consumir menos energia. Para acelerar o processo de desenvolvimento de aplicações paralelas e o tornar mais transparente ao programador, Interfaces de Programação Paralela (IPPs) são largamente utilizadas. Entretanto, cada IPP implementa diferentes formas para trocar dados usando regiões compartilhadas da memória. Estas regiões são, geralmente, mais distantes do processador do que regiões privadas da memória e, por consequência, possuem maior tempo de acesso e consumo de energia. Ademais, o sistema de memória dos processadores embarcados é diferente em hierarquia, tamanho, tempo de acesso, consumo de energia, etc., quando comparado aos processadores de propósito geral. Assim, considerando o cenário supracitado, com diferentes IPPs sendo utilizadas em sistemas multicore com diferentes requisitos, neste trabalho será mostrado que cada interface possui comportamento diferente em termos de desempenho, consumo de energia e Energy-Delay Product (EDP), e que este comportamento varia de acordo com a característica da aplicação e o processador utilizado (propósito geral ou embarcado). Por exemplo, Pthreads consome 8% menos energia que o melhor caso de OpenMP; 12% menos que MPI-1; e 8% menos que MPI-2, considerando todos os benchmarks no processador Intel Core i7 (propósito geral). Em contrapartida, no processador ARM Cortex-A9 (sistema embarcado), o melhor caso com OpenMP consumiu 2% menos energia que Pthreads; 6% menos que MPI-1; e 15% menos que MPI-2, para o mesmo conjunto de benchmarks. / In current computer systems, while it is necessary to exploit the availability of multiple cores, it is also mandatory to consume less energy. To accelerate the development of parallel applications and to make it more transparent to the programmer, Parallel APIs (Application Programming Interfaces) are widely used. However, each Parallel API implements different ways to exchange data using shared memory regions. These regions are generally more remote than the private ones, and therefore have greater access time and energy consumption. Furthermore, the memory system of embedded processors is different with regard to hierarchy, size, access time, energy consumption, etc., when compared to general purpose processors. Thus, considering the above scenario, with different Parallel APIs being used in multicore systems with different requirements, this work will show that each interface has different behavior in terms of performance, energy consumption and Energy-Delay Product (EDP), and that this behavior varies according to the characteristic of the application and the processor employed (general purpose or embedded). For example, as a result of this work, we have observed that Pthreads consumes 8% less energy than the best case of OpenMP; 12% less than MPI-1; and 8% less than MPI-2, considering all benchmarks on the Intel Core i7 (general purpose). In contrast, in the ARM Cortex-A9 processor (embedded system), the best case with OpenMP consumed 2% less energy than Pthreads; 6% less than MPI-1; and 15% less than MPI-2 for the same benchmarks set.
100

Otimizando sistemas intensivos em E/S através de programação concorrente

ARAÚJO, Saulo Medeiros de 06 April 2015 (has links)
Submitted by Isaac Francisco de Souza Dias (isaac.souzadias@ufpe.br) on 2015-10-21T17:31:57Z No. of bitstreams: 2 license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5) Dissertação de Mestrado.pdf: 1668983 bytes, checksum: 98951747828368f07a28ba2b442a63ef (MD5) / Made available in DSpace on 2015-10-21T17:31:57Z (GMT). No. of bitstreams: 2 license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5) Dissertação de Mestrado.pdf: 1668983 bytes, checksum: 98951747828368f07a28ba2b442a63ef (MD5) Previous issue date: 2015-04-06 / ORMs (Object-Relational Mappers) são bastante populares porque eles reduzem o esforço de desenvolvimento de camadas de acesso a dados ao permitir, entre outras coisas, que sistemas manipulem objetos transientes e persistentes de maneira similar. Em particular, ORMs permitem que sistemas naveguem por objetos de ambos os tipos exatamente da mesma maneira. Infelizmente, entretanto, navegar por objetos persistentes é muito mais lento do que navegar por objetos transientes. Para atenuar este problema, ORMs pré-carregam objetos executando consultas SQL (Structured Query Language) que, no lugar de carregar os atributos de um único objeto, tal como ocorre quando objetos são carregados sob demanda, carregam os atributos de vários objetos. Em muitos casos, estas consultas podem ser executadas concorrentemente. Entretanto, a maioria dos ORMs executa consultas apenas sequencialmente. Esta pesquisa visa aumentar o desempenho de sistemas baseados em ORMs. Para tanto, ela define uma DSL (Domain-Specific Language) de especificação de navegações por objetos chamada Litoral. Também integra esta pesquisa o projeto e a implementação de um interpretador de especificações Litoral. O interpretador navega por objetos transientes (aqueles que existem apenas na memória primária) e persistentes (aqueles que armazenados em um banco de dados relacional) e pré-carrega os do segundo tipo executando consultas sequencialmente ou concorrentemente. A estratégia desta pesquisa foi avaliada com os benchmarks sintéticos Emeio e OO7, desenvolvidos, respectivamente, no contexto desta pesquisa e por terceiros. No primeiro, pré-carregar objetos executando consultas concorrentemente aumentou a velocidade de execução em até 323,6%. No segundo, o aumento foi de até 245,7%. Os benchmarks também foram implementados com os ORMs Hibernate e EcliseLink JPA, os quais aderem à especificação JPA (Java Persistence Architecture). O primeiro foi escolhido por ser bastante popular. O segundo foi escolhido por ser a implementação de referência desta especificação. As implementações baseadas no Hibernate e EclipseLink JPA foram significativamente otimizadas. Entretanto, em todos os cenários de Emeio e OO7 que oferecem oportunidades para pré-carregar objetos executando consultas concorrentemente, o desempenho delas foi inferior ao da implementação baseada no interpretador de Litoral. / ORMs (Object-Relational Mappers) are quite popular because they reduce the effort of developing data access layers by allowing, among other things, systems manipulate transient and persistent objects in similar ways. In particular, ORMs allow systems navigate through objects of both types exactly the same way. Unfortunately, however, navigating through persistent objects is much slower than navigating through transient ones. To alleviate this problem, ORMs prefetch objects executing SQL (Structured Query Language) queries that fetch the attributes of multiple objects. In many cases, these queries can be executed concurrently. However, most ORMs execute queries sequentially only. In this research, we aim to increase the performance of ORM based systems. To this end, we define a DSL (Domain-Specific Language) for specifying navigations through objects called Litoral. We also implement a Litoral interpreter that navigates through transient (objects that exist only in the primary memory) and persistent objects (objects stored in a relational database) and prefetches the second type with queries executed sequentially or concurrently. We evaluated our strategy with the synthetic benchmarks Emeio and OO7. In the first one, prefetching objects with queries concurrently executed increased execution speed up to 323.6%. In the second one, the increase was up to 245.7%. We also implemented the benchmarks with the Hibernate and EcliseLink JPA ORMs, which adhere to the JPA (Java Persistence Architecture) specification. We chose the first one because it is quite popular and the second one because it is the reference implementation of JPA. We optimized the implementations based on Hibernate and EclipseLink JPA extensively. However, in all scenarios of Emeio and OO7 that offer opportunities for prefetching objects with queries concurrently executed, their performance was inferior to the performance of the implementations based on the Litoral interpreter.

Page generated in 0.0219 seconds