Anda di halaman 1dari 2

EREW Transpose

http://sugiartha.staff.gunadarma.ac.id/Downloads/files/42738/Operasi+Matriks+-
+Transposisi+Matriks.pdf

Proposed Parallel EREW Matrix Multiplication

Satu algoritma baru telah disajikan untuk perkalian pada mesin EREW PRAM. Algoritma ini
menggunakan prosesor n2 dan membutuhkan waktu. Algoritma ini telah dibandingkan dengan
EREW PRAM algo-rithm lainnya yang disebut perkalian MESH [4]. Algoritma MESH juga
menggunakan prosesor n2 dan membutuhkan waktu O (n), tetapi algoritma ini tiga kali lebih
cepat. Matriks persegi panjang dan membutuhkan prosesor n2.

Algoritma PEMM yang diusulkan menggunakan, umumnya memanfaatkan prosesor secara


efektif untuk meningkatkan speedup keseluruhan. Algoritma MESH hanya melakukan akses
sekuensial ke memori, sehingga berakhir dengan pemanfaatan sumber daya yang buruk. Tidak
seperti algoritma mesh, setiap proses dalam model ini mengakses dua elemen yang berbeda
masing-masing dari dua matriks, dalam satu iterasi. Semua prosesor n2 mengakses elemen n2
secara bersamaan dari kedua matriks. Algoritme mengeksploitasi paralelisme yang ada dalam
pola pengaksesan elemen. Urutan langkah-langkah yang terlibat dalam perkalian matriks matriks
oleh PEMM diberikan dalam Algoritma 3, Gambar 3 menunjukkan ilustrasi algoritma PEMM.
http://sugiartha.staff.gunadarma.ac.id/Downloads/files/42738/Operasi+Matriks+-
+Transposisi+Matriks.pdf

SIMD-EREW
Pada awalnya seluruh elemen matriks A berukuran n × n tersimpan di dalam shared
memory bersama dengan informasi posisi baris dan kolomnya (indeks) (i, j). Tugas
setiap prosesor SIMD-EREW adalah menukarkan elemen matriks berindeks (i, j)
dengan elemen matriks berindeks (j, i). Selanjutnya adalah fakta bahwa dalam
transposisi matriks A semua elemen matriks A berindeks (i, i) tidak mengalami
transposisi. Dengan tugas dan fakta ini maka jumlah prosesor SIMD-EREW yang
diperlukan adalah p(n) = (n2 - n)/2. Untuk n = 3, proses transposisi ini diperlihatkan
pada Gambar 6.2. Dalam gambar tersebut prosesor-prosesor P21, P32, dan P31 berturutturut
bertugas menukarkan elemen-elemen matriks a21 dengan a12, a32 dengan a23, dan
a31 dengan a13.

Transposisi matriks A berukuran 3 × 3 dengan 3 prosesor.

Dengan demikian, procedure transpose matriks A menggunakan SIMD-EREW adalah


sebagai berikut:
procedure par_SIMD-EREW_transpose (A)
(1) for i = 2 to n do in parralel
(2) for j = 1 to i - 1 do in parallel
(3) ai,j ↔ aj,i
(4) end for
(5) end for
Running time procedure swap (yaitu ai,j ↔ aj,i) adalah konstan sehingga running time
procedure par_SIMD-EREW transpose adalah konstan, atau t(n) = O(1), sehingga
cost procedure ini adalah c(n) = p(n) × t(n) = O(n2) yang berarti procedure par_SIMDEREW
transpose adalah cost optimal.

Anda mungkin juga menyukai