Spelling suggestions: "subject:"programa??o paralelamente"" "subject:"pprograma??o paralelamente""
1 |
Avaliando o sistema de arquivos Lustre com uso de cargas de trabalho de aplica??es paralelasKuszera, Evandro Miguel 25 March 2010 (has links)
Made available in DSpace on 2015-04-14T14:49:23Z (GMT). No. of bitstreams: 1
424004.pdf: 1341745 bytes, checksum: 512c3632850f9466f0d8d4864c026768 (MD5)
Previous issue date: 2010-03-25 / O crescente avan?o na capacidade de processamento dos computadores fornece meios para projetar e executar aplica??es com demandas cada vez maiores. Contudo, dependendo da aplica??o, h? tamb?m a necessidade de acessar e armazenar grandes por??es de dados de forma eficiente. Aplica??es voltadas ? ci?ncia, engenharia, minera??o de dados e simula??es de eventos naturais s?o alguns exemplos de aplica??es que requerem alta vaz?o de dados. Clusters Linux e sistemas de arquivos distribu?dos, geralmente s?o utilizados nestes cen?rios. Entretanto, sistemas de arquivos distribu?dos ditos tradicionais, como NFS, n?o s?o adequados para aplica??es intensivas em dados. A arquitetura centralizada limita o desempenho e escala da aplica??o. Com base nisso, v?rios sistemas de arquivos paralelos foram concebidos com o objetivo de amenizar o gargalo criado no acesso aos dados. Dentre esses sistemas, destaca-se o Lustre, sistema de arquivos paralelos amplamente utilizado pela comunidade de alto desempenho. Neste trabalho, realiza-se uma avalia??o do Lustre sobre um cluster Linux de pequena escala. A avalia??o tem por objetivo identificar quais fatores afetam o desempenho do sistema de arquivos, e como o mesmo se comporta sob cargas de trabalho t?picas de aplica??es paralelas. Os resultados obtidos mostraram que o Lustre ? um sistema de arquivos adequado para todas as classes de aplica??es avaliadas. Entretanto, para se obter bom desempenho ? importante tornar os acessos, realizados pelos processos, cont?guos dentro do arquivo. Dessa forma, ? poss?vel aproveitar os recursos fornecidos pelo Lustre, como cache cliente e read-ahead.
|
2 |
Proposta de uma linguagem espec?fica de dom?nio de programa??o paralela orientada a padr?es paralelos: um estudo de caso baseado no padr?o mestre/escravo para arquiteturas multi-coreGriebler, Dalvan Jair 19 March 2012 (has links)
Made available in DSpace on 2015-04-14T14:49:50Z (GMT). No. of bitstreams: 1
439447.pdf: 12654350 bytes, checksum: 6b1e68a168b4468adf4d1eba9517ad21 (MD5)
Previous issue date: 2012-03-19 / This work proposes a Domain-Specific Language for Parallel Patterns Oriented Parallel Programming (LED-PPOPP). Its main purpose is to provide a way to decrease the amount of effort necessary to develop parallel programs, offering a way to guide developers through patterns which are implemented by the language interface. The idea is to exploit this approach avoiding large performance losses in the applications. Patterns are specialized solutions, previously studied, and used to solve a frequent problem. Thus, parallel patterns offer a higher abstraction level to organize the algorithms in the exploitation of parallelism. They also can be easily learned by inexperienced programmers and software engineers. This work carried out a case study based on the Master/Slave pattern, focusing on the parallelization of algorithms for multi-core architectures. The implementation was validated through experiments to evaluate the programming effort to write code in LED-PPOPP and the performance achieved by the parallel code automatically generated. The obtained results let us conclude that a significant reduction in the parallel programming effort occurred in comparison to the Pthreads library utilization. Additionally, the final performance of the parallelized algorithms confirms that the parallelization with LED-PPOPP does not bring on significant losses related to parallelization using OpenMP in most of the all experiments carried out. / Este trabalho prop?s uma Linguagem Espec?fica de Dom?nio de Programa??o Paralela Orientada a Padr?es Paralelos (LED-PPOPP). O principal objetivo ? reduzir o esfor?o e induzir o programador a desenvolver algoritmos paralelos guiando-se atrav?s de padr?es que s?o implementados pela interface da linguagem, evitando que ocorram grandes perdas de desempenho nas aplica??es. Anteriormente estudados, os padr?es s?o solu??es especializadas e utilizadas para resolver um problema frequente. Assim, padr?es paralelos s?o descritos em um alto n?vel de abstra??o para organizar os algoritmos na explora??o do paralelismo, podendo ser facilmente interpretados por programadores inexperientes e engenheiros de software. Como ponto de partida, este trabalho realizou um estudo de caso baseandose no padr?o Mestre/Escravo, focando na paraleliza??o de algoritmos para arquiteturas multi-core. Atrav?s de experimentos para medi??o de esfor?o e desempenho, a implementa??o de estudo de caso foi avaliada obtendo bons resultados. Os resultados obtidos mostram que houve uma redu??o no esfor?o de programa??o paralela em rela??o a utiliza??o da biblioteca Pthreads. J? com rela??o ao desempenho final das aplica??es paralelizadas, foi poss?vel comprovar que a paraleliza??o com LED-PPOPP n?o acarreta perdas significativas com rela??o a paraleliza??es com OpenMP na quase totalidade das aplica??es testadas.
|
3 |
Desenvolvimento de aplica??es paralelas a partir de modelos em gram?tica de grafos baseada em objetosPasini, F?bio 27 January 2006 (has links)
Made available in DSpace on 2015-04-14T14:50:26Z (GMT). No. of bitstreams: 1
397342.pdf: 6244320 bytes, checksum: 1ad9082d42e6883bb7678a8782a81d49 (MD5)
Previous issue date: 2006-01-27 / No desenvolvimento de aplica??es paralelas, al?m da an?lise de aspectos ligados ao desempenho, torna-se tamb?m importante a an?lise das propriedades funcionais do sistema para garantir, por exemplo, que a estrat?gia de paraleliza??o escolhida ? adequada ao problema sendo abordado, ou que ela pode convergir para um resultado esperado, ou mesmo para identificar a possibilidade de um cen?rio de bloqueio na computa??o. A garantia de corre??o sobre o modelo de uma aplica??o paralela, al?m de aumentar o grau de confian?a nos resultados, pode tamb?m ser um fator de economia, j? que possibilita a redu??o no tempo despendido no desenvolvimento e depura??o da aplica??o. Por?m, uma vez identificados os problemas e corre??es no modelo analisado, ainda existe a necessidade de se mapear as mudan?as necess?rias ? aplica??o original. Nesse sentido, verifica??o formal e gera??o autom?tica de c?digo podem ser utilizadas como ferramentas complementares durante o desenvolvimento, possibilitando tanto a an?lise do comportamento do sistema quanto a r?pida gera??o do c?digo correspondente ao modelo proposto. Este trabalho apresenta o uso de Gram?tica de Grafos Baseada em Objetos (GGBO) para a constru??o de aplica??es paralelas, a partir da defini??o de um m?todo de tradu??o de modelos GGBO para c?digo C, utilizando MPI como plataforma de comunica??o.
|
4 |
MDX-cc : ambiente de programa??o paralela aplicado a cluster de clustersHess, Cassiano Ricardo 28 March 2003 (has links)
Made available in DSpace on 2015-04-14T14:49:29Z (GMT). No. of bitstreams: 1
429227.pdf: 1053601 bytes, checksum: ac385028f1ef5808c2649d92f982cc04 (MD5)
Previous issue date: 2003-03-28 / Em raz?o do surgimento de redes de comunica??o de alta velocidade, tais como Myrinet e SCI, a constru??o de arquiteturas baseadas em m?quinas comuns (PCs e esta??es de trabalho) conectadas por esse tipo de rede - o que se denomina agregado (ou cluster) - tornou-se vi?vel. Tais arquiteturas v?m se consolidando como plataformas alternativas para a execu??o de aplica??es paralelas complexas, principalmente devido ? rela??o custo/benef?cio que oferecem. Esse avan?o das tecnologias de redes possibilita tamb?m a agrega??o de clusters, formando uma estrutura de cluster de clusters, como uma ?nica m?quina paralela. Um dos principais problemas no uso de cluster de clusters ? o software utilizado para o desenvolvimento de aplica??es paralelas, visto que cada agregado envolvido na estrutura possui certas caracter?sticas que precisam ser tratadas pela linguagem ou ambiente de programa??o, visando o alcance de alto desempenho. Esta disserta??o tem como objetivo apresentar uma ferramenta de programa??o paralela por troca de mensagens que executa sobre uma estrutura de cluster de clusters: o MDX-cc. A ferramenta foi concebida tendo como base o sistema MDX [PRE98][HES01] e uma primeira vers?o foi implementada oferecendo suporte ? comunica??o em agregados com redes SCI, Myrinet e Fast-Ethernet. O principal objetivo do MDX-cc ? oferecer recursos de comunica??o e sincroniza??o de processos que rodam em agregados interligados. Por sua arquitetura modular e abstra??o do uso de protocolos de comunica??o dedicados a cada tecnologia de rede, o MDX-cc oferece uma interface de programa??o simples, com um conjunto reduzido de primitivas, e prov? transpar?ncia total na comunica??o entre processos que executam em n?s de clusters com tecnologias de rede distintas.
|
5 |
RedBlue: cluster para pesquisa e ensino em EngenhariaPedras, Marcelo Br?ulio 13 November 2017 (has links)
Submitted by Jos? Henrique Henrique (jose.neves@ufvjm.edu.br) on 2018-01-31T18:35:38Z
No. of bitstreams: 2
license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5)
marcelo_braulio_pedras.pdf: 2382099 bytes, checksum: 3edc0615e188d815d0a9d1a514edfb8f (MD5) / Approved for entry into archive by Rodrigo Martins Cruz (rodrigo.cruz@ufvjm.edu.br) on 2018-02-03T12:04:59Z (GMT) No. of bitstreams: 2
license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5)
marcelo_braulio_pedras.pdf: 2382099 bytes, checksum: 3edc0615e188d815d0a9d1a514edfb8f (MD5) / Made available in DSpace on 2018-02-03T12:04:59Z (GMT). No. of bitstreams: 2
license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5)
marcelo_braulio_pedras.pdf: 2382099 bytes, checksum: 3edc0615e188d815d0a9d1a514edfb8f (MD5)
Previous issue date: 2017 / Programas de computadores s?o muito utilizados para resolu??o de problemas complexos
em engenharia. Atualmente, espera-se que um engenheiro saiba mais que apenas utiliz?-los,
sendo esta habilidade muito valorizada no mercado de trabalho. Tal habilidade possibilita que
profissionais consigam utilizar um maior conjunto de ferramentas para solucionar problemas. As
simula??es computacionais, por exemplo, podem ser utilizadas como ferramenta de aquisi??o de
conhecimento, permitindo que um profissional ou um estudante crie, teste e valide suas hip?teses.
As simula??es tamb?m s?o utilizadas em pesquisas cient?ficas como alternativa a experimentos
de dif?cil obten??o e na ind?stria para reduzir custos. Por?m, uma simula??o pode consumir mais
recursos do que os dispon?veis em um computador, tornando seu tempo de execu??o invi?vel.
Uma forma barata de se obter mais desempenho ? utilizando um cluster de computadores
comuns. Dessa forma, seria poss?vel utilizar os laborat?rios de inform?tica dispon?veis para
execut?-las. Entretanto, isso implicaria em conhecimentos aprofundados em computa??o paralela
e/ou distribu?da por parte dos usu?rios, dificultado o desenvolvimento de aplica??es. Com o
objetivo de minimizar o tempo de execu??o de simula??es complexas utilizando clusters e
permitir que usu?rios com poucos conhecimentos em programa??o paralela e/ou distribu?da
possam utiliz?-lo, este trabalho apresenta uma solu??o denominada ?plataforma RedBlue?. Essa
plataforma recebe a aplica??o do usu?rio e a executa nos n?s do cluster de forma autom?tica
e transparente para o mesmo. Para testar a plataforma desenvolvida foram realizados testes
com redes neurais artificiais e com um algoritmo gen?tico simples, ambos buscando descobrir a
melhor configura??o de par?metros para determinado problema. Utilizaram-se 60 m?quinas de
um laborat?rio de inform?tica para testar a plataforma. Os resultados mostram que houve uma
redu??o de at? 98% no tempo de execu??o do experimento com redes neurais e 99,3% para o
experimento com o algoritmo gen?tico em compara??o a execu??o sequencial. Esses resultados
indicam que a plataforma ? vi?vel para utiliza??o em laborat?rios de inform?tica, possibilitando
uma redu??o consider?vel no tempo de execu??o de simula??es complexas. A plataforma ?
aplic?vel a um n?mero flex?vel de computadores, ajustando-se ? capacidade dos laborat?rios.
Al?m disso, pode ser utilizada como instrumento ?til ao ensino e pesquisa. Ressalta-se que
a utiliza??o de simula??es computacionais para ensino e pesquisa contribui n?o apenas para
a aprendizagem de conte?dos, mas tamb?m para o surgimento de habilidades necess?rias ao
mercado de trabalho do engenheiro. / Disserta??o (Mestrado Profissional) ? Programa de P?s-Gradua??o em Educa??o, Universidade Federal dos Vales do Jequitinhonha e Mucuri, 2017. / Computer programs are commonly used to solve complex engineering problems, and it is
expected from an engineer a more than hands-on experience in using these computer programs
with the ability to develop them using a wide range of tools. Computational simulations, for
instance, can be used as tools for knowledge acquisition allowing a professional or student
to create, test and validate their hypotheses. Such simulations are used at an academic setting
as an alternative to expensive experiments. However, a simulation can take more resources
than those available in a single computer machine, rendering long execution times. To create a
cluster of regular computers, such as the ones already available at computer labs, is a cheaper
alternative to improve such execution times. One major drawback of this approach is that the
user must be knowledgeable in parallel and distributed programming, which makes software
development harder. To overcome such constraints, this work presents a solution named ?RedBlue
platform?that receives and runs user?s applications over a computer cluster in an automatic,
transparent manner. To test the RedBlue platform, we performed a set of tests via artificial
neural networks and a simplified genetic algorithm, whose main purpose was to search for the
best-suited parameter configurations for the application problem at hand. To test the platform,
the experiments were run using 60 computer machines from a computer lab. This study has
identified a reduction in execution times of 98% for neural networks, and a reduction of 99,3%
for the genetic algorithm, and also shown that the platform is suited for real-world applications of
simulations at computer labs. Furthermore, the platform accepts a variable number of computers,
easily adaptable to different academic environments, such as research and training. Lastly, we
have noted that computational simulations not only contribute to research and learning, but also
to develop the required industry skills.
|
6 |
Domain-specific language & support tools for high-level stream parallelismGriebler, Dalvan Jair 30 March 2016 (has links)
Submitted by Setor de Tratamento da Informa??o - BC/PUCRS (tede2@pucrs.br) on 2016-06-20T20:03:42Z
No. of bitstreams: 1
TES_DALVAN_JAIR_GRIEBLER_COMPLETO.pdf: 6190464 bytes, checksum: 4381302ea5fe43fe32da3f9826a1ad8a (MD5) / Made available in DSpace on 2016-06-20T20:03:42Z (GMT). No. of bitstreams: 1
TES_DALVAN_JAIR_GRIEBLER_COMPLETO.pdf: 6190464 bytes, checksum: 4381302ea5fe43fe32da3f9826a1ad8a (MD5)
Previous issue date: 2016-03-30 / Stream-based systems are representative of several application domains including video, audio, networking, graphic processing, etc. Stream programs may run on different kinds of parallel architectures (desktop, servers, cell phones, and supercomputers) and represent significant workloads on our current computing systems. Nevertheless, most of them are still not parallelized. Moreover, when new software has to be developed, programmers often face a trade-off between coding productivity, code portability, and performance. To solve this problem, we provide a new Domain-Specific Language (DSL) that naturally/on-the-fly captures and represents parallelism for stream-based applications. The aim is to offer a set of attributes (through annotations) that preserves the program?s source code and is not architecture-dependent for annotating parallelism. We used the C++ attribute mechanism to design a ?de-facto? standard C++ embedded DSL named SPar. However, the implementation of DSLs using compiler-based tools is difficult, complicated, and usually requires a significant learning curve. This is even harder for those who are not familiar with compiler technology. Therefore, our motivation is to simplify this path for other researchers (experts in their domain) with support tools (our tool is CINCLE) to create high-level and productive DSLs through powerful and aggressive source-to-source transformations. In fact, parallel programmers can use their expertise without having to design and implement low-level code. The main goal of this thesis was to create a DSL and support tools for high-level stream parallelism in the context of a programming framework that is compiler-based and domain-oriented. Thus, we implemented SPar using CINCLE. SPar supports the software developer with productivity, performance, and code portability while CINCLE provides sufficient support to generate new DSLs. Also, SPar targets source-to-source transformation producing parallel pattern code built on top of FastFlow and MPI. Finally, we provide a full set of experiments showing that SPar provides better coding productivity without significant performance degradation in multi-core systems as well as transformation rules that are able to achieve code portability (for cluster architectures) through its generalized attributes. / Sistemas baseados em fluxo cont?nuo de dados representam diversos dom?nios de aplica??es, por exemplo, video, ?udio, processamento gr?fico e de rede, etc. Os programas que processam um fluxo cont?nuo de dados podem executar em diferentes tipos de arquiteturas paralelas (esta??es de trabalho, servidores, celulares e supercomputadores) e representam cargas de trabalho significantes em nossos sistemas computacionais atuais. Mesmo assim, a maioria deles ainda n?o ? paralelizado. Al?m disso, quando um novo software precisa ser desenvolvido, os programadores necessitam lidar com solu??es que oferecem pouca produtividade de c?digo, portabilidade de c?digo e desempenho. Para resolver este problema, estamos oferecendo uma nova linguagem espec?fica de dom?nio (DSL), que naturalmente captura e representa o paralelismo para aplica??es baseadas em fluxo cont?nuo de dados. O objetivo ? oferecer um conjunto de atributos (atrav?s de anota??es) que preservam o c?digo fonte do programa e n?o ? dependente de arquitetura para anotar o paralelismo. Neste estudo foi usado o mecanismo de atributos do C++ para projetar uma DSL embarcada e padronizada com a linguagem hospedeira, que foi nomeada como SPar. No entanto, a implementa??o de DSLs usando ferramentas baseadas em compiladores ? dif?cil, complicado e geralmente requer uma curva de aprendizagem significativa. Isto ? ainda mais dif?cil para aqueles que n?o s?o familiarizados com uma tecnologia de compiladores. Portanto, a motiva??o ? simplificar este caminho para outros pesquisadores (sabedores do seu dom?nio) com ferramentas de apoio (a ferramenta ? chamada de CINCLE) para implementar DSLs produtivas e de alto n?vel atrav?s de poderosas e agressivas transforma??es de fonte para fonte. Na verdade, desenvolvedores que criam programas com paralelismo podem usar suas habilidades sem ter que projetar e implementar o c?digo de baixo n?vel. O principal objetivo desta tese foi criar uma DSL e ferramentas de apoio para paralelismo de fluxo cont?nuo de alto n?vel no contexto de um framework de programa??o que ? baseado em compilador e orientado a dom?nio. Assim, SPar foi criado usando CINCLE. SPar oferece apoio ao desenvolvedor de software com produtividade, desempenho e portabilidade de c?digo, enquanto CINCLE oferece o apoio necess?rio para gerar novas DSLs. Tamb?m, SPar mira transforma??o de fonte para fonte produzindo c?digo de padr?es paralelos no topo de FastFlow e MPI. Por fim, temos um conjunto completo de experimentos demonstrando que SPar oferece melhor produtividade de c?digo sem degradar significativamente o desempenho em sistemas multi-core bem como regras de transforma??es que s?o capazes de atingir a portabilidade de c?digo (para arquiteturas multi-computador) atrav?s dos seus atributos gen?ricos.
|
7 |
Algoritmo evolutivo paralelo para o problema de atribui??o de localidades a an?is em redes sonet/sdh / Parallel evolutionary algorithm to the sonet/sdh ring assigment problemOliveira, Wagner de 17 March 2010 (has links)
Made available in DSpace on 2014-12-17T14:52:49Z (GMT). No. of bitstreams: 1
WagnerO_DISSERT.pdf: 4964124 bytes, checksum: 34ed6ffd6dcd720ddf12631ffd06a3d6 (MD5)
Previous issue date: 2010-03-17 / The telecommunications play a fundamental role in the contemporary society, having as one of its main roles to give people the possibility to connect them and integrate them into society in which they operate and, therewith, accelerate development through knowledge. But as new technologies are introduced on the market, increases the demand for new products and services that depend on the infrastructure offered, making the problems of planning of telecommunication networks become increasingly large and complex. Many of these problems,
however, can be formulated as combinatorial optimization models, and the use of heuristic algorithms can help solve these issues in the planning phase. This paper proposes the
development of a Parallel Evolutionary Algorithm to be applied to telecommunications problem known in the literature as SONET Ring Assignment Problem SRAP. This problem is
the class NP-hard and arises during the physical planning of a telecommunication network and consists of determining the connections between locations (customers), satisfying a series of
constrains of the lowest possible cost. Experimental results illustrate the effectiveness of the Evolutionary Algorithm parallel, over other methods, to obtain solutions that are either optimal
or very close to it / As telecomunica??es desempenham um papel fundamental na sociedade contempor?nea, tendo como um de seus principais pap?is o de conceder ?s pessoas a possibilidade de conect?-las e
integr?-las ? sociedade em que vivem e com isso acelerar o desenvolvimento por meio do conhecimento. Mas, ? medida que novas tecnologias s?o introduzidas no mercado, cresce tamb?m a demanda por novos produtos e servi?os que dependem da infraestrutura oferecida, tornando os problemas de planejamento de redes de telecomunica??es cada vez maiores e mais complexos. Muitos desses problemas, no entanto, podem ser formulados como modelos de Otimiza??o Combinat?ria, e o uso de algoritmos heur?sticos podem ajudar a solucionar essas
quest?es da fase de planejamento. Este trabalho prop?e o desenvolvimento de um Algoritmo Evolutivo paralelo a ser aplicado ao problema de telecomunica??es conhecido na literatura por Problema de Atribui??o de Localidades a An?is em Redes SONET/SDH ou PALAS. Esse problema ? da classe NP-dif?cil e surge durante a etapa do planejamento f?sico da rede e consiste na determina??o das conex?es entre localidades (clientes), de modo a satisfazer uma s?rie de restri??es ao menor custo poss?vel. Os resultados dos experimentos ilustram a
efici?ncia do Algoritmo Evolutivo paralelo, sobre outros m?todos, em obter solu??es ?timas ou muito pr?ximas do valor ?timo
|
Page generated in 0.0613 seconds