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

Análise automática de acessos concorrentes a dados para refatoração de código sequencial em código paralelo OpenMP / Automatic analysis of concurrent access data for sequential code refactoring in OpenMP parallel code

Tietzmann, Dionatan Kitzmann 16 December 2011 (has links)
The manual transformation of sequential programs into parallel code is not an easy task. It requires very effort and attention of the developer during this process at great risk of introducing errors that can not be perceived by the programmer. One of these problems, strongly connected to shared memory parallel programming is the race condition. This problem occurs because of the simultaneous manipulation performed for more than a thread on a variable shared between them, with the result of this variable dependent of the access order. Exploring this difficulty, this work proposes an approach that helps the programmer during the refactoring of a sequential code for OpenMP parallel code, identifying variables in an automated manner that may have problems of race condition. To this end, we propose a verification algorithm based on access to the variables and made its implementation using the Photran framework tool (a plugin for editing FORTRAN code integrated into the Eclipse IDE). For purposes of empirical evaluation of the algorithm, we present tests with small programs and code examples showing the operation of the tool in the cases provided. In addition, it presents a case study based on a real and complex application, showing the ability of the algorithm to identify all the variables at risk, as well as illustrating some of its known limitations. / A transformação manual de programas sequenciais em código paralelo não é uma tarefa fácil. Ela requer muito esforço e atenção do programador durante esse processo, correndo grande risco de se introduzir erros que podem não ser percebidos pelo programador. Um desses problemas, fortemente ligado à programação paralela em memória compartilhada, é a condição de corrida. Esse problema ocorre em virtude da manipulação concomitante realizada por mais de uma thread sobre uma variável compartilhada entre elas, sendo o resultado desta variável dependente da ordem de acesso. Explorando essa dificuldade, este trabalho propõe uma abordagem que auxilie o programador durante a refatoração de código sequencial para código paralelo OpenMP, identificando de forma automatizada variáveis que podem vir a ter problemas de condição de corrida. Para tanto, é proposto um algoritmo de verificação baseado no acesso às variáveis e feita a sua implementação utilizando-se do framework da ferramenta Photran (um plugin para edição de código Fortran integrado ao IDE Eclipse). Para fins de avaliação empírica do algoritmo, apresentam-se testes realizados com pequenos programas e exemplos de código, mostrando o funcionamento da ferramenta nos casos previstos. Além disso, apresenta-se um estudo de caso baseado em uma aplicação real e complexa, mostrando a habilidade do algoritmo em identificar as variáveis em risco, bem como ilustrando algumas de suas limitações conhecidas.

Page generated in 0.051 seconds