teste
Tiago M. Rohde, Luciano Destefani, Edilaine R. Ferrari, Rogério Martins
Departamento de Ciências Exatas e Engenharias - Universidade Regional do Noroeste do Estado do Rio Grande do Sul (UNIJUI)
Rua do Comércio, 3000, Bairro Universitário CEP 98700-000 - Ijuí – RS - Brasil
{tiago.mri, lucianodestefani, edinharevers}@hotmail.com, rogerio@aezon.com Resumo. Tendo em vista o atual crescimento do número de núcleos na área de arquitetura de processadores, este artigo busca apresentar uma nova técnica de cálculo da fórmula de Fibonacci. Serão apresentadas diversas técnicas de paralelização em threads, cada qual com suas vantagens e desvantagens, sendo realizada uma análise do tempo de processamento de cada algoritmo.
Introdução
A programação paralela baseia-se na execução de diferentes partes, simultaneamente, de um mesmo processo. Essa execução simultânea é utilizada para otimizar o programa, diminuindo assim, o tempo total de processamento e obtendo maior desempenho, conforme Machado; Maia (2002).
De acordo com Menezes, et al (2011), vários dos algoritmos foram desenvolvidos para serem executados em apenas um dos núcleos do processador, perdendo poder de processamento. Com a técnica de divisão de blocos de código em threads a execução do
Algoritmo acontece de forma conjunta, ou seja, um bloco é executado em um núcleo e os demais nos outros, fazendo com que o programa execute mais rápido.
Um dos problemas encontrados, conhecido como Overhead, acontece quando se cria um número de threads além da capacidade de gerenciamento de threads do processador, ou até mesmo quando se cria threads para executar tarefas muito pequenas, perde-se muito tempo na criação destas, conforme Maia (1998).
1. A importância do Uso de Threads
Atualmente uma das soluções encontradas para resolver a parte ociosa do processador é utilizar threads,