Alocação de Tarefas Paralelas Comunicantes em Ambientes Distribuídos Heterogêneos

AUTOR(ES)
DATA DE PUBLICAÇÃO

2006

RESUMO

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.

ASSUNTO(S)

redes e sistemas distribuídos task allocation programação paralela (computação) sequence comparison ciencia da computacao parallel programming

Documentos Relacionados