2017-10-08 8 views
-1

mpiプログラムを実行しようとしていますが、インストールに何らかの問題があります。私はリポジトリからパケットを取得し、プログラムをコンパイルすることができますが、プログラムを実行しようとするとできません。 私のプログラムは "Hello World"よりも少し大きいですが、私の問題はコードではなくmpiライブラリ(私はそうだと思います)にあります。私はmpiccのは、はいはいファイルを表示されます使用する場合lpiで実行されるMpiプログラム

#include <stdio.h> 
#include <mpi.h> 

int main(int argc, char *argv[]) 
{ 
int rank, size; 

MPI_Init(&argc, &argv); 

MPI_Comm_rank(MPI_COMM_WORLD, &rank); 
MPI_Comm_size(MPI_COMM_WORLD, &size); 

printf("Hola Mundo! Soy el %d de %d\n", rank, size); 

MPI_Finalize(); 

return 0; 
} 

:ここでは(もちろんスペイン語で)私の「Hello World」のパラレルです。

mpiccのhola.c -oはいはい

それから私は私のプログラムを実行します。

のmpirun -np 5 ./hola

(のための出力@ジル)

ls -1 h OLA

COMANDラインからの出力ショーはこれでちょうど

はいはい

です:

[proxy:0:[email protected]] HYDU_create_process 
    (./utils/launch/launch.c:75): execvp error on file hola (No such file 
    or directory) 
    [proxy:0:[email protected]] HYDU_create_process 
    (./utils/launch/launch.c:75): execvp error on file hola (No such file 
or directory) 
[proxy:0:[email protected]] HYDU_create_process 
(./utils/launch/launch.c:75): [proxy:0:[email protected]] 
HYDU_create_process (./utils/launch/launch.c:75): execvp error on file 
hola (No such file or directory) 
execvp error on file hola (No such file or directory) 
[proxy:0:[email protected]] HYDU_create_process 
(./utils/launch/launch.c:75): execvp error on file hola (No such file 
or directory) 




Well the thing is that i dont know what is the problem. 

答えて

0

[OK]を走ったようです。私はそれを動作させることができます。 私はLinuxとインストールパッケージの専門家ではありません。 mpiファイルをコンパイルするパッケージがあり、mpiファイルを実行する別のパッケージがあると考えられます。後でコンパイルパッケージとランパックをインストールしました。その後、私は実行パッケージを "オン"にして、私のプログラムを走らせることができました。 まず、私はコンパイラパッケージを手に入れました。

apt-getをlam4-devのインストール

第二に、私は、実行パッケージを得ました。

apt-getをインストールLAM-ランタイム

第三に、私は

lamboot

そして、ここでは私のコマンドライン出力で、実行時パッケージになりました。それは新人の質問と私の英語だった私場合は、最初のプログラムあなたの答えのための

Hola! Soy el 0 de 5 
Hola! Soy el 2 de 5 
Hola! Soy el 1 de 5 
Hola! Soy el 3 de 5 
Hola! Soy el 4 de 5 

おかげ@Gilles

のmpirun -np 5 ./algo

を実行し、申し訳ありません。

0

あなたが問題を報告するとき、あなたは常に含める必要がありますエラーメッセージにつながるコマンドライン。

とにかく、あなたが

mpirun hola 

代わりの

mpirun ./hola 
+0

私はmpirun ./holaとmpirun holaを使用しました(動作している可能性があります)。申し訳ありませんが、エラーを報告する行はそれです。 "mpirun ./hola"または "mpirun -np 3 ./hola"を使用して複数のプロセスを使用したい場合。 – Patricio

+0

あなたの質問を 'mpicc'と' mpirun'コマンドと出力の両方で編集してください。あなたは1台のマシンで走っていますか? 'ls -l hola'とは何ですか? –

+0

'ls -l'これは' ls-lower-case L'です。どのディストリビューションとMPIライブラリを使用していますか?あなたが 'mpirun -np 5' pwd'/hola'ならどう?それでも動作しない場合は、 'strace -f -e execve mpirun -np 5' pwd'/hola'を試すことができますか? 1つのノードだけで動作していることを確認できますか? 'miMachine-LMint'で' mpirun'が呼び出されますか?もしあなたが 'll -l hola; mpirun -np 1 ls -l hola'? –

関連する問題