• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 2
  • Tagged with
  • 2
  • 2
  • 2
  • 2
  • 2
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 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.
1

[en] AN ABSTRACTION FOR PARALLEL PROGRAMMING: SUPPORT FOR DEVEDEVELOPING / [pt] ABSTRAÇÃO PARA PROGRAMAÇÃO PARALELA: SUPORTE PARA O DESENVOLVIMENTO DE APLICAÇÕES

PAULO ROGERIO DA MOTTA JUNIOR 09 March 2012 (has links)
[pt] A evolução do campo de programação tradicionalmente troca desempenho por abstrações mais poderosas capazes de simplificar o trabalho do programador. É possível observar os efeitos dessa evolução na área de programação paralela. Tipicamente, a programação paralela se concentra em alto desempenho baseado no paradigma procedural para atingir o mais alto rendimento possível, porém determinar o ponto em que deve-se trocar desempenho por abstrações mais poderosas continua um problema em aberto. Com o advento de novas ferramentas e bibliotecas de sistema que fornecem melhor desempenho sem a intervenção do programador, a crença de que o programador da aplicação deve otimizar o código de comunicação começa a ser questionada. De acordo com a crescente demanda por soluções paralelas de larga escala tornando-se evidentes, problemas como complexidade de código, poder de modelagem e projeto, manutenibilidade, desenvolvimento rápido, maior segurança e reuso, deverão ser considerados quando for necessário decidir que abordagem usar. Nesse trabalho, investigamos o custo do uso de camadas de abstração de mais alto-nível e que podem prover muitos benefícios para desenvolvedores de aplicações paralelas. Além disso argumentamos que o uso de linguagens interpretadas pode ajudar na abstração da arquitetura de processador surgindo a oportunidade para otimizar as máquinas virtuais sem que isso afete o código da aplicação do usuário. / [en] The evolution of the field of programming traditionally trades performance for more powerful abstractions that are able to simplify the programmer’s work. It is possible to observe the effects of this evolution on the parallel programming area. Typically parallel programming focuses on high performance based on the procedural paradigm to achieve the highest possible throughput, but determining the point in which one should trade performance for more powerful abstractions remains an open problem. With the advent of new system level tools and libraries that deliver greater performance without programmer’s intervention, the belief that the application programmer should optimize communication code starts to be challenged. As the growing demand for large scale parallel solutions becomes noticeable, problems like code complexity, design and modeling power, maintainability, faster development, greater reliability and reuse, are expected to take part on the decision of which approach to use. In the present work, we investigate the use of higher-level abstraction layers that could provide many benefits for the parallel application developer. We argue that the use of interpreted languages may aid the abstraction of the processor architecture providing an opportunity to optimize the virtual machines without affecting the user’s application code.
2

[en] A MULTILANGUAGE PROGRAMMING MODEL FOR GEOGRAPHICALLY DISTRIBUTED APPLICATIONS / [pt] UM MODELO DE PROGRAMAÇÃO MULTILINGUAGEM PARA APLICAÇÕES GEOGRAFICAMENTE DISTRIBUÍDAS

CRISTINA URURAHY DA FONTOURA CERQUEIRA 15 March 2004 (has links)
[pt] Neste trabalho propomos usar o ALua, um mecanismo de comunicação orientado a eventos, baseado na linguagem interpretada Lua, para coordenação e desenvolvimento de aplicações paralelas distribuídas. ALua é um modelo de programação dual para aplicações paralelas distribuídas, que age como elemento de ligação, permitindo que partes pré- compiladas do programa sejam executadas em diferentes máquinas. Novas tecnologias em programação paralela, como computação em grade, e o interesse atual em computação distribuída para redes geográficas demandam novos níveis de flexibilidade, como o uso de estratégias de adaptação e a habilidade para um usuário interferir em uma computação sem a necessidade de interrompê-la. Além disso, devido a sua natureza assíncrona, a programação dirigida a eventos oferece um modelo apropriado para ambiente sujeitos a falhas e retardos, que são freqüentes no contexto de redes geográficas. Neste trabalho, mostramos que o ALua pode trazer a flexibilidade desejada, através de mecanismos de adaptação e monitoramento não só de aplicações, mas do próprio ambiente de execução, e ainda tirar proveito de sua natureza interpretada para permitir a intervenção do usuário na aplicação mesmo durante a sua execução. / [en] In this work we propose the use of Alua, an event-driven communication mechanism for coordinating and developing distributed parallel applications, based on the interpreted language Lua. Alua adopts a multilinguage programming model for distributed parallel applications, acting as a gluing element among precompiled program parts running on different machines. New developments in parallel programming, such as Grid computing, and current interest in wide-area distributed computing demand new levels of flexibility, such as the use of adaptive strategies and the ability for an user to interfer with a computation without having to stop it. Furthermore, because of its asynchronous nature, event-driven programming provides a suitable model for environments subject to failures and delays that are frequent in the context of geographically distributed computing. In this work we show that ALua can achieve the required flexibility through mechanisms for monitoring and adapting not only applications, but also the execution environment, and also exploit its interpretive nature to allow the programmer to modify the behavior of the application during its execution.

Page generated in 0.0338 seconds