17 Performansi perhitungan waktu dalam komunikasi MPI
[3]
dapat dilihat pada tabel dibawah ini:
Tabel 2.2 Persamaan Perhitungan Waktu Operasi MPI
Operasi MPI Persamaan Perhitungan Waktu Operasi
MPI_Barrier P
log x
t t
2 startup
Barrier
= MPI_Scatter dan MPI_Gather
1 P
x t
N t
x P
log t
w startup
2 scatter
− +
= MPI_Sendrecv
⎟⎟ ⎠
⎞ ⎜⎜
⎝ ⎛
+ =
w startup
sendrecv
t N
t t
MPI_Broadcast t
N t
P log
t
w startup
2 Broadcast
+ =
Keterangan: 1.
Nilai
2
log didapat berdasarkan metode yang digunakan LAM-MPI, untuk
operasi komunikasi kolektif menggunakan metode algoritma-tree,topologi mesh, dimana
2
log mencirikan berapa banyak langkah yang dibutuhkan untuk
mengirimkan data dalam susunan topologi jaringan yang digunakan. 2.
N adalah besar data yang akan dikirimkan Bytes 3.
P adalah jumlah prosesor. Untuk semua fungsi diatas persamaan yang digunakan adalah untuk O P, dimana O merupakan notasi dari sebuah kompleksitas.
2.4.3 Percepatan Speedup
Percepatan Speedup adalah perbandingan antara kecepatan eksekusi suatu program serial 1-Prosesor dengan program paralel menggunakan jumlah prosesor P-
Prosesor.
paralel serial
T T
= P
Sp 4
Keterangan: SpP adalah peningkatan kecepatan dengan menggunakan jumlah prosesor P-
Prosesor T
serial
adalah waktu eksekusi 1-Prosesor T
paralel
adalah waktu eksekusi paralel.
18 Percepepatan maksimum dari komputasi paralel adalah sebesar jumlah prosesor
P, yang bisa dicapai jika komputasi dapat dibagi menjadi proses-proses dengan durasi yang sama dengan tiap proses dipetakan ke satu prosesor dan tidak ada overhead.
2.4.4 Overhead
Ada beberapa faktor yang menyebabkan terjadinya overhead pada komputasi paralel dan membatasi percepatan dari komputasi paralel sebagai berikut:
1. Periode ketika semua prosesor tidak melakukan komputasi
2. Komputasi tambahan pada komputasi paralel yang tidak ada pada komputasi
serial, misalnya perhitungan nilai variabel yang diperlukan untuk membagi task ke komputer-komputer yang tersedia
3. Waktu komunikasi untuk pengiriman pesan.
2.4.5 Alokasi Data Pada Memori
Setiap bahasa pemrograman memiliki kemampuan sendiri-sendiri dalam melakukan alokasi penyimpan data pada memori, seperti bahasa-C memiliki
kemampuan dalam alokasi datanya secara Row-Major urutan baris, Sedangkan bahasa-Fotran melakukannya secara Column-Major urutan kolom. Hal ini penting
untuk diperhatikan terlebih dahulu sebelum melakukan pemrograman pada MPI, karena MPI sendiri juga memilki ketentuan dalam melakukan proses pembagian datanya,
khususnya dalam hal ini proses komunikasi kolektif yang banyak digunakan pada penelitian tugas akhir ini.
Gambar 2.5 Model Alokasi Memori Multidimensi
Dari gambar 2.5 terlihat perbedaan pengalokasian data array 2-Dimensi baris- kolom. Memilih kondisi dari alokasi ini sangat mempengaruhi dari kecepatan
kemampuan sebuah prosesor dalam melakukan tugasnya, semakin cepat data yang
19 diterima oleh sebuah prosesor dari memori maka semakin cepat juga proses komputasi
dilakukan oleh prosesor.
2.5 Teori Perkalian Matriks