Simulating / Emulating a MPI Cluster or Supercomputer under Ubuntu Linux

Okay a few posts ago I mentioned that I had been successful in setting up my laptop as a virtual supercomputer.

Here are hopefully some relatively clear instructions on how simple it was to do.

Setting up a MPI development system on Ubuntu Linux

  1. Download Ubuntu – check out the latest version at

  2. Intall the required mpi files.

    For Ubuntu 9.04:
    In a terminal window enter:
    sudo apt-get install libopenmpi1 libopenmpi-dbg libopenmpi-dev openmpi-bin openmpi-common openmpi-dev

    For Ubuntu 10.04:
    In a terminal window enter:
    sudo apt-get install libopenmpi1.3 libopenmpi-dbg libopenmpi-dev openmpi-bin openmpi-common openmpi-dev

  3. Test the mpi install by compiling and running a simple program

    1. mpicc testfile.c -o testfile

    2. mpirun -np 2 ./testfile

      1. Where np is the number of cores * number of processes on your system.

      2. e.g. on a two core laptop np should be 2.

  4. If you get an error regarding ssh when you enter the mpirun command install ssh

    1. sudo apt-get install ssh

  5. If you get requested for your password everytime you run mpirun set up a stored RSA key control

    1. cd $HOME

    2. ssh-keygen -t dsa

    3. cp .ssh/ .ssh/authorized_keys2

Further reference:

Windows vs Linux Installation

Okay in the last week I have had to do a windows installation and a linux installation onto a laptop.

In the past the windows install would have won hands down in terms of getting everything running out of the box. But not any longer, I now think that over the last two years linux has really come of age and is just simple to use and for the most part just works.

Firstly my experiences in windows installing.

  • Insert CD rom and install OS – about 30 minutes.
  • Remove cd rom restart do end user install, about another 30 minutes.
  • Boot into windows remove norton anti virus, install avast and do a boot time scan to ensure that in the few seconds between norton and avast nothing snuck onto the system – 1 hour.
  • Download and install windows updates 10 minutes to download 1 hour to install.
  • Reboot and install firefox and thunderbird 30 minutes.

All up for a basic working machine: 3.5 hours.

Linux installation.

  • Install OS from cd rom… 20 minutes
  • Reboot do end user install 10 minutes.
  • Get wireless networking drivers working – 1 hour.
  • Download and install updates less than 30 minutes.
  • Install anti-virus… not needed it is linux.
  • Install other software… apt-get install software name… under 5 minutes per piece of software.

All up… 2 hours… an hour of which was getting drivers for a wifi card to work, and if hardware vendors properly supported linux you could have a fully functioning up to date OS in under 1 hour.

Two years ago a linux set up would have taken days because of driver problems and even dependancy problems, but now linux has really matured and unless windows can improve its security a lot then in the long run linux will just become more and more popular.


Now of course people are going to come back and say that windows has more security holes because more people use it so therefore it is easier to break and if linux increased in popularity more people would write viruses and try to break it too. I do think there is half a point here. However for the most part linux makes you manually do stuff where windows if sometimes just a little to smart for its own good. I placed a flash drive into my computer yesterday that had a virus on it set to autorun, lucky for me my system stopped it. However, why windows insists on letting flash drives autorun is just plain weird… so windows getting lots of viruses is as much microsoft’s slack approach to system security as is it the fault of the virus writers themselves. Then again if there wasn’t security holes in windows norton and mcaffee would be out of work so there is an economics side to viruses as well.


Okay, now there is no excuse for any geek or anyone with a keen interest in computers to not try out linux.

For the past year and a bit I have been playing around with Virtualbox and virtualization, the major problem here however is the speed of booting, and drivers etc as it is in an emulated/simulated environment.

Enter WUBI. Wubi is an installer that allows you to install Ubuntu and Linux Mint on an NTFS partiation and use the windows boot loader so it does absolute nothing to windows at all. And to make matters better you can access your windows files straight out of the box.

I have now had a WUBI Ubunutu set up for the past week and it is brilliant.

I am now trying a new distro called Linux Mint which is aimed at end users.

If you want some help getting it installed or just want to try it out just contact me, it is brilliant just really awesome.