mpiexec.hydra - jak uruchomić proces MPI na maszynach, na których lokalizacje hydra_pmi_proxy są różne?
Próbuję uruchomić prosty program MPI, używając MPICH przez klaster dwóch maszyn. Jednak jeden z nich uruchamia Fedorę 17, a drugi uruchamia Squeeze Debiana - niekoniecznie problem, ale problem polega na tym, że dwie dystrybucje umieszczają swoje mpi execs w różnych katalogach:
Kiedy uruchomię następujące polecenie z hosta 1:
mpiexec -hosts host2 -np 1 -wdir /home/chris/src/mpi/ ./mpitest
kończy się niepowodzeniem z następującym błędem
bash: /usr/lib/mpich2/bin/hydra_pmi_proxy: No such file or directory
Wydaje się, że tak jesthydra_pmi_proxy
jest zainstalowany w/usr/lib/mpich2/bin
na komputerze Fedory, ale w/usr/bin
na maszynie Debiana. Zakładam, że gdy spawnuję proces z hosta 1 przez ssh, oczekuje on znaleźć hydra_pmi_proxy w tym samym miejscu na hoście2.
Program działa poprawnie na obu komputerach, jeśli po prostu uruchomię go lokalnie na tym węźle - mam problem tylko przy próbie uruchomienia go na obu.
Przeszukałem dokumentację MPICH, aby znaleźć sposób na zastąpienie ścieżki zdalnejhydra_pmi_proxy
, ale bez skutku.
Czy mogę to jakoś zrobić? Myślałem, że jedną z zalet MPICH jest to, że może z łatwością obsługiwać hosty heterogeniczne ....
Wszelkie spostrzeżenia będą najbardziej cenione!