·
Medicina Veterinária ·
Linguagens de Programação
Envie sua pergunta para a IA e receba a resposta na hora
Texto de pré-visualização
Trabalho obrigatório para A 1 Grupos de no máximo 5 integrantes Valor até 10 0pts d a Atividade I ndividual Avaliativa AIA de A1 Data Limite de envio pelo Sistema Canvas 13 0 4 202 1 2359hs O arquivo deverá ser entregue em documento do Word conforme este modelo por todos os componentes do grupo individualmente Obrigatório Matrícula Nome Completo Matrícula Nome Completo Matrícula Nome Completo Matrícula Nome Completo Matrícula Nome Completo Questão Única 10 0 pts Criar uma Aplicação Paralela em Linguagem C com uso da biblioteca MPI O objetivo desta aplicação é utilizar as séries de Taylor para o cálculo do seno e do cosseno de um determinado ângulo com o intuito de calcular a tangente deste ângulo Formulário Fórmula para o cálculo do seno é usada a fórmula infinita Sen x x 1 x 3 x 5 x 7 x 9 x 11 1 3 5 7 9 11 fatorial Fórmula para o cálculo do cos s eno é usada a fórmula infinita Cos x x 0 x 2 x 4 x 6 x 8 x 10 0 2 4 6 8 10 Fórmula para o cálculo da tangente é usada a fórmula Tan x sen x cos x Atividades 30 pontos Crie o programa serial para calcular a tangente do ângulo passado como parâmetro na execução do programa Calcule o seno e o cosseno através do uso das séries de Taylor apresentadas anteriormente Realize 4 testes e compare os resultados obtidos do seno cosseno e tangente com os valores reais obtidos em uma calculadora preenchendo a tabela de comparação a seguir Nesta versão serial o número de iterações 1000 10000 100000 e 1000000 deve ser definido de acordo com o número de iterações que apresentar o menor erro nos testes para o valor da tangente Use o mesmo ângulo para os testes Ângulo Modo de cálculo Seno Cosseno Tangente gg mm ss Programa Serial 1000 Calculadora Diferença Erro gg mm ss Programa Serial 10000 Calculadora Diferença Erro gg mm ss Programa Serial 100000 Calculadora Diferença Erro gg mm ss Programa Serial 1000000 Calculadora Diferença Erro 70 pontos Crie o programa paralelo equivalente ao programa serial criado para calcular a tangente do ângulo passado como parâmetro na execução do programa O programa deverá estar preparado para trabalhar de forma otimizada com qualquer quantidade de processos testar com 4 e 8 processadores Realize os mesmos testes e preencha a tabela de comparação a seguir Nesta versão paralela o número de iterações 1000 10000 100000 ou 1000000 deve ser definido de acordo com o número de iterações que apresentar o menor erro nos testes para o valor da tangente Ângulo Modo de cálculo Número de Processos Seno Cosseno Tangente Tempo de execução gg mm ss Programa Serial 1 Programa Paralelo 1000 4 Programa Paralelo 1000 8 gg mm ss Programa Serial 1 Programa Paralelo 10000 4 Programa Paralelo 10000 8 gg mm ss Programa Serial 1 Programa Paralelo 100000 4 Programa Paralelo 100000 8 gg mm ss Programa Serial 1 Programa Paralelo 1000000 4 Programa Paralelo 1000000 8 Analise os tempos de execução da versão serial comparada com os tempos de execuç ão das versões paralelas do primeiro exemplo determine qual versão executou mais rápido e explique por que esta versão foi a mais rápida Apresente a codificação do programa serial criado T angente serial c versão serial Formate o código com Fonte Consolas tamanho 8 e mantenha a identação Apresente a codificação do programa paralelo criado T angente Paralelo c versão paralela criada Formate o código com Fonte Consolas tamanho 8 e mantenha a identação Dicas Como temos termos positivos e termos negativos você pode usar um processo para as somas e outro para as subtrações Para executar use como parâmetros conforme no exemplo do PI onde é passada a quantidade de interação com o ângulo no formato gg mm ss Exemplo de execução paralela mpirun np 4 hostfile hosts tangente exe 30 15 55 10000 Verifica se os parâmetros foram passados tangente os 4 parâmetros if argc 5 printf Erro de argumentos USO tangente gg mm ss anguloem graus minutos e segundos printf Informe também o número de interações printf Exemplo prático de uso tangente 30 15 55 10000 exit 1 Conversão de gg mm ss para radianos double PI 31415926535897932384626433832795 ang double atof argv 1 atof argv 2600 atof argv 336000 argumento 1 graus argumento 2 minutos argumento 3 segundos ang ang PI1800 Não se esqueça de passar o número de interações que serão utilizadas no programa como parâmetro da chamada do programa Recebendo o número de interações int numI int atoi argv 4 Para calcular o tempo de execução Ao inicializar if rank0 tempoI nicial MPI Wtime Função MPI para pegar o tempo do relógio do computador Antes de finalizar if rank 0 tempoF inal MPI Wtime Função MPI para pegar o tempo do relógio do computador printf Tempo Inicialf fabs tempoI inicial printf Tempo Finalf fabs tempoF inal printf Tempo Decorridof fabs tempo Final tempo Inicial Obs Para o cálculo do tempo no programa serial utilize a biblioteca timeh fazendo uma pesquisa sobre o tempo de execução de um programa na linguagem C
Envie sua pergunta para a IA e receba a resposta na hora
Texto de pré-visualização
Trabalho obrigatório para A 1 Grupos de no máximo 5 integrantes Valor até 10 0pts d a Atividade I ndividual Avaliativa AIA de A1 Data Limite de envio pelo Sistema Canvas 13 0 4 202 1 2359hs O arquivo deverá ser entregue em documento do Word conforme este modelo por todos os componentes do grupo individualmente Obrigatório Matrícula Nome Completo Matrícula Nome Completo Matrícula Nome Completo Matrícula Nome Completo Matrícula Nome Completo Questão Única 10 0 pts Criar uma Aplicação Paralela em Linguagem C com uso da biblioteca MPI O objetivo desta aplicação é utilizar as séries de Taylor para o cálculo do seno e do cosseno de um determinado ângulo com o intuito de calcular a tangente deste ângulo Formulário Fórmula para o cálculo do seno é usada a fórmula infinita Sen x x 1 x 3 x 5 x 7 x 9 x 11 1 3 5 7 9 11 fatorial Fórmula para o cálculo do cos s eno é usada a fórmula infinita Cos x x 0 x 2 x 4 x 6 x 8 x 10 0 2 4 6 8 10 Fórmula para o cálculo da tangente é usada a fórmula Tan x sen x cos x Atividades 30 pontos Crie o programa serial para calcular a tangente do ângulo passado como parâmetro na execução do programa Calcule o seno e o cosseno através do uso das séries de Taylor apresentadas anteriormente Realize 4 testes e compare os resultados obtidos do seno cosseno e tangente com os valores reais obtidos em uma calculadora preenchendo a tabela de comparação a seguir Nesta versão serial o número de iterações 1000 10000 100000 e 1000000 deve ser definido de acordo com o número de iterações que apresentar o menor erro nos testes para o valor da tangente Use o mesmo ângulo para os testes Ângulo Modo de cálculo Seno Cosseno Tangente gg mm ss Programa Serial 1000 Calculadora Diferença Erro gg mm ss Programa Serial 10000 Calculadora Diferença Erro gg mm ss Programa Serial 100000 Calculadora Diferença Erro gg mm ss Programa Serial 1000000 Calculadora Diferença Erro 70 pontos Crie o programa paralelo equivalente ao programa serial criado para calcular a tangente do ângulo passado como parâmetro na execução do programa O programa deverá estar preparado para trabalhar de forma otimizada com qualquer quantidade de processos testar com 4 e 8 processadores Realize os mesmos testes e preencha a tabela de comparação a seguir Nesta versão paralela o número de iterações 1000 10000 100000 ou 1000000 deve ser definido de acordo com o número de iterações que apresentar o menor erro nos testes para o valor da tangente Ângulo Modo de cálculo Número de Processos Seno Cosseno Tangente Tempo de execução gg mm ss Programa Serial 1 Programa Paralelo 1000 4 Programa Paralelo 1000 8 gg mm ss Programa Serial 1 Programa Paralelo 10000 4 Programa Paralelo 10000 8 gg mm ss Programa Serial 1 Programa Paralelo 100000 4 Programa Paralelo 100000 8 gg mm ss Programa Serial 1 Programa Paralelo 1000000 4 Programa Paralelo 1000000 8 Analise os tempos de execução da versão serial comparada com os tempos de execuç ão das versões paralelas do primeiro exemplo determine qual versão executou mais rápido e explique por que esta versão foi a mais rápida Apresente a codificação do programa serial criado T angente serial c versão serial Formate o código com Fonte Consolas tamanho 8 e mantenha a identação Apresente a codificação do programa paralelo criado T angente Paralelo c versão paralela criada Formate o código com Fonte Consolas tamanho 8 e mantenha a identação Dicas Como temos termos positivos e termos negativos você pode usar um processo para as somas e outro para as subtrações Para executar use como parâmetros conforme no exemplo do PI onde é passada a quantidade de interação com o ângulo no formato gg mm ss Exemplo de execução paralela mpirun np 4 hostfile hosts tangente exe 30 15 55 10000 Verifica se os parâmetros foram passados tangente os 4 parâmetros if argc 5 printf Erro de argumentos USO tangente gg mm ss anguloem graus minutos e segundos printf Informe também o número de interações printf Exemplo prático de uso tangente 30 15 55 10000 exit 1 Conversão de gg mm ss para radianos double PI 31415926535897932384626433832795 ang double atof argv 1 atof argv 2600 atof argv 336000 argumento 1 graus argumento 2 minutos argumento 3 segundos ang ang PI1800 Não se esqueça de passar o número de interações que serão utilizadas no programa como parâmetro da chamada do programa Recebendo o número de interações int numI int atoi argv 4 Para calcular o tempo de execução Ao inicializar if rank0 tempoI nicial MPI Wtime Função MPI para pegar o tempo do relógio do computador Antes de finalizar if rank 0 tempoF inal MPI Wtime Função MPI para pegar o tempo do relógio do computador printf Tempo Inicialf fabs tempoI inicial printf Tempo Finalf fabs tempoF inal printf Tempo Decorridof fabs tempo Final tempo Inicial Obs Para o cálculo do tempo no programa serial utilize a biblioteca timeh fazendo uma pesquisa sobre o tempo de execução de um programa na linguagem C