OpenMPI - Instalação de uma aplicação paralela

Este artigo tem o objetivo de descrever os passos necessários para implementar uma aplicação paralela (OpenMPI) e verificar
como o é o processamento distribuído entre os hosts.

[ Hits: 33.365 ]

Por: Gilberto Pereira dos Anjos Lima em 19/10/2011


Analisando os resultados



12. Você pode analisar como os recursos de hardware da máquina se comportam utilizando o comando mpstat. Basta apenas abrir uma outra janela da sua máquina e digitar:

mpstat x y

* Onde o "x" é de quanto em quanto segundos ele irá fazer a coleta, e o "y" quantas vezes ele irá coletar.

Experimente:

mpstat 1 (coletando a cada segundo, até o comando ser interrompido com ctrl + c).

Com o mpstat em uma outra janela é possível analisar, mas se por acaso optar por criar um log, pode seguir com o passo 12B.

12B. Redirecionando o vmstat para um arquivo.

Crie um arquivo qualquer com o seguinte conteúdo (chamei de mpilog.sh):

#!/bin/bash
   while true;do
      mpstat 1 > mpstat.log
   sleep 1
done

Ele irá fazer a coleta das informações de hardware enquanto o programa é executado.

Altere as permissões para:

chmod 775 mpilog.sh

Execute o arquivo em background:

./mpilog.sh &

Agora rode o ompi em apenas 1 máquina. Quando terminar o processamento, precisará também encerrar processo do mpstat.

fg
Tecle: Ctrl + c

Conclusão

13. Apresentando os resultados

Após auxílio da ferramenta mpstat para coletar como foi o comportamento do hardware ao executar a aplicação, é possível notar que no 1° caso (execução do programa em apenas 1 uma máquina), o processamento foi mais rápido do que no 2° caso (execução do programa com 2 máquinas), isto devido haver broadcast na rede "ao procurar o outro host".

O real ganho é que em 1 máquina o hardware será muito mais consumido, com 2 máquinas o processamento ficará em torno de 50% pra cada máquina. Imagine-se então quando o processamento for absurdo, seria inviável rodar 10000 instâncias em apenas 1 máquina.

Obs.: As máquinas foram reiniciadas a cada teste, isto para obter um cenário mais próximo de como foi o comportamento de desempenho.

14. Caso precisem das máquinas utilizadas, disponibilizei o conteúdo em:
Gilberto A Lima

Página anterior    

Páginas do artigo
   1. Introdução
   2. Execução OpenMPI
   3. Analisando os resultados
Outros artigos deste autor

Minix - Instalação e configuração básica

Leitura recomendada

Snort - Gerenciamento de redes

OTRS - Revolucione seu Help Desk com esta ferramenta

Configurando sua gravadora no Linux

Virtualização de desktops, uma solução econômica?

Instalando o CACIC no Debian Linux

  
Comentários
[1] Comentário enviado por dennis.leandro em 20/10/2011 - 10:47h

Muito bom artigo!
Assunto muito interessante, e de facil entendimento!
Parabeens!

[2] Comentário enviado por douglas.giorgio em 30/10/2011 - 18:00h

e dpois, pra que eu posso usar isso?? eu sempre fiz isso mas nunca fiz algo alem disso está no artigo

quero diser, como eu executo um programa?? gimp, interface grafica, sql e outras coisas??

[3] Comentário enviado por gilbertoalima em 01/11/2011 - 00:11h

$DouglasFim


MPI é o conceito sobre computação paralela.

O OMPI é um dos softwares mais comuns e free que interage com este conceito, o artigo visa apenas um conhecimento simples para mostrar como é funcionamento.

Ele pode rodar programas em C, interface gráfica etc, entretanto isso seria complexo, mas existe diversos de outros programas além de um 'hello world' disponiveis para download no próprio site:

¹(http://www.open-mpi.org/hg/hgwebdir.cgi/ompi-svn-mirror/summary)

Para rodar os programas citados acima sobre o paralelismo, será necessário a utilização de outros softwares, do GIMP sinceramente eu desconheço, mas do SQL poderia utilizar o BizTalk Server :

²(http://www.microsoft.com/biztalk/en/us/overview.aspx)

att,

[4] Comentário enviado por jeansg em 17/08/2012 - 03:37h

Muito bom o Artigo !

[5] Comentário enviado por cristian-redes em 28/11/2013 - 02:18h

Amigo, voce consegue a senha das maquinas virtuais suas? Gostaria de testar, mais estou tendo dificuldades de instalação..
Se puder conseguir agradeço.

[6] Comentário enviado por gilbertoalima em 29/11/2013 - 13:52h

Fala cristian, beleza ?

Users: ompi1, ompi2, root
Senha: ompi

Att

[7] Comentário enviado por cicerocarlos em 13/11/2014 - 01:29h

Prezado
Tenho um cluster com suse server para processamento compartilhado, entretanto, para análise que precisa de memória ram não ocorre compartilhamento de mémoria ram, sendo usanda somente a memória do nó de execução do programa (velvet). Existe como configurar para compartilhar memória?

Att,
Cícero

[8] Comentário enviado por gilbertoalima em 13/11/2014 - 11:38h

Cicero,
Se a aplicação suportar, sim.

Pra ter certeza teria que conhecer o que é este "velvet", como funciona, no que roda etc.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts