1 / 17

Paraleliza o do C lculo da S rie de Fourier usando Java RMI por Maur cio Moraes

Caminho da Apresentao. Viso geralO problemaA implementaoResultadosConcluses. Viso Geral. Objeto do estudo:Um benchmark seqencial (de tipo kernel) obtido no frum Java Grande que calcula o n primeiros coeficientes de Fourier (onde n dado pelo usurio)O que foi feito: O benchmark foi

olesia
Download Presentation

Paraleliza o do C lculo da S rie de Fourier usando Java RMI por Maur cio Moraes

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


    1. Paralelização do Cálculo da Série de Fourier usando Java RMI por Maurício Moraes

    2. Caminho da Apresentação Visão geral O problema A implementação Resultados Conclusões

    3. Visão Geral Objeto do estudo: Um benchmark seqüencial (de tipo kernel) obtido no fórum Java Grande que calcula o n primeiros coeficientes de Fourier (onde n é dado pelo usuário) O que foi feito: O benchmark foi paralelizado utilizando-se a tecnologia Java/RMI Objetivo: Verificar as diferenças de desempenho entre as versões sequencial e paralela para demostrar os ganhos e perdas em desempenho das duas soluções

    4. O Problema Em 1807, Joseph Fourier submeteu um artigo à Academia de Ciências de Paris. Este artigo continha uma descrição matemática de problemas envolvendo condução térmica De acordo com Fourier, qualquer função periódica F(t) pode ser representada por um série infinita na forma:

    5. Cálculo dos Coeficientes Os coeficientes a0 an e bn são calculados pelas fórmulas:

    6. Algoritmo Seqüencial O algoritmo utilizado aqui calcula os primeiros n coeficientes da função (x+1)^x definidos no intervalo [0,2], onde n é um número arbitrário dado como parâmetro: Entrada: n Saída: R[2][n] 1: R[0][0]:= cálculo de a0 2: para i= 1 até n faça 3: R[0][i]:= cálculo de an 4: R[1][i]:= cálculo de bn 5: fim para 6: retorna R

    7. Paralelização

    8. Algoritmo Paralelo Entrada: n, SERV_NAMES[k] Saída: R[2][n] 1: t:= (n/k) 2: para i:= 1 até t faça 3: cria thread T 4: T executa remotamente calc(Iinicial, Ifinal) 5: fim para 6: espera por todas as threads (join) 7: R = resultados organizados remote R[2][If-Ii] calc(int Ii,int If):: 0: x:= If - Ii 1: se (Ii==0) então R[0][0]:= cálculo de a0 2: para i= 1 até x faça 3: R[0][i]:= cálculo de ax 4: R[1][i]:= cálculo de bx 5: fim para 6: retorna R

    9. Implementação Paralela Paralelizar o algoritmo seqüencial implicou em: sincronizar o acesso às variáveis globais Adaptar o método calculador dos coeficientes para reber um intervalo parametrizado Criar uma estrutura para execução RMI: disparar os servidores particionar o problema distribuir tarefas coletar todos os resultados fornecer a resposta

    10. Configurações e Speed-up Poncho: SparcStation 20 guaiaca: UltraSparc 10 coisa: Athlon 1 Ghz andrews: Pentium III 1GHz Indiana: Pentium III 1GHz

    11. Resultados: 50 coeficientes

    12. Resultados: 100 coeficientes

    13. Resultados: 500 coeficientes

    14. Resultados: 1000 coeficientes

    15. Resultados: 2000 coeficientes

    16. Resultados do Primos Dados de apenas uma máquina (sem paralelização)

    17. Considerações Finais e Observações O resultados obtidos mostram que o aumento de desempenho que se espera obter pela divisão do problema depende, entre outros (velocidade/carga da rede, utilização dos nodos), de 2 fatores: a capacidade computacional dos nodos remotos em relação à capacidade da máquina disponível para o cálculo seqüencial o número de coeficientes a ser calculado. O desempenho é prejudicado se o tamanho das tarefas for pequeno (menor que aproximadamente 50 coeficientes calculados por máquina) Além disso, observou-se que a sobrecarga imposta pelo mecanismo de RMI (SUN/JDK 1.4.1) é de aproximadamente 4,1s para a máquina mais lenta e de 0,9s para a máquina mais rápida

More Related