Spelling suggestions: "subject:"programação paralelamente - computação"" "subject:"programaçãoo paralelamente - computação""
51 |
Implementação e analise de ferramentas de quimica comoutacional aplicada ao desenvolvimento de processos / Implentation and analysis of computational chemistry tools applied to the processes developmentPinto, Jefferson Ferreira, 1972- 22 February 2006 (has links)
Orientador: Rubens Maciel Filho / Tese (doutorado) - Universidade Estadual de Campinas, Faculdade de Engenharia Qumica / Made available in DSpace on 2018-08-09T18:17:35Z (GMT). No. of bitstreams: 1
Pinto_JeffersonFerreira_D.pdf: 2614838 bytes, checksum: 839b2ff15752c4919e502eaf94e81822 (MD5)
Previous issue date: 2006 / Resumo: As indústrias vêm mudando profundamente nos últimos anos, principalmente para redução de consumo energético, melhoria na qualidade dos produtos e adequação às leis ambientais. Estas mudanças podem ser auxiliadas pelas técnicas de modelagem e simulação, incluindo o detalhamento do modelo em nível atômico, quando então recebe o nome de química computacional. Diversas ferramentas abrangendo todas as áreas de química computacional, em sua maioria gratuitas ou de domínio público, foram implementadas em um microcomputador e analisadas para aplicação no desenvolvimento de processos. Foi analisado também o desempenho computacional em função do sistema operacional, que apresentou diferenças no desempenho de até 353% para cálculos de ponto flutuante, 18% para acesso a memória RAM e 67% para acesso a disco. Para melhorar o desempenho computacional, foi elaborado o projeto de um ambiente computacional paralelo de alto desempenho, no qual o custo ficou limitado à aquisição de hardware, de fácil disponibilidade no mercado, sendo que os softwares utilizados são gratuitos ou de domínio público / Abstract: lndustries are changing in the last years, mainly for reduction of energy consumption, improvement in the product quality and adequacy to the environmental laws. These changes can be assisted by the modeling and simulation techniques, including the detailing of the model in atomic leveI, when then it receives the name of computational chemistry. Several tools enclosing all the areas of computational chemistry, in its mainly free or of public domain, had been implemented in a microcomputer and analyzed for application in the processes development. The computational performance in function of the operational system was also analyzed, that presented differences in the performance of up to 353% for floating-point calculations, 18% for access the RAM memory and 67% for access the hard disk. To improve the computational performance the project of high performance computer system was elaborated, in which the cost was limited the acquisition of the hardware, of easy availability in the market, being that software used is free or of public domain / Doutorado / Desenvolvimento de Processos Químicos / Doutor em Engenharia Química
|
52 |
Explorando memoria transacional em software nos contextos de arquiteturas assimetricas, jogos computacionais e consumo de energia / Exploiting software transactional memory in the context of asymmetric architecturesBaldassin, Alexandro José 15 August 2018 (has links)
Orientador: Paulo Cesar Centoducatte / Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-15T20:59:38Z (GMT). No. of bitstreams: 1
Baldassin_AlexandroJose_D.pdf: 1596141 bytes, checksum: 265aa763c420b69f70d59ff687bd8ad9 (MD5)
Previous issue date: 2009 / Resumo: A adoção dos microprocessadores com múltiplos núcleos de execução pela indústria semicondutora tem criado uma crescente necessidade por novas linguagens, metodologias e ferramentas que tornem o desenvolvimento de sistemas concorrentes mais rápido, eficiente e acessível aos programadores de todos os níveis. Uma das principais dificuldades em programação concorrente com memória compartilhada é garantir a correta sincronização do código, evitando assim condições de corrida que podem levar o sistema a um estado inconsistente. A sincronização tem sido tradicionalmente realizada através de métodos baseados em travas, reconhecidos amplamente por serem de difícil uso e pelas anomalias causadas. Um novo mecanismo, conhecido como memória transacional (TM), tem sido alvo de muita pesquisa recentemente e promete simplificar o processo de sincronização, além de possibilitar maior oportunidade para extração de paralelismo e consequente desempenho. O cerne desta tese é formado por três trabalhos desenvolvidos no contexto dos sistemas de memória transacional em software (STM). Primeiramente, apresentamos uma implementação de STM para processadores assimétricos, usando a arquitetura Cell/B.E. como foco. Como principal resultado, constatamos que o uso de sistemas transacionais em arquiteturas assimétricas também é promissor, principalmente pelo fator escalabilidade. No segundo trabalho, adotamos uma abordagem diferente e sugerimos um sistema de STM especialmente voltado para o domínio de jogos computacionais. O principal motivo que nos levou nesta direção é o baixo desempenho das implementações atuais de STM. Um estudo de caso conduzido a partir de um jogo complexo mostra a eficácia do sistema proposto. Finalmente, apresentamos pela primeira vez uma caracterização do consumo de energia de um sistema de STM considerado estado da arte. Além da caracterização, também propomos uma técnica para redução do consumo em casos de alta contenção. Resultados obtidos a partir dessa técnica revelam ganhos de até 87% no consumo de energia / Abstract: The shift towards multicore processors taken by the semiconductor industry has initiated an era in which new languages, methodologies and tools are of paramount importance to the development of efficient concurrent systems that can be built in a timely way by all kinds of programmers. One of the main obstacles faced by programmers when dealing with shared memory programming concerns the use of synchronization mechanisms so as to avoid race conditions that could possibly lead the system to an inconsistent state. Synchronization has been traditionally achieved by means of locks (or variations thereof), widely known by their anomalies and hard-to-get-it-right facets. A new mechanism, known as transactional memory (TM), has recently been the focus of a lot of research and shows potential to simplify code synchronization as well as delivering more parallelism and, therefore, better performance. This thesis presents three works focused on different aspects of software transactional memory (STM) systems. Firstly, we show an STM implementation for asymmetric processors, focusing on the architecture of Cell/B.E. As an important result, we find out that memory transactions are indeed promising for asymmetric architectures, specially due to their scalability. Secondly, we take a different approach to STM implementation by devising a system specially targeted at computer games. The decision was guided by poor performance figures usually seen on current STM implementations. We also conduct a case study using a complex game that effectively shows the system's efficiency. Finally, we present the energy consumption characterization of a state-of-the-art STM for the first time. Based on the observed characterization, we also propose a technique aimed at reducing energy consumption in highly contended scenarios. Our results show that the technique is indeed effective in such cases, improving the energy consumption by up to 87% / Doutorado / Sistemas de Computação / Doutor em Ciência da Computação
|
53 |
Mapas de símbolos proporcionais / Proportional symbol mapsKunigami, Guilherme, 1986- 09 May 2011 (has links)
Orientador: Pedro Jussieu de Rezende, Cid Carvalho de Souza / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-19T04:48:53Z (GMT). No. of bitstreams: 1
Kunigami_Guilherme_M.pdf: 3383647 bytes, checksum: 88687783446ea3564995daf2b1ecfd79 (MD5)
Previous issue date: 2011 / Resumo: Nesta dissertação, realizamos um estudo extensivo de uma classe de problemas envolvendo mapas de símbolos proporcionais, através de programação linear inteira. Mapas de símbolos proporcionais são uma ferramenta cartográfica para a representação de eventos associados 'a intensidade e localização geográfica. Exemplos clássicos desses tipos de mapas são ocorrências de terremotos e populações de cidades. Devido 'a proximidade e ao tamanho dos símbolos, podem haver sobreposições entre eles. Na ocorrência dessas sobreposições, a decisão sobre quais símbolos ficarão por cima de outros, pode afetar a visibilidade dos símbolos em um desenho. Os problemas envolvendo mapas de símbolos proporcionais dos quais tratamos são restritos ao uso de círculos opacos como símbolos e consistem em decidir a ordem em que estes serão dispostos em vista das sobreposições, de forma a maximizar métricas associadas à qualidade visual desses mapas. Tratam-se, portanto, de problemas de otimização combinatória. Em nosso trabalho, apresentamos modelos de programação linear inteira para resolução de dois desses problemas, um deles foi provado pertencer à classe NP-difícil e o outro tem complexidade ainda não conhecida. Obtivemos resultados teóricos de combinatória poliédrica acerca dos modelos, o que resultou em diversas desigualdades definidoras de facetas que foram incorporadas aos modelos. Desenvolvemos ainda técnicas de pré-processamento que decompuseram as instâncias de entrada em um grande número de componentes de menor tamanho. Essas técnicas permitiram resolver de maneira ótima, pela primeira vez, diversas instâncias criadas a partir de dados reais. Ademais, descrevemos um trabalho que aborda um desses problemas através de uma heurística GRASP, ao qual também contribuímos / Abstract: In this dissertation, we present an extensive study of a class of problems involving proportional symbol maps, through integer linear programming. Proportional symbol maps are a cartographic tool to represent events associated to specified values and geographical coordinates. Classic examples of these maps include representation of earthquakes and city populations. Due to the size and proximity of the symbols, there may be overlap among them. In such case, deciding which symbols will be placed above others may result in maps with different visibility information. The problems dealing with proportional symbol maps we address restrict symbols to be opaque disks and consist of deciding the order of their placement in view of overlaps, so as to maximize metrics related to the visual quality of such maps. Therefore, these amount essentially to combinatorial optimization problems. In our work, we designed integer linear programming models to solve two of these problems, one proven to be NP-hard and the other of complexity yet unknown. We obtained theoretical results concerning these models, through polyhedral combinatorics, which allowed us to include several facet defining inequalities into these models. We also developed preprocessing techniques that successfully broke down the input instances into a large number of smaller components. These techniques lead, for the first time, to optimal solutions of several test instances created from real-world data. Furthermore, we describe work on a heuristic approach to one of these problems using GRASP, to which we also contributed / Mestrado / Ciência da Computação / Mestre em Ciência da Computação
|
54 |
Uma Linguagem de Programação Paralela Orientada a Objetos para Arquiteturas Distribuídas / A Programming Language for Parallel Object-Oriented Distributed ArchitecturesPinho, Eduardo Gurgel January 2012 (has links)
PINHO, Eduardo Gurgel. Uma Linguagem de Programação Paralela Orientada a Objetos para Arquiteturas Distribuídas. 2012. 71 f. : Dissertação (mestrado) - Universidade Federal do Ceará, Centro de Ciências, Departamento de Computação, Fortaleza-CE, 2012. / Submitted by guaracy araujo (guaraa3355@gmail.com) on 2016-06-21T19:17:42Z
No. of bitstreams: 1
2012_dis_egpinho.pdf: 1247267 bytes, checksum: b2db45af231441771b82531797f8c819 (MD5) / Approved for entry into archive by guaracy araujo (guaraa3355@gmail.com) on 2016-06-21T19:19:30Z (GMT) No. of bitstreams: 1
2012_dis_egpinho.pdf: 1247267 bytes, checksum: b2db45af231441771b82531797f8c819 (MD5) / Made available in DSpace on 2016-06-21T19:19:30Z (GMT). No. of bitstreams: 1
2012_dis_egpinho.pdf: 1247267 bytes, checksum: b2db45af231441771b82531797f8c819 (MD5)
Previous issue date: 2012 / In object-oriented programming (OOP) languages, the ability to encapsulate software concerns of the dominant decomposition in objects is the key to reaching high modularity and loss of complexity in large scale designs. However, distributed-memory parallelism tends to break modularity, encapsulation, and functional independence of objects, since parallel computations cannot be encapsulated in individual objects, which reside in a single address space. For reconciling object-orientation and distributed-memory parallelism, this work introduces OOPP (Object-Oriented Parallel Programming), a style of OOP where objects are distributed by default. As an extension of C++, a widespread language in HPC, the PObC++ language has been designed and protoyped, incorporating the ideas of OOPP / Em programação orientadas a objetos (POO) , a habilidade de encapsular interesses de software da dominante decomposição em objetos é a chave para alcançar alto nível de modularidade e diminuição de complexidade em projetos de larga escala. Entretanto, o paralelismo de memória distribuída tende a quebrar modularidade, encapsulamento e a independência de objetos, uma vez que as computações paralelas não podem ser encapsuladas em objetos individuais, os quais residem em um espaço de endereçamento único. Para reconciliar orientação a objetos e paralelismo em memória distribuída, esse trabalho introduz a PPOO (Programação Paralela Orientada a Objetos), um estilo de POO onde objetos são distribuídos por padrão. Como uma estensão do C++, uma linguagem consolidada em CAD, a linguagem PObC++ foi projetada e prototipada, incorporando as ideias da PPOO.
|
55 |
Consumo de energia em escalonadores de transações em sistemas de memória transacional em software /Marques Junior, Ademir. January 2016 (has links)
Orientador: Alexandro José Baldassin / Banca: Rodolfo Jardim de Azevedo / Banca: Daniel Carlos Guimarães Pedronette / Resumo: O conceito de Memória Transacional foi criado para simplificar a sincronização de dados em memória, necessária para evitar a computação de dados inconsistentes por processadores multinúcleos, que se tornaram padrão devido às limitações encontradas em processadores de um núcleo. Em evolução constante pela busca de desempenho, os escalonadores de transação foram criados como alternativa aos gerenciadores de contenção presentes nos Sistemas de Memória Transacional. O consumo de energia é preocupação crescente, desde os grandes data centers até os disposítivos móveis que dependem de tempo de bateria, sendo também explorado no contexto de sistemas com Memória Transacional. Trabalhos anteriores consideraram, em sua maioria, somente o uso de gerenciadores de contenção, sendo o objetivo deste trabalho uma análise sobre o uso de escalonadores de transação. Desta forma, são exploradas nesta dissertação as técnicas de escalonamento dinâmico de tensão e frequência (DVFS) para a criação de uma heurística para a redução do consumo de energia utilizando o escalonador LUTS como base. Com o uso de aplicações do benchmark STAMP e biblioteca de memória transacional TinySTM, este trabalho faz uma análise sobre a eficiência energética dos escalonadores de referência ATS e LUTS, enquanto propõe uma nova heurística com o objetivo de reduzir o consumo de energia, denominada LUTSDynamic-Serializer, que alterna entre o uso de spinlock e de trava mutex de forma dinâmica. O uso desta heurística reduziu o EDP em até 17% e 61% em valores de EDP (Eenergy-Delay Product), e 4,95% e 15,8% na média geométrica das aplicações estudadas, em comparação aos escalonadores LUTS e ATS respectivamente, quando se utilizou a configuração de 8 threads, que é a limitação física de threads do processador utilizado no ambiente de experimento / Abstract: The Transactional Memory concept was created to simplify the synchronization of data in memory, needed to avoid computation of inconsistent data in multicore processors, which became standard due to limitations in single core processors. In constant search for performance, transactional schedulers were created as a alternative to contention managers present in transactional memory systems. The energy consumption is a crescent worry, ranging from big data centers to mobile devices which are dependent on battery life, and also being studied in Transactional Memory systems. Past works only considered the use of contention managers, and therefore this work seeks to analyse the impact of transactional schedulers. The techniques involving Dynamic Frequency-Voltage Scaling (DVFS) were explored with the motivation to create a heuristic to reduce energy consumption using the LUTS scheduler as a start. Utilizing the STAMP benchmark and the TinySTM transactional memory library, this work does an analysis about the energy efficiency of the reference scheduler ATS and LUTS, while proposing a new heuristic, named LUTSDynamic-Serializer, with the aim to reduce energy consumption by making a choice between spin-lock and mutex lock in a dynamic manner. We achieve with our heuristic up to 17% and 61% in EDP (Energy-Delay Product), and 4,95% and 15,8% considering the geometric mean among the applications studied, compared against the schedulers LUTS and ATS respectively, when we used the configuration with 8 threads, which is the physical limit of threads in the processor used in the experiments / Mestre
|
56 |
Algoritmo de evolução diferencial paralelo aplicado ao problema da predição da estrutura de proteínas utilizando o modelo AB em 2D e 3DKalegari, Diego Humberto 18 October 2010 (has links)
O problema da predição da estrutura de proteínas (PPEP) é bastante conhecido na bioinformática. A identificação da conformação nativa de uma proteína permite predizer a sua função no organismo. Este conhecimento também é útil no desenvolvimento de novos fármacos ou na compreensão do mecanismo de várias doenças. Várias técnicas tem sido propostas para resolver este problema. Porém, o alto custo envolvido levou ao surgimento de vários modelos que simplificam, em parte, as estruturas protéicas. No entanto, mesmo com os modelos mais simplificados, a complexidade do problema traz inúmeros desafios computacionais na busca da sua conformação nativa. Este trabalho utiliza o algoritmo evolucionário denominado Evolução Diferenciada (ED) para solucionar o PPEP, representando as proteínas com o modelo AB (toy model), em duas e três dimensões (2D e 3D). O trabalho apresenta a implementação de duas versões da ED, paralelizadas num ambiente de processo em cluster, com Message Passing Interface e arquitetura mestre-escravo. Para a configuração dos operadores do algoritmo de ED, foram realizados vários estudos com diferentes configurações para ambos os modelos, e análises estatísticas determinaram quais os melhores valores. Além disso, foram criados dois operadores especiais: dizimação e mutação espelhada. O primeiro poder ser considerado um operador genérico, que pode ser utilizado em qualquer problema; o segundo é específico para o problema em questão. Além do algoritmo de ED básico, também foi proposta uma versão auto-adaptável, em que alguns de seus parâmetros são atualizados no decorrer da evolução. Os experimentos realizados utilizaram 4 sequências de aminoácidos de benchmark geradas a partir da sequência de Fibonacci, contendo entre 13 e 55 aminoácidos. Os resultados dos algoritmos de ED paralelos foram comparados com os resultados obtidos em outros trabalhos. O algoritmo de ED é capaz de obter resultados excelentes, competitivos com os métodos especializados, apesar de não atingir o ótimo conhecido em algumas instâncias. Os resultados promissores obtidos nesse trabalho mostram que o algoritmo de ED é adequado para o problema. Em trabalhos futuros poderão ser estudados novos operadores especiais ou outras técnicas de inspiração biológica, buscando melhorar os resultados. / Protein structure prediction is a well-known problem in bioinformactis. Identifying protein native conformation makes it possible to predict its function within the organism. Knowing this also helps in the development of new medicines and in comprehending how some illnesses work and act. During the past year some techniques have been proposed to solve this problem, but its high cost made it necessary to build models that simplify the protein structures. However, even with the simplicity of these models identifying the protein native conformation remains a highly complex, computationally challenging problem. This paper uses an evolutionary algorithm known as Differential Evolution (DE) to solve the protein structure prediction problem. The model used to represent the protein structure is the Toy Model (also known as the AB Model) in both 2D and 3D. This work implements two versions of the ED algorithm using a parallel architecture (master-slave) based on Message Passing interface in a cluster. A large number of tests were executed to define the final configuration of the DE operators for both models. A new set of special operators were developed: explosion and mirror mutation. We can consider the first as generic, because it can be used in any problem. The second one is more specific because it requires previous knowledge of the problem. Of the two DE algorithm implemented, one is a basic DE algorithm and the second is a self-adaptive DE. All tests executed in this work used four benchmark amino acid sequences generated from the Fibonacci sequence. Each sequence has 13 to 55 amino acids. The results for both parallel DE algorithms using both 2D and 3D models were compared with other works. The DE algorithm achieved excellent results. It did not achieve the optimal known values for some sequences, but it was competitive with other specialized methods. Overall results encourage further research toward the use of knowledge-based operators and biologically inspired techniques to improve DE algorithm performance.
|
57 |
Mega busca harmônica: algoritmo de busca harmônica baseado em população e implementado em unidades de processamento gráficoScalabrin, Marlon Henrique 31 March 2012 (has links)
CAPES / Este trabalho propõe uma modificação da meta-heurística Busca Harmônica (HS) a partir de uma nova abordagem baseada em população, empregando, também, algumas estratégias inspiradas em outras meta-heurísticas. Este novo modelo foi implementado utilizando a arquitetura de programação paralela CUDA em uma GPU. O uso de placas de processamento gráficas (GPU) para processamento de propósito geral está crescendo, e estas têm sido utilizadas por muitos pesquisadores para processamento científico. Seu uso se mostra interessante para meta-heurísticas populacionais, podendo realizar muitas operações simultaneamente. A HS é uma meta-heurística inspirada no objetivo de um músico em buscar uma harmonia perfeita. modelo proposto incluiu-se uma população de harmonias temporárias que são geradas a cada nova iteração, permitindo a realização simultânea de diversas avaliações de função. Assim aumenta-se o grau de paralelismo da HS, possibilitando maiores ganhos de velocidade com o uso de arquiteturas paralelas. O novo modelo proposto executado em GPU foi denominado Mega Harmony Search (MHS). Na implementação em GPU cada passo do algoritmo é tratado individualmente em forma de kernels com configurações particulares para cada um. Para demonstrar a eficácia do modelo proposto foram selecionados alguns problemas de benchmark, como a otimização de estruturas de proteínas, a otimização de treliças e problemas matemáticos. Através de experimentos fatoriais foi identificado um conjunto de parâmetros padrão, o qual foi utilizado nos outros experimentos. As análises realizadas sobre resultados experimentais mostram que o MHS apresentou solução de qualidade equivalente à HS e ganhos de velocidade, com a sua execução em GPU, superiores a 60x quando comparado a implementação em CPU. Em trabalhos futuros poderão ser estudadas novas modificações ao algoritmo, como a implementação de nichos e estudos de estratégias de interação entre eles. / This work propose a new approach for the metaheuristic Harmonic Search (HS), by using a population of solutiona and other strategies inspired in another metaheuristics. This new model was implemented using a parallel architecture of a graphical processing unity (GPU). The use of GPU for general-purpose processing is growing, specially for scientific processing. Its use is particularly interesting for populational metaheuristics, where multiple operations are executed simultaneously. The HS is a metaheuristic inspired by the way jazz musicians search for a perfect harmony. In the proposed model a population of temporary harmonies was included. Such population was generated at each iteration, enabling simultaneous evaluation of the objective function being optimized, and thus, increasing the level of parallelism of HS. The new approach implemented in GPU was named Mega Harmony Search (MHS), and each step of the algorithm is handled in the form of kernels with particular configurations for each one. To show the efficiency of MHS some benchmark problems were selected for testing, including mathematical optimization problems, protein structure prediction, and truss structure optimization. Factorial experiments were done so as to find the best set of parameters for the MHS. The analyzes carried out on the experimental results show that the solutions provided by MHS have comparable quality to those of the simple Harmony Search. However, by using GPU, MHS achieved a speedup of 60x, compared with the implementation in regular CPU. Future work will focus other improvements in the algorithm, such as the use of niches and species, as well a study of the interactions between them.
|
58 |
Mega busca harmônica: algoritmo de busca harmônica baseado em população e implementado em unidades de processamento gráficoScalabrin, Marlon Henrique 31 March 2012 (has links)
CAPES / Este trabalho propõe uma modificação da meta-heurística Busca Harmônica (HS) a partir de uma nova abordagem baseada em população, empregando, também, algumas estratégias inspiradas em outras meta-heurísticas. Este novo modelo foi implementado utilizando a arquitetura de programação paralela CUDA em uma GPU. O uso de placas de processamento gráficas (GPU) para processamento de propósito geral está crescendo, e estas têm sido utilizadas por muitos pesquisadores para processamento científico. Seu uso se mostra interessante para meta-heurísticas populacionais, podendo realizar muitas operações simultaneamente. A HS é uma meta-heurística inspirada no objetivo de um músico em buscar uma harmonia perfeita. modelo proposto incluiu-se uma população de harmonias temporárias que são geradas a cada nova iteração, permitindo a realização simultânea de diversas avaliações de função. Assim aumenta-se o grau de paralelismo da HS, possibilitando maiores ganhos de velocidade com o uso de arquiteturas paralelas. O novo modelo proposto executado em GPU foi denominado Mega Harmony Search (MHS). Na implementação em GPU cada passo do algoritmo é tratado individualmente em forma de kernels com configurações particulares para cada um. Para demonstrar a eficácia do modelo proposto foram selecionados alguns problemas de benchmark, como a otimização de estruturas de proteínas, a otimização de treliças e problemas matemáticos. Através de experimentos fatoriais foi identificado um conjunto de parâmetros padrão, o qual foi utilizado nos outros experimentos. As análises realizadas sobre resultados experimentais mostram que o MHS apresentou solução de qualidade equivalente à HS e ganhos de velocidade, com a sua execução em GPU, superiores a 60x quando comparado a implementação em CPU. Em trabalhos futuros poderão ser estudadas novas modificações ao algoritmo, como a implementação de nichos e estudos de estratégias de interação entre eles. / This work propose a new approach for the metaheuristic Harmonic Search (HS), by using a population of solutiona and other strategies inspired in another metaheuristics. This new model was implemented using a parallel architecture of a graphical processing unity (GPU). The use of GPU for general-purpose processing is growing, specially for scientific processing. Its use is particularly interesting for populational metaheuristics, where multiple operations are executed simultaneously. The HS is a metaheuristic inspired by the way jazz musicians search for a perfect harmony. In the proposed model a population of temporary harmonies was included. Such population was generated at each iteration, enabling simultaneous evaluation of the objective function being optimized, and thus, increasing the level of parallelism of HS. The new approach implemented in GPU was named Mega Harmony Search (MHS), and each step of the algorithm is handled in the form of kernels with particular configurations for each one. To show the efficiency of MHS some benchmark problems were selected for testing, including mathematical optimization problems, protein structure prediction, and truss structure optimization. Factorial experiments were done so as to find the best set of parameters for the MHS. The analyzes carried out on the experimental results show that the solutions provided by MHS have comparable quality to those of the simple Harmony Search. However, by using GPU, MHS achieved a speedup of 60x, compared with the implementation in regular CPU. Future work will focus other improvements in the algorithm, such as the use of niches and species, as well a study of the interactions between them.
|
59 |
Aplicação da metaheuristica busca dispersa ao problema do ajuste de historico / Application of the scatter serach methaheuristic to the history matching problemSousa, Sergio Henrique Guerra de 13 August 2018 (has links)
Orientadores: Denis Jose Schiozer, Celio Maschio / Dissertação (mestrado) - Universidade Estadual de Campinas, Faculdade de Engenharia Mecanica e Instituto de Geociencias / Made available in DSpace on 2018-08-13T03:31:41Z (GMT). No. of bitstreams: 1
Sousa_SergioHenriqueGuerrade_M.pdf: 1592526 bytes, checksum: a308d06cf11fb891b71f7b3396952356 (MD5)
Previous issue date: 2007 / Resumo: O problema do ajuste de histórico é uma das tarefas que mais demandam tempo em um estudo de reservatório baseado em simulações de fluxo, porque é um problema inverso onde os resultados (dados de produção) são conhecidos, porém os valores de entrada (a caracterização do reservatório) não são integralmente conhecidos. Adicionalmente, as funções objetivo que medem a qualidade do ajuste costumam ser expressões compostas por uma série de componentes que tornam a topologia do espaço de soluções complexa e repleta de não linearidades. A metodologia adotada neste trabalho foi a modelagem do problema de ajuste de histórico como um problema de otimização combinatória de modo que ele pudesse ser abordado através de processos metaheurísticos. Em particular, a metaheurística Busca Dispersa (Scatter Search) foi acoplada a um algoritmo de Busca Direta baseado no método de Hooke e Jeeves para resolver o problema do ajuste de histórico. Reservatórios sintéticos de solução conhecida foram utilizados para fazer a validação da metodologia e, em seguida, ela foi aplicada a outro reservatório, também sintético, mas com características de reservatórios reais onde a solução do ajuste é desconhecida. São discutidos ao longo do texto o uso da metodologia de forma automática e assistida e também os benefícios do uso da computação distribuída na execução do método. As maiores contribuições deste trabalho em relação à questão do ajuste de histórico são: a introdução de uma nova metodologia versátil para uso automático ou assistido, a discussão de algumas características que dificultam o processo de ajuste e de que forma eles podem ser contornados e também a abordagem do tema do ajuste automático vs. o ajuste assistido ilustrado com exemplos. / Abstract: The history matching problem is one of the most demanding tasks in a reservoir simulation study; because it's an inverse problem where the results (production data) are known but the input data (the reservoir characterization data) are not entirely known. Moreover, the objective function that guide the match is usually made out of a series of components that make the topology of the objective function both complex and full of non-linearities. The methodology adopted in this work was to model the history matching problem as a combinatorial optimization problem in order for it to be solved by metaheuristic processes. In particular, the Scatter Search metaheuristic was coupled with a direct search method based on Hooke and Jeeve's method to solve the history matching problem. Synthetic reservoirs of known solutions where used to validate the methodology and then the methodology was applied to another reservoir, also synthetic, but with characteristics of real reservoirs where the solution is not known in advance. Throughout the text, the mixed use of the methodology on both an assisted and automatic fashion is discussed along with the benefits attained by the use of distributed computing resources. The greatest contributions of this work related to the history matching problem are: the introduction of a new versatile methodology for both automatic and assisted matches, the discussion of some characteristics that burden the entire process and some ways to overcome the difficulties, and also the discussion of some tradeoffs between automatic versus assisted history matching with examples to illustrate the matter. / Mestrado / Reservatórios e Gestão / Mestre em Ciências e Engenharia de Petróleo
|
60 |
Adaptatividade hp em paralelo / Hp adaptive technique in parallelRylo, Edimar Cesar 14 August 2018 (has links)
Orientador: Philippe Remy Bernard Devloo / Tese (doutorado) - Universidade Estadual de Campinas, Faculdade de Engenharia Civil, Arquitetura e Urbanismo / Made available in DSpace on 2018-08-14T01:58:48Z (GMT). No. of bitstreams: 1
Rylo_EdimarCesar_D.pdf: 6164747 bytes, checksum: e5675a350bb563815a0ed3a28155e3ee (MD5)
Previous issue date: 2007 / Resumo: Esse trabalho apresenta uma abordagem para a implementação de métodos auto-adaptativos hp em malhas de elementos finitos utilizando processamento paralelo para a seleção do padrão hp a ser utilizado em cada elemento da malha. Dois tópicos são destacados: análise da qualidade da aproximação e modo de melhoria do espaço de aproximação.
O trabalho apresentado propõe uma estrutura para a implementação de métodos hp autoadaptativos no ambiente PZ. Essa estrutura é genérica e pode ser utilizada independentemente de: formulação fraca, tipo de elemento utilizado, método de resolução etc. A estrutura proposta define a interface requerida de um estimador de erros, bem como a interface para a seleção do padrão de refinamento. Tal interface contempla a possibilidade de análise de malhas com elementos contínuos ou descontínuos.
A implementação apresentada contempla o processamento em máquinas paralelas, de modo que o tempo de obtenção de uma malha adaptada seja aceitável em aplicações práticas. O cálculo do erro bem como a definição dos padrões de refinamento pode ser feito utilizando processamento paralelo, em ambientes com memória compartilhada ou distribuída.
Uma metodologia de refinamento h baseado em padrões de refinamento foi desenvolvida, implementada e validada. Essa metodologia facilita a implementação de padrões de refinamento. Em contrapartida, a geração de malhas com espaços de aproximação contínuos impõe restrições para a seleção do padrão de refinamento de um elemento. Assim, para a seleção de um padrão de refinamento de um elemento foi desenvolvida uma metodologia de análise de padrões admissíveis. A seleção do padrão de refinamento tendo por base uma análise de padrões admissíveis é um ponto que requer novas pesquisas, sendo considerado um dos desafios da auto-adaptatividade (ver Zienkiewicz [55]). / Abstract: This work presents a study of hp adaptive methods applied to finite element approximations. Two topics are emphasized: analysis of the quality of the approximation and methodology of refinement of the approximation space. The main objective of the work is to conceive a framework for developing hp-adaptive algorithms within the PZ environment. The framework is independent of the weak statement, type of element or resolution method. The framework uses separate interfaces to define the error estimation method and selection of refinement pattern. Secondly, the framework was ported to parallel processing using the object oriented framework OOPar. The intent of parallelizing the adaptive process is to reduce the time spent in error estimation and choice of the optimal refinement pattern and thus bring adaptivity to a level where it can be used as a routine analysis method. Both error estimation and choice of refinement pattern are implemented on a shared and/or distributed machine. Finally, a methodology was developed to extend the h-adaptive refinement process based on refinement patterns. Together with the implementation of refinement patterns, a procedure was developed to check on the compatibility of refinement patterns of two neighboring elements. The choice of the "best" refinement patterns is one of the main challenges of adaptive methods (Zienkiewicz [55]). The availability of different ways of refining elements increases the flexibility of the code, but also introduces the challenge of deciding which pattern is the "best" pattern. It is possible that the combination of optimized h-refinement together with choice of h and/or p refinement may lead to very efficient approximation spaces for a given problem. / Doutorado / Estruturas / Doutor em Engenharia Civil
|
Page generated in 0.089 seconds