http://repositorio.unb.br/handle/10482/2175
Arquivo | Descrição | Tamanho | Formato | |
---|---|---|---|---|
2006_Marcelo Nardelli Pinto Santana.pdf | 1,88 MB | Adobe PDF | Visualizar/Abrir |
Título: | Alocação de tarefas paralelas comunicantes em ambientes distribuídos heterogêneos |
Autor(es): | Santana, Marcelo Nardelli Pinto |
Orientador(es): | Melo, Alba Cristina Magalhães Alves de |
Assunto: | Programação paralela (Computação) Redes e sistemas distribuídos |
Data de publicação: | 2006 |
Data de defesa: | 2006 |
Referência: | SANTANA, Marcelo Nardelli Pinto. Alocação de tarefas paralelas comunicantes em ambientes distribuídos heterogêneos . 2006. 109 f. Dissertação (Mestrado em Informática)-Universidade de Brasília, Brasília, 2006. |
Resumo: | Sistemas distribuídos têm sido cada vez mais utilizados na resolução de problemas
que demandam grande quantidade de tempo de processamento, por permitirem
a utilização simultânea de vários recursos computacionais. Diversas máquinas
com arquiteturas distribuídas foram propostas ao longo dos anos. Entre essas
arquiteturas, estão os clusters de computadores, que são sistemas distribuídos
formados por estações de trabalho interligadas e que podem atingir um bom
desempenho a um custo relativamente baixo.
Entretanto, para que a utilização de tais sistemas seja proveitosa, é necessário
que a utilização dos recursos disponíveis seja feita de maneira a permitir a otimização
de algum critério. A alocação de tarefas em um sistema distribuído visa
determinar como serão utilizados os processadores do sistema de modo a otimizar
um critério, que grande parte das vezes é o tempo de execução de uma aplicação.
Diversas abordagens já foram propostas para o problema de alocação de tarefas,
que é um problema NP-Completo, incluindo algoritmos heurísticos e estratégias
específicas para determinadas aplicações.
Uma aplicação para qual existem diversas implementações em sistemas distribuídos
é a comparação de seqüências biológicas, uma operação básica da biologia
computacional que visa determinar o grau de similaridade entre seqüências. Os
algoritmos ótimos existentes possuem complexidade de tempo e espaço de O(n2),
sendo baseados na técnica de programação dinâmica e apresentando dependências
de dados do tipo wavefront. O alto custo desses algoritmos justifica a utilização
de sistemas distribuídos na resolução do problema, sendo que a maioria das implementações
distribuídas busca utilizar todos os processadores disponíveis no
sistema distribuído, de modo a minimizar a tempo de execução.
A presente dissertação propõe um framework de alocação de tarefas de aplicações
de comparação de seqüências biológicas baseadas em programação dinâmica,
além de quatro estratégias de alocação de tarefas. O framework e as estratégias
de alocação foram implementados em um cluster de 10 máquinas. Os resultados
mostram que, para seqüências relativamente pequenas, a utilização de todos
os processadores disponíveis não é a opção mais vantajosa. Por isso mesmo, a
utilização de políticas de alocação que levem em consideração o tamanho das
seqüências e as características das máquinas disponíveis pode permitir a redução
no tempo de execução da aplicação. ____________________________________________________________________________________________ ABSTRACT Distributed systems have been widely used in the resolution of problems that demand a large amount of processing time, because they allow the simultaneous utilization of many computational resources. Many machines with a distributed architecture have been proposed during the years. Among these are computer clusters, which are distributed systems composed of interconnected workstations and that may achieve a good performance at a relatively low cost. However, in order to take advantage of distributed systems, the available resources must be used in such a way that some criteria can be optimized. Task allocation in distributed systems aims at determine how the processors available in the system are going to be used, so that a criteria, which in many cases is the execution time of an application, is optimized. Many approaches have been proposed to the task allocation problem, which is NP-Complete, including heuristic algorithms and application specific strategies. There are many proposed distributed implementations of the biological sequence comparison application, which is a basic operation in computational biology that determines the similarity degree between sequences. The optimal algorithms available have time and space complexities in O(n2) , are based in the dynamic programming technique and present data dependencies that follow the wavefront pattern. The high costs of these algorithms justifies the utilization of distributed systems. Most of the known distributed implementations try to use all available processors in the system, so that the execution time can be minimized. The present document proposes a framework for task allocation for biological sequence comparison applications based on dynamic programming, as well as four task allocation strategies. The framework and the strategies have been implemented in a 10 machine cluster. The results show that, when the sequences are relatively small, using all available processors is not the best decision. For this reason, the utilization of task allocation policies that take into account the sequences size and the machines characteristics may cause the execution time of the application to be reduced. |
Unidade Acadêmica: | Instituto de Ciências Exatas (IE) Departamento de Ciência da Computação (IE CIC) |
Informações adicionais: | Dissertação (mestrado)—Universidade de Brasília, Instituto de Ciências Exatas, Departamento de Ciência da Computação, 2006. |
Programa de pós-graduação: | Programa de Pós-Graduação em Informática |
Aparece nas coleções: | Teses, dissertações e produtos pós-doutorado |
Os itens no repositório estão protegidos por copyright, com todos os direitos reservados, salvo quando é indicado o contrário.