Encerrado

Implementar programa em C sobre threads

Este projeto recebeu 1 ofertas de freelancers talentosos com uma oferta média de preço de €250 EUR.

Obtenha orçamentos gratuitos para um projeto como este
Orçamento do projeto
N/A
Total de Ofertas
1
Descrição do projeto

Implementar um programa em C no qual dado um número ele calcule o fatorial desse número. Tal programa ainda deve ser feito de forma que:<br /><br />A função que calcula o fatorial deve ser implementado utilizando Pthreads no Linux;<br /><br />Utilizando threads, paralelize o calculo do fatorial de forma que este possa ser executado por: 1, 2, 4 e 8 threads. Ou seja, o programa deve receber o número que será calculado o fatorial e deve dar a opção desse calculo ser feito sequencialmente em 1 thread ou paralelo em 2, 4, ou 8 threads.<br /><br />Faça testes com o seu programa e descreva esses testes. Tal descrição e testes deve conter no mínimo:<br /><br />Especificações do hardware que executou os testes (principalmente quantidade de CPUs disponíveis);<br /><br />Tempo de execução do programa, com pelo menos, três números diferentes (x, y e z) para se calcular o fatorial. Exemplo, calcular o fatorial do número 100, depois calcular de um número muito maior que 100 - que exija muito da CPU - e por fim calcular de um número muito, muito grande – utilize números que exijam muito da CPU, de forma que haja diferenças acentuadas (minutos) no tempo de processamento desses números. Cada um desses números devem ser executados obrigatoriamente com 1, 2, 4 e 8 threads (então serão no total 12 testes/execuções).<br /><br />Apresentar um gráfico que represente o ganho ou a perda de desempenho para cada um dos testes realizados (gráfico no estilo speedup, tal como o professor apresentou em sala no problema do somatório – na Internet tem exemplos).

Querendo fazer dinheiro?

  • Defina seu orçamento e o prazo de entrega
  • Descreva sua proposta
  • Receba pelo seu trabalho

Contratar freelancers que também ofereça neste projeto

    • Forbes
    • The New York Times
    • Time
    • Wall Street Journal
    • Times Online