Diagram metode PPDIO

Gambar 1. Diagram metode PPDIO

Plan merupakan tahap dimana rencana kerja dimatangkan, analisis lebih detail dilakukan pada tahapan ini. Pada tahap ini peneliti menentukan Head Node, Pada penelitian ini Head Node yang digunakan adalah RaspberryPi Model B+ dengan 4 buah slot USB, 40 slot General Purpose Input Output dan Prosesor 900MHz Quad Core ARM Cortex-A7 dan Compute Node, Pada penelitian ini Compute Node yang digunakan adalah RaspberryPi Model B+ dengan 4 buah slot USB, 40 slot General Purpose Input Output dan Prosesor 900MHz Quad Core ARM Cortex-A7. Untuk penelitian ini menggunakan sistem operasi Raspbian yang didalamnya berisikan Linux dan menggunakan pustaka paralel MPICH2. Agar dapat menjalankan komputasi paralel, sistem memerlukan beberapa konfigurasi: Pendistribusian komputasi paralel menggunakan MPICH2 yang merupakan implementasi dari MPI. Untuk file system global digunakan Network File System (NFS) yang akan dieksport Head node untuk diakses oleh Compute Node yang diijinkan oleh Head Node. Proses komunikasi antara Head Node dan Compute Node dilakukan dengan Secure Shell (SSH).

Implement merupakan tahap lanjutan dari design, hasil perancangan pada tahap design diimplementasikan pada perangkat keras dan perangkat lunak, konfigurasi head node juga dilakukan pada tahapan ini, demikian juga instalasi sistem operasi dan MPICH2.

Operate merupakan tahap sistem diuji, pada penelitian ini digunakan pengujian menggunakan perkalian matriks. Parameter yang digunakan pada hasil pengujian ini adalah kecepatan komputasi paralel dibandingkan dengan komputasi biasa menggunakan raspberry serta perhitungan percepatan yaitu nilai yang diperoleh dari perbandingan waktu proses komputasi biasa dan komputasi paralel. Nilai percepatan diatas 1 berarti ada peningkatan proses, nilai diantara 0 dan 1 berarti ada penurunan kecepatan proses dan efisiensi yaitu dari perbandingan antara waktu proses komputasi serial dan komputasi paralel dikalikan besar paralelismenya, atau perbandingan antara percepatan dengan besaran paralelismenya. Nilai efisiensi berarti peningkatan kecepatan setiap penambahan besaran paralelisme atau porsi percepatan yang didapatkan ketika penambahan paralelisme dilakukan.

Skenario pengujian yang digunakan adalah perkalian matriks yang dieksekusi secara paralel dengan memanfaatkan fungsi-fungsi dasar MPI yaitu MPI_Send dan MPI_Recv untuk mengirimkan dan menerima data. Matriks yang digunakan untuk pengujian adalah matriks bujur sangkar dengan ordo 50x50, 100x100, 150x150, 200x200, 500x500 dan 1000x1000 untuk setiap ordo dilakukan lima kali pengujian kemudian diambil waktu rata-rata pengujian, hal tersebut dilakukan pada komputasi biasa dan komputasi parallel, Pada perkalian matriks paralel dengan MPI, matriks yang dikalikan adalah matriks A dan matriks B. Paralelisasi dilakukan pada matriks

A, matriks A dibagi menjadi potongan-potongan matriks dengan ukuran yang hampir sama, kemudian potongan- potongan tersebut dikirimkan ke compute node. Sedangkan matriks B dikirimkan secara utuh ke seluruh compute node sebagai pengali matriks A. Selanjutnya masing-masing compute node akan mengalikan potongan matriks A tersebut dengan seluruh elemen matriks B, hasil perkalian ini kemudian dikirimkan ke Head Node.

Program yang digunakan sebagai uji coba adalah perkalian matriks yang dieksekusi secara paralel dengan memanfaatkan fungsi-fungsi dasar MPI yaitu MPI_Send dan MPI_Recv untuk mengirimkan dan menerima data. Matriks yang digunakan untuk pengujian adalah matriks bujur sangkar dengan ordo 50x50, 100x100, 150x150, 200x200, 500x500 dan 1000x1000 untuk setiap ordo dilakukan lima kali pengujian kemudian diambil waktu rata-rata pengujian, hal tersebut dilakukan pada komputasi biasa dan komputasi paralel, keduanya menggunakan raspberry.