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

Mapping a Dataflow Programming Model onto Heterogeneous Architectures

Sbirlea, Alina 06 September 2012 (has links)
This thesis describes and evaluates how extending Intel's Concurrent Collections (CnC) programming model can address the problem of hybrid programming with high performance and low energy consumption, while retaining the ease of use of data-flow programming. The CnC model is a declarative, dynamic light-weight task based parallel programming model and is implicitly deterministic by enforcing the single assignment rule, properties which ensure that problems are modelled in an intuitive way. CnC offers a separation of concerns by allowing algorithms to be expressed as a two stage process: first by decomposing a problem into components and specifying how components interact with each other, and second by providing an implementation for each component. By facilitating the separation between a domain expert, who can provide an accurate problem specification at a high level, and a tuning expert, who can tune the individual components for better performance, we ensure that tuning and future development, such as replacement of a subcomponent with a more efficient algorithm, become straightforward. A recent trend in mainstream desktop systems is the use of graphics processor units (GPUs) to obtain order-of-magnitude performance improvements relative to general-purpose CPUs. In addition, the use of FPGAs has seen a significant increase for applications that can take advantage of such dedicated hardware. We see that computing is evolving from using many core CPUs to ``co-processing" on the CPU, GPU and FPGA, however hybrid programming models that support the interaction between multiple heterogeneous components are not widely accessible to mainstream programmers and domain experts who have a real need for such resources. We propose a C-based implementation of the CnC model for enabling parallelism across heterogeneous processor components in a flexible way, with high resource utilization and high programmability. We use the task-parallel HabaneroC language (HC) as the platform for implementing CnC-HabaneroC (CnC-HC), a language also used to implement the computation steps in CnC-HC, for interaction with GPU or FPGA steps and which offers the desired flexibility and extensibility of interacting with any other C based language. First, we extend the CnC model with tag functions and ranges to enable automatic code generation of high level operations for inter-task communication. This improves programmability and also makes the code more analysable, opening the door for future optimizations. Secondly, we introduce a way to specify steps that are data parallel and thus are fit to execute on the GPU, and the notion of task affinity, a tuning annotation in the specification language. Affinity is used by the runtime during scheduling and can be fine-tuned based on application needs to achieve better (faster, lower power, etc.) results. Thirdly, we introduce and develop a novel, data-driven runtime for the CnC model, using HabaneroC (HC) as a base language. In addition, we also create an implementation of the previous runtime approach and conduct a study to compare the performance. Next, we expand the HabaneroC dynamic work-stealing runtime to allow cross-device stealing based on task affinity. Cross-device dynamic work-stealing is used to achieve load balancing across heterogeneous platforms for improved performance. Finally, we implement and use a series of benchmarks for testing the model in different scenarios and show that our proposed approach can yield significant performance benefits and low power usage when using a hybrid execution.
2

Uma abordagem dirigida por modelos para desenvolvimento de middlewares auto-adaptativos para transmiss?o de fluxo de dados baseado em restri??es de QoS / Uma abordagem dirigida por modelos para desenvolvimento de middlewares auto-adaptativos para transmiss?o de fluxo de dados baseado em restri??es de QoS

Silva, Andre Gustavo Pereira da 15 March 2010 (has links)
Made available in DSpace on 2014-12-17T15:47:52Z (GMT). No. of bitstreams: 1 AndreGPS_DISSERT.pdf: 1357503 bytes, checksum: e140d06d3ffeafa9c2f772fa5796fc4d (MD5) Previous issue date: 2010-03-15 / The use of middleware technology in various types of systems, in order to abstract low-level details related to the distribution of application logic, is increasingly common. Among several systems that can be benefited from using these components, we highlight the distributed systems, where it is necessary to allow communications between software components located on different physical machines. An important issue related to the communication between distributed components is the provision of mechanisms for managing the quality of service. This work presents a metamodel for modeling middlewares based on components in order to provide to an application the abstraction of a communication between components involved in a data stream, regardless their location. Another feature of the metamodel is the possibility of self-adaptation related to the communication mechanism, either by updating the values of its configuration parameters, or by its replacement by another mechanism, in case of the restrictions of quality of service specified are not being guaranteed. In this respect, it is planned the monitoring of the communication state (application of techniques like feedback control loop), analyzing performance metrics related. The paradigm of Model Driven Development was used to generate the implementation of a middleware that will serve as proof of concept of the metamodel, and the configuration and reconfiguration policies related to the dynamic adaptation processes. In this sense was defined the metamodel associated to the process of a communication configuration. The MDD application also corresponds to the definition of the following transformations: the architectural model of the middleware in Java code, and the configuration model to XML / A utiliza??o da tecnologia de middleware em diversos tipos de sistemas, com a finalidade de abstrair detalhes de baixo n?vel relacionados com a distribui??o da l?gica da aplica??o, ? cada vez mais frequente. Dentre diversos sistemas que podem ser beneficiados com a utiliza??o desses componentes, podemos destacar os sistemas distribu?dos, onde ? necess?rio viabilizar a comunica??o entre componentes de software localizados em diferentes m?quinas f?sicas. Uma importante quest?o relacionada ? comunica??o entre componentes distribu?dos ? o fornecimento de mecanismos para gerenciamento da qualidade de servi?o. Este trabalho apresenta um metamodelo para modelagem de middlewares baseados em componentes que prov?em ? aplica??o a abstra??o da comunica??o entre componentes envolvidos em um fluxo de dados, independente da sua localiza??o. Outra caracter?stica do metamodelo ? a possibilidade de auto-adapta??o relacionada ao mecanismo de comunica??o utilizado, seja atrav?s da atualiza??o dos valores dos seus par?metros de configura??o, ou atrav?s da sua substitui??o por outro mecanismo, caso as restri??es de qualidade de servi?o especificadas n?o estejam sendo garantidas. Nesse prop?sito, ? previsto o monitoramento do estado da comunica??o (aplica??es de t?cnicas do tipo feedback control loop), analisando-se m?tricas de desempenho relacionadas. O paradigma de Desenvolvimento Dirigido por Modelos foi utilizado para gerar a implementa??o de um middleware que servir? como prova de conceito do metamodelo, e as pol?ticas de configura??o e reconfigura??o relacionadas com o processo de adapta??o din?mica; neste sentido, foi definido o metamodelo associado ao processo de configura??o de uma comunica??o. A aplica??o da t?cnica de MDD corresponde ainda ? defini??o das seguintes transforma??es: do modelo arquitetural do middleware para c?digo em linguagem Java, e do modelo de configura??o para c?digo XML

Page generated in 0.0883 seconds