Having Open MPI related issues while making CUDA 5

2020-02-13 09:03发布

When I'm trying to make CUDA 5.0 samples an error appears:

Makefile:79: * MPI not found, not building simpleMPI.. Stop.

I've tried to download and build the latest version of Open MPI reffering to Open MPI "FAQ / Platforms / OS X / 6. How do I not use the OS X-bundled Open MPI?" page and it did not solve the error.

make -j 4 2>&1 | tee make.out
[ lots of output ]
make[2]: *** [mpi/man/man3/MPI_Comm_disconnect.3] Error 127
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [all-recursive] Error 1
make: *** [all-recursive] Error 1

I'm realy confused for now I have no idea what to do.

3条回答
贼婆χ
2楼-- · 2020-02-13 09:09

Or just install using MacPorts. The command is

sudo port install mpich

This will also make it easier to update in future since they host the latest version.

查看更多
看我几分像从前
3楼-- · 2020-02-13 09:13

As mentioned in the comments, the simpleMPI example can be effectively bypassed by using make -k, or else deleting the simpleMPI subdirectory altogether, or renaming the Makefile that is in that directory. However if it is desired to actually install a version of MPI on the mac so as to be able to build the simpleMPI example, these instructions should help:

The issue here is that you don't have the MPI compiler installed. You will need to install the MPICC compiler for Mac OSX. These instructions will use the MPICH2 version of MPI, which is generally available here

Direct link to MPICH2 1.4 download

You can follow these instructions to build and configure MPICH2 for Mac OSX. In the configure step, also add --disable-f77 and --disable-fc:

./configure --enable-shared --enable-sharedlibs=osx-gcc --enable-fast=all --prefix=/usr/local/mpich2-optimized --disable-f77 --disable-fc

Then follow the guide instructions to make and then make install

Now create symbolic links to MPICC so you can build CUDA MPI easily

sudo ln -s /usr/local/mpich2-optimized/mpicxx /usr/bin/mpicxx 
sudo ln -s /usr/local/mpich2-optimized/mpic++ /usr/bin/mpic++

Alternatively, another option is to add

/usr/local/mpich2-optimized/bin 

to your path.

Now when making simpleMPI, it will properly build.

查看更多
Rolldiameter
4楼-- · 2020-02-13 09:16

Or just install using Homebrew. The command is

brew install mpich2

I could compile all the CUDA samples after installing mpich through homebrew.

查看更多
登录 后发表回答