Buat user baru di master & slave (contoh: user dengan nama “mpiuser”)

Intsall open MPI dengan perintah aptitude saja..
Meskipun pada saat saya menulis ini, dengan menggunakan aptitude hanya mendapatkan versi 1.6.5
Karena dengan manual instalasi aga sedikit susah dan kadang gagal pada saat instalasi.

$ apt-get install openmpi-bin openmpi-common libopenmpi1 libopenmpi-dev

Cek Installasi

mpirun
ompi_info

Pada Komputer Slave Install openssh server

sudo apt-get install openssh-server

Pada Komputer Master Install openssh client

sudo apt-get install openssh-client

Proses instalasi sudah selesai
Sekarang, login ke user mpiuser dan jalankan ssh

su mpiuser
ssh-keygen -t dsa

masukkan /home/mpiuser/.ssh/id_dsa kemudian phrase passwordnya.
Setelah itu

cp /home/mpiuser/.ssh/id_dsa.pub /home/mpiuser/.ssh/authorized_keys

Copy file ke slave dengan menggunakan alamat IP.
Contoh:

cp /home/mpiuser/.ssh/id_dsa.pub mpiuser@:.ssh/authorized_keys

masukkan password tujuannya.

Ubah file permissions

$ chmod 700 /home/mpiuser/.ssh
$ chmod 600 /home/mpiuser/.ssh/authorized_keys

Untuk menguji bahwa ini telah bekerja, gunakan SSH untuk terhubung ke slave dari master:

$ ssh<spasi>ip

Konfigurasi hostfile pada master slave
buat file di /home/mpiuser/.mpi_hostfile dengan content sebagai berikut

# The Hostfile for Open MPI
# The master node, 'slots=1' is used because it is a single-processor machine.
localhost slots=1
# The following slave nodes are single processor machine, Gunakan Alamat IP
192.168.8.100

Contoh program hello.c dengan menggunakan mpi

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

int main(int argc, char *argv[])
{
  int numprocs, rank, namelen;
  char processor_name[MPI_MAX_PROCESSOR_NAME];

  MPI_Init(&argc, &argv);
  MPI_Comm_size(MPI_COMM_WORLD, &numprocs);
  MPI_Comm_rank(MPI_COMM_WORLD, &rank);
  MPI_Get_processor_name(processor_name, &namelen);

  printf("Process %d on %s out of %d\n", rank, processor_name, numprocs);

  MPI_Finalize();
}

compile dengan perintah

mpicc hello.c -o hello

Copy file excutable dari hasi compile ke slave yang tersedia

scp /home/mpiuser/hello mpiuser@:/home/mpiuser

Kemudian run contoh program di atas dengan perintah

mpirun -np 4 --hostfile .mpi_hostfile ./hello

Source:
http://techtinkering.com/2009/12/02/setting-up-a-beowulf-cluster-using-open-mpi-on-linux/

Advertisement