42754

Ubuntu 12.04 and MPICH performance

Question:

I am trying to install mpich-3.1 in a linux cluster (Ubuntu 12.04 running on all machines). Previously I installed mpich2 by sudo apt-get install mpich2 but couldn't find how to run tests. Then I removed with sudo apt-get remove mpich2.

So I decided to upgrade to 3.1. I downloaded and installed mpich following instructions at <a href="https://www.mpich.org/static/downloads/3.1/mpich-3.1-installguide.pdf" rel="nofollow">https://www.mpich.org/static/downloads/3.1/mpich-3.1-installguide.pdf</a> by running:

<blockquote>

sudo ./configure -prefix=/usr/local/mpich/

sudo make

sudo make install

</blockquote>

and apparently is properly installed. If I run

meteo@ventus:~/RAMS/RUN$ /usr/local/mpich/bin/mpiexec -f machinefile -n 20 hostname ventus ventus ventus ventus ventus4 ventus4 ventus4 ventus4 ventus5 ventus5 ventus5 ventus5 ventus2 ventus2 ventus2 ventus2 ventus3 ventus3 ventus3 ventus3

Although I find it is responding "slowly". Where machinefile is

ventus:4 ventus2:4 ventus3:4 ventus4:4 ventus5:4

The directory is exported to all nodes in the cluster, /etc/exports

/usr/local/mpich 192.168.1.0/24(rw,sync)

In /etc/mtab ant /etc/fstab in node ventus4

ventus:/usr/local/mpich /usr/local/mpich nfs rw,vers=4,addr=192.168.1.1,clientaddr=192.168.1.4 0 0 ventus:/usr/local/mpich /usr/local/mpich nfs

Maybe the problem comes from a prior install not completely removed

meteo@ventus:~$ which mpiexec /usr/local/bin/mpiexec meteo@ventus:~$ which mpirun /usr/local/bin/mpirun meteo@ventus:~$ which mpicc /usr/local/bin/mpicc

Following installation instructions which mpiexec should point to mpich installation bin directory /usr/local/mpich/bin/mpiexec

But if I move /usr/local/bin/mpiexec to /usr/local/bin/mpiexec.old

then

meteo@ventus:~$ which mpiexec /usr/local/mpich/bin/mpiexec

points to my new mpich3 install directory. Could this be the reason of that slow performance? Which test should I run for benchmarking? How do I completely remove mpich2.

Answer1:

If you do in fact have root access to your entire machine, then you can always just delete all of the binaries, libraries, headers, etc. I'm not sure where everything is installed on your system (it's different everywhere), but the usual locations are /usr/local/bin, /usr/local/include, /usr/local/lib, etc. You should look for these files (or things that look similar:

<strong>bin/:</strong>

<ul><li>Anything that starts with mpi</li> </ul>

<strong>include/:</strong>

<ul><li>Anything that starts with mpi</li> <li>Anything that starts with opa</li> </ul>

<strong>lib/:</strong>

<ul><li>Anything that includes mpich</li> <li>Anything that includes mpl</li> <li>Anything that includes opa</li> </ul>

Beyond that, there's not much that would interfere (there's man pages somewhere too, but that's fine). If you delete all of those files, you should have gotten rid of your MPICH2 installation. This really should have been cleaned up with you did your apt-get uninstall, but that's neither here nor there...

Now, to test your new MPICH installation (the project is called MPICH now, not MPICH3), there are lots of MPI benchmarks. I'd suggest typing mpi benchmarks into your favorite search engine any trying out a few of the ones that you find. If you want to compare, you can install a few different versions of MPI. When you do this, make sure you are correctly setting up your PATH and LD_LIBRARY_PATH environment variables so your installations can sit side by side.

Recommend

  • Improving JQGrid Tree Grid performance
  • Calling ssh with system in R shell eats subsequent commands
  • Very Basic JS Coding, and SoundManager2 or not?
  • SQL Server : slow query with 3 “OR” condition and order by Id
  • AnalyticsReceiver in Google Analytics Tracking
  • Xamarin - is there a way to notify Xamarin.Forms from a native project?
  • including Python.h in C++ file CDT
  • Beautiful Soup findAll doesn't find them all
  • manupulating a string to create directories in unix
  • Is it possible to make imports depend on the location of my Lua script instead of the current direct
  • Enable Bootstrap Intellisense using Angular 4 in WebStorm
  • Can't find cygwin setup.exe file?
  • Android application not restoring state when installed from .apk, works fine from eclipse
  • Titanium doesn't recognize Android SDK on Windows
  • Checkpointing In ALS Spark Scala
  • PostgreSQL 9.x - pg_read_binary_file & inserting files into bytea
  • LNK1104: cannot open file 'kernel32.lib'
  • How to add javascript in a prestashop module
  • Neo4j: Legacy Indexes and auto index vs new label bases schema indexes
  • Installing libCurl - ruby 1.9.3 .. rails 3.2.12 .. Windows
  • How to add learning rate to summaries?
  • How can I see a list of all files that are different between two Hg repositories?
  • Why is django manage.py syncdb failing to create new columns on my development server?
  • Getting error java.io.FileNotFoundException (log4j log file) at the time of publish project on cloud
  • d3.js selection conditional rendering
  • Guava how to copy all files from one directory to another
  • Are there any issues with placing image as background on an extended JFrame?
  • Deploying a CodeRush plugin from the Community Site
  • Portable JRE on Linux - possible?
  • Problems with toDataURL HTML5 other ways to get canvas data?
  • How to pass solution folder as parameter in command line arguments (for debug)?
  • Error processing multiple files
  • Yii2: Finding file and getting path in a directory tree
  • Web.config system.webserver errors
  • Checking free space on FTP server
  • Change Inet root folder for iis 7
  • Avoid links criss cross / overlap in d3.js using force layout
  • Updated Ionic CLI but shows previous version (Windows)