Kuracaklarımız sırasıyla : 

 1. VS2008 veya VS2010, Visual C++ modülü kurulu olmalı, yoksa yeniden VS kurulum setup'anı çalıştırp ekleye bilirsiniz.

 2. HPC Pack 2008 R2 Client Utilities Redis Package with SP4  indirip kurun

 3. HPC Pack 2008 R2 SDK with SP4 indirip kurunuz 

 4. HPC Pack 2008 R2 MS-MPI Redist Pack with SP4 kuruyoruz aynen 

 5. VS2010 için MPI Project Template ihtiyaç duraysanız eger (ben VS2008 kullanıdıgm için kurmadım)

 6. VS2008 veya VS2010 u açıyoruz  New Project >  Visual C++ > Win32 > Win32 Console Application > Proje_adiyaz

 7. "Console Application" > "Pre Comp. Head"=kaldırıyoruz > "Finish"

 8. Projeye sağ tıkla "Property Pages"
"Conf Prop" > "C/C++" > "Additional Include Directories" = "C:\Program Files\Microsoft HPC Pack 2008 R2\Inc"
"Conf Prop" > "Linker" > "Additional Library Directories" = "C:\Program Files\Microsoft HPC Pack 2008 R2\Lib\i386"
"Conf Prop" > "Linker" > "Input" > "Additional Dependencies"= "msmpi.lib" 
Detay burada var 

 9. Kod blogunu şu şekilde değiştirin : 

#include<iostream>
#include<mpi.h>

using namespace std;

int main(int argc, char** argv){

    int mynode, totalnodes;

    MPI_Init(&argc, &argv); 
    MPI_Comm_size(MPI_COMM_WORLD, &totalnodes);
    MPI_Comm_rank(MPI_COMM_WORLD, &mynode);

    //buda olur
    //printf("Hello world from process %d of %d ", mynode, totalnodes);
    cout << "Hello world from process " << mynode;
    cout << " of " << totalnodes << endl;

    MPI_Finalize();
    //ekran beklesin diye, programı sonlandırmak için VS de DEBUG da STOP diyoruz
    cin.get();
    return 0;
}

10. F5 deyin her şey yolunda ise  "cmd" yapıp "mpiexec –n 10 Test01.exe" deneyebilirsiniz.

Resimli anlatım lazım derseniz burada bir tane buldum, bir tanede bu var.

Kolay gelsin size MPI ile paralel programlamada, Vi editor ve hiç baglanamadıgım VPN le ugrasmaktan iyidir.

 Not : Her seferinde CMD ile oynamayayım dersen :

Yine projeye sag tıklıyoruz "Properties" > "Debugging" > Command"="C:\Program Files\Microsoft HPC Pack 2008 R2\Bin\mpiexec.exe"
"Command Argument" > "-n 4 "$(TargetPath)""