Image

Message Passing Interface (MPI)

Parallel Programming Methods (Algorithms, MPI) and Linux Clustering
User avatar
Shahram
Posts: 293
Joined: Sun Feb 05, 2017 8:31 am

Re: Message Passing Interface (MPI)

Postby Shahram » Thu Sep 07, 2017 7:03 pm

I had problem running MPI, even for old codes that I didn't have problem in past.

errors like "invalid file or directory name", "permission is denied", "execuv error" ,...

I tested different methods and finally two method worked. First I checked ownership of file. Ownership may change ( I had copied to micro sd). I used "chown" to manage ownership. You may solve this problem by using "su" or "sudo" to run as root.

Code: Select all

#chown shahram: test.c


you can check permissions and ownership using "ls -l".

And I installed new package:

Code: Select all

apt-get install openmpi-bin


And now they are running.



User avatar
Shahram
Posts: 293
Joined: Sun Feb 05, 2017 8:31 am

Re: Message Passing Interface (MPI)

Postby Shahram » Thu Sep 07, 2017 9:14 pm




User avatar
Shahram
Posts: 293
Joined: Sun Feb 05, 2017 8:31 am

Re: Message Passing Interface (MPI)

Postby Shahram » Mon Sep 11, 2017 10:59 pm

I found very strange incompatibility between MPI and "strcat" command in string.h. So I used another method to solve joining two strings together.

Code: Select all

char address2[100]={0};
sprintf(address2,"%s%s",address,devchar);



User avatar
Shahram
Posts: 293
Joined: Sun Feb 05, 2017 8:31 am

Re: Message Passing Interface (MPI)

Postby Shahram » Mon Feb 19, 2018 4:20 pm

In last few days new update in linux has killed a lot of programs. I can't run mpi. I receive errors like "segmentation error, signal 11" or "can't find executable file".

This is a good command to check for : who is running mpirun on your system:

Code: Select all

update-alternatives --config mpirun


For me it is:

Code: Select all

 Selection    Path                     Priority   Status
------------------------------------------------------------
* 0            /usr/bin/mpirun.openmpi   50        auto mode
  1            /usr/bin/mpirun.mpich     40        manual mode
  2            /usr/bin/mpirun.openmpi   50        manual mode


* means it is the default. If you press enter it will keep the current settings, otherwise it will change if you enter a different number.




Return to “Parallel Programming and Clusters”

Who is online

Users browsing this forum: No registered users and 1 guest