para rel 3

21
8/9/2019 Para Rel 3 http://slidepdf.com/reader/full/para-rel-3 1/21 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Parallel Computing Using MPI with Visual C++ 2005

Upload: winda-viscaria

Post on 29-May-2018

250 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Para Rel 3

8/9/2019 Para Rel 3

http://slidepdf.com/reader/full/para-rel-3 1/21

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

Parallel Computing Using MPI with

Visual C++ 2005

Page 2: Para Rel 3

8/9/2019 Para Rel 3

http://slidepdf.com/reader/full/para-rel-3 2/21

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

Untuk belajar mengenai parallel computing biasanya

 para peneliti maupun akademis memanfaatkanlibrary MPI ataupun OpenMP untuk melakukan

komputasi paralel. Kedua library ini menggunakan

teknik parsing message ke suatu multi-processor atau

multi-machine. Misalkan anda mempunyai sejumlahdata katakanlah sekitar 1000000 dimana masing-

masing data akan dilakukan suatu komputasi tertentu

dan selanjutnya digabung diakhir komputer seperti

gambar dibawah ini

Page 3: Para Rel 3

8/9/2019 Para Rel 3

http://slidepdf.com/reader/full/para-rel-3 3/21

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

Page 4: Para Rel 3

8/9/2019 Para Rel 3

http://slidepdf.com/reader/full/para-rel-3 4/21

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

Kalau ini dilakukan secara serial maka ini bisa spend time

yang luar biasa apalagi ketika diharapkan hasilnya bisa real-time sehingga parallel computing menjadi solusi untuk 

 problem ini.

Penerapan MPI & OpenMP pada OS Windows

Pada OS Windows kita dapat memanfaatkan MPI dan

OpenMP. Untuk keperluan ini, kita bisa memanfaatkan Visual

C++ yang satu package dengan Visual Studio.NET 2003 dan

Visual Studio 2005.Sedangkan bagian infrastructure kita bisa memafaatkan

Windows Cluster (HPC). Sistem clustering yang disini secara

arsitektur dari socket bisa kita lihat pada gambar dibawah ini:

Page 5: Para Rel 3

8/9/2019 Para Rel 3

http://slidepdf.com/reader/full/para-rel-3 5/21

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

Page 6: Para Rel 3

8/9/2019 Para Rel 3

http://slidepdf.com/reader/full/para-rel-3 6/21

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

Sedangkan untuk struktur logical view bisa dilihat pada gambar 

dibawah ini

Page 7: Para Rel 3

8/9/2019 Para Rel 3

http://slidepdf.com/reader/full/para-rel-3 7/21

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

Untuk memulai parallel computing, hal-hal yang dipersiapkan

antara lain:1. Visual C++ 2005 under IDE Visual Studio 2005 (bisa

Pakai Visual C++ 2005 Express Edition)

2. Download MPI Library yang terdapat didalam

MicrosoftCompute Cluster Pack SDK, download di

http://www.microsoft.com/downloads/details.aspx?family

id=d8462378-2f68-409d-9cb3

02312bc23bfd&displaylang=en , download file

sdk_x86.msi untuk mesin 32-bit atau sdk_x64.msi untuk 

mesin 64-bitOS Windows 2000/XP/2003

Page 8: Para Rel 3

8/9/2019 Para Rel 3

http://slidepdf.com/reader/full/para-rel-3 8/21

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

Instalasi MPI

Page 9: Para Rel 3

8/9/2019 Para Rel 3

http://slidepdf.com/reader/full/para-rel-3 9/21

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

Starting Coding

Selanjutnya kita mulai coding MPI, lakukan langkah-

langkah dibawah ini

1. Jalan Visual Studio 2005

2. Buat project Visual C++ dengan template Win32 seperti

gambar dibawah ini

Page 10: Para Rel 3

8/9/2019 Para Rel 3

http://slidepdf.com/reader/full/para-rel-3 10/21

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

Page 11: Para Rel 3

8/9/2019 Para Rel 3

http://slidepdf.com/reader/full/para-rel-3 11/21

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

3. Berikan nama project sesuai dengan keinginan dantekan ok kalau udah

4. Untuk feature project Win32 pastikan precompiled

header di unchecked seperti gambar dibawah ini

Page 12: Para Rel 3

8/9/2019 Para Rel 3

http://slidepdf.com/reader/full/para-rel-3 12/21

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

Page 13: Para Rel 3

8/9/2019 Para Rel 3

http://slidepdf.com/reader/full/para-rel-3 13/21

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

5. Nah, sekarang kita baru melakukan konfigurasi daricompiler kita

6. Lakukan klik kanan dibagian project dan pilih menu

Properties sehingga akan muncul kotak dialog properties dari

 project kita

7. Pertama-tama kita konfigurasi dibagian C/C++ --> General,

tulis path dari header MPI kita, misalkan kalau install di D,

maka maka biasanya diisi d:\Program Files\MicrosoftCompute Cluster Park\Include , yang dapat digambar seperti

gambar dibawah ini

Page 14: Para Rel 3

8/9/2019 Para Rel 3

http://slidepdf.com/reader/full/para-rel-3 14/21

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

8. Kemudian kita konfigurasi C/C++ --> Advanced, kita pilih

Compile As C Code (/TC) gunanya supaya compiler hanyacompile code C kita bukan c++ karena MPI code nya

menggunakan C. Lihat gambar dibawah untuk lebih jelasnya

Page 15: Para Rel 3

8/9/2019 Para Rel 3

http://slidepdf.com/reader/full/para-rel-3 15/21

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

9.Selanjutnya kita konfigurasi Linker --> General, dibagianAdditional Library Directories tambahkan library MPI kita,

untuk processor Intel kita dapat menggunakan x86, contoh

d:\Program Files\Microsoft Compute Cluster Park\Lib\i386 ,

contohnya seperti gambar dibawah ini

Page 16: Para Rel 3

8/9/2019 Para Rel 3

http://slidepdf.com/reader/full/para-rel-3 16/21

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

Page 17: Para Rel 3

8/9/2019 Para Rel 3

http://slidepdf.com/reader/full/para-rel-3 17/21

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

10. Konfigurasi yang terakhir kita lakukan adalah

menambahkan msmpi.lib dibagian Linker-->Input pada

Additional Dependencies seperti yang tergambar dibawah ini

Page 18: Para Rel 3

8/9/2019 Para Rel 3

http://slidepdf.com/reader/full/para-rel-3 18/21

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

Coding Parallel Computing

Kalau sudah selesai konfigurasinya maka selanjutnya kitacode MPI, kalau ada perhatikan di template Win32,

seperti code dibawah ini

int _tmain(int argc, _TCHAR* argv[])

return 0; }

Ini harus diganti untuk comply dengan initialisasi dari MPI

sehingga menjadiint main(int argc, char* argv[])

return 0;

 }

Page 19: Para Rel 3

8/9/2019 Para Rel 3

http://slidepdf.com/reader/full/para-rel-3 19/21

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

# include "stdafx.h" 

# include <mpi.h>

int main(int argc,char* argv[])

int id;

int p; MPI_Init(&argc,&argv);

 MPI_Comm_rank(MPI_COMM_WORLD,&id);

 MPI_Comm_size(MPI_COMM_WORLD,&p);

 printf("Rank = %d , Size = %d\r\n",id,p);

 MPI_Finalize();return 0;

 }

Page 20: Para Rel 3

8/9/2019 Para Rel 3

http://slidepdf.com/reader/full/para-rel-3 20/21

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

R unning MPI Code

Untuk menjalankan aplikasi MPI kita dapat memanfaatkanmpiexec.exe yang ada didalam Microsoft Compute Cluster 

Pack SDK yang ada didalam folder bin, sintaknya:

mpiexec -n 5 "c:\mympi.exe" 

Keterangan, -n 5 ----> menunjukkan jumlah processor yangkita miliki sedangkan "c:\mympi.exe" adalah file EXE dari

code MPI kita. Lakukan ini commandline, kalau tidak kenali

mpiexec maka arahkan CMD anda ke directory dimana file

mpiexec.exe berada. Contoh hasil running dapat dilihat padagambar dibawah ini:

Page 21: Para Rel 3

8/9/2019 Para Rel 3

http://slidepdf.com/reader/full/para-rel-3 21/21

Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.