Pergunta

Estou tentando configurar um cluster MPI. Mas tenho o problema de que o número de CPUs adicionado ao arquivo mpd.conf não é usado corretamente. Eu tenho três servidores Ubuntu. Opteron com 48 núcleos calc1 com 8 núcleos calc2 com 8 núcleos.

Meu mpd.hosts parece:
opteron:46
calc1:6
calc2:6

Após a inicialização (mpdboot -n 3 -f mpd.hosts), o sistema está em execução. MPDTRACE -> Todos os três estão listados.

Mas a execução de um programa como "Mpiexec -n 58 Raxmlhpc -mpi ..." causa que o Calc1 e o Calc2 chegam a muitos empregos e Opteron chega a poucos ao mesmo tempo. O que estou fazendo errado?

Cumprimentos

BJOERN

Foi útil?

Solução

Eu encontrei uma solução alternativa. Usei o parâmetro adicional "-Machinefile /path/to/mpd.hosts" para o comando mpiexec. E agora, todos os nós estão funcionando corretamente. Um problema que tive foi que recebi a seguinte mensagem de erro:

... mpiu_shmw_seg_create_attach_templ (671): Falha aberta - nenhum arquivo ou diretório ...

Para consertar, tive que definir a variável de ambiente MPICH_NO_LOCAL=1

Outras dicas

Como você descobriu, você deve passar o arquivo de máquina para ambos mpdboot e mpiexec Para usar a contagem de processos por host. O problema "Open Falha" é um bug conhecido no MPD, o gerenciador de processos que você está usando. Observe que o MPICH_NO_LOCAL=1 A solução alternativa funcionará, mas provavelmente resultará em uma grande penalidade de desempenho pela comunicação intranode.

Você está claramente usando o MPICH2 (ou um derivado MPICH2), mas não está claro qual versão você está usando. Se você puder, recomendo fortemente a atualização para o MPICH2 1.2.1p1 ou (melhor ainda) 1.3.1. Ambos os lançamentos incluem um gerente de processo mais recente chamado hidra Isso é muito mais rápido e mais robusto. Em 1.3.1, o Hydra é o gerenciador de processos padrão. Não requer um mpdboot fase, e suporta um $HYDRA_HOST_FILE variável de ambiente para que você não precise especificar o arquivo da máquina em cada mpiexec.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top