NOTASI UNTUK ALGORITMA PARALEL

dokumen-dokumen yang mirip
NOTASI UNTUK ALGORITMA PARALEL

ALGORITMA-ALGORITMA PARALLEL RANDOM ACCESS MACHINE (PRAM = pea ram)

Preorder Tree Traversal

ALGORITMA-ALGORITMA PARALLEL RANDOM ACCESS MACHINE (PRAM)

ALGORITMA-ALGORITMA PARALLEL RANDOM ACCESS MACHINE (PRAM = pea ram) Ver

ALGORITMA-ALGORITMA PARALLEL RANDOM ACCESS MACHINE (PRAM = pea ram)

OPERASI MATRIKS. a 11 a 12 a 13 a 14 A = a 21 a 22 a 23 a 24 a 31 a 32 a 33 a 34 a 41 a 42 a 43 a 44

JARINGAN UNTUK MERGING

Pengolahan Paralel PENGOLAHAN PARALEL. Ernastuti 1/58. Ernastuti

PENGOLAHAN PARALEL. Ernastuti

ANALISIS ALGORITMA. Disusun Oleh: Analisis Masalah dan Running Time. Adam Mukharil Bachtiar Teknik Informatika UNIKOM

PERSEGI ANGKA-HURUF VERTIKAL

KLASIFIKASI ARSITEKTURAL

ARSITEKTUR KOMPUTER. Satu CPU yang mengeksekusi instruksi satu persatu dan menjemput atau menyimpan data satu persatu.

Penggunaan Algoritma Greedy dalam Membangun Pohon Merentang Minimum

ORGANISASI KOMPUTER II AUB SURAKARTA

NASKAH UJIAN UTAMA. JENJANG/PROG. STUDI : DIPLOMA TIGA / MANAJEMEN INFORMATIKA HARI / TANGGAL : Kamis / 18 FEBRUARI 2016

10. PARALLEL PROCESSING

AnalisisFramework. Mengukur ukuran atau jumlah input Mengukur waktu eksekusi Tingkat pertumbuhan Efiesiensi worst-case, best-case dan average-case

SATUAN ACARA PERKULIAHAN MATA KULIAH ALGORITMA PENGOLAHAN PARALEL (S1/ TEKNIK INFORMATIKA)

Algoritma Brute Force (Bagian 1) Oleh: Rinaldi Munir

Kompleksitas Algoritma (1)

Pemrograman Dasar Kelas X RPL KONSEP DASAR ALGORITMA

SATUAN ACARA PERKULIAHAN UNIVERSITAS GUNADARMA

ALGORITMA DAN PEMROGRAMAN

Kompleksitas Algoritma

PERANCANGAN ARSITEKTUR PEMARALELAN UNTUK MENCARI SHORTEST PATH DENGAN ALGORITMA DIJKSTRA

Arsitektur Komputer. Dua element utama pd sistem komputer konvensional: Memory Processor

SATUAN ACARA PERKULIAHAN MATA KULIAH PENGOLAHAN PARALEL (S1/ TEKNIK KOMPUTER)

Studi Mengenai Perbandingan Sorting Algorithmics Dalam Pemrograman dan Kompleksitasnya

Algoritma Brute Force

Analisis Algoritma Bubble Sort

Penerapan Algoritma Greedy untuk Memecahkan Masalah Pohon Merentang Minimum

ANALISIS ALGORITMA BINARY SEARCH

Kompleksitas Algoritma

Kompleksitas Algoritma

TUGAS MATA KULIAH TEKNIK KOMPILASI

Penggunakan lebih dari satu CPU untuk menjalankan sebuah program secara simultan. Tujuan Utama Untuk meningkatkan performa komputasi.

x 6 x 5 x 3 x 2 x 4 V 3 x 1 V 1

Implementasi Algoritma Runut Balik dalam Pengenalan Citra Wajah pada Basis Data

TEKNIK OPTIMASI. Dependensi Optimasi. Optimasi Lokal. Menghasilkan kode program dengan ukuran yang lebih kecil, sehingga lebih cepat eksekusinya.

ALGORITMA ROUTING UNTUK INDENTIFIKASI JALUR TERPENDEK PADA INCOMPLETE-HYPERCUBE

Analisa dan Perancangan Algoritma. Ahmad Sabri, Dr Sesi 1: 9 Mei 2016

PENDAHULUAN. -. Pengolahan data numerik dalam jumlah yang sangat besar. -. Kebutuhan akan ketersediaan data yang senantiasa up to date.

Pendahuluan. Sebuah algoritma tidak saja harus benar, tetapi juga harus efisien. Algoritma yang bagus adalah algoritma yang efektif dan efisien.

PENGUJIAN PERANGKAT LUNAK

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

STRUKTUR DASAR ALGORITMA

Algoritma Divide and Conquer

Algoritma Brute Force

Analisis Algoritm. Fundamentals of the Anlysis of Algorithm Efficiency

BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM

AlgoritmaBrute Force. Desain dan Analisis Algoritma (CS3024)

Perjalanan sebuah intruksi

Algoritma Heap Sort. Sekolah Teknik Elektro & Informatika Departemen Teknik Informatika, Institut Teknologi Bandung Jl. Ganesha 10, Bandung

BAB II TINJAUAN PUSTAKA

PENGUJIAN PERANGKAT LUNAK

Searching [pencarian] Algoritma Pemrograman

Teknik Optimasi. Teknik Kompilasi Dosen: Utami Dewi W.,S.Kom

>> KLASIFIKASI ARSITEKTURAL

Matematika Diskrit Kompleksitas Algoritma. Instruktur : Ferry Wahyu Wibowo, S.Si., M.Cs.

ANALISA KINERJA CLUSTER LINUX DENGAN PUSTAKA MPICH TERHADAP PERKALIAN MATRIKS

STRATEGI DIVIDE AND CONQUER

Yaitu proses pengaturan sekumpulan objek menurut urutan atau susunan tertentu Acuan pengurutan dibedakan menjadi :

Analisis Kecepatan Sorting Dengan Notasi Big O

KOMPONEN KOMPUTER PARALLEL

ITERASI 1 TITIK SEDERHANA METODE NEWTON RAPHSON

Algoritma dan Struktur Data

Design and Analysis Algorithm

IMPLEMENTASI GRAF DENGAN MENGGUNAKAN STRATEGI GREEDY

Pemrograman Dasar P E N G A N T A R A L G O R I T M A

Soal dan Jawaban Materi Graf, Pohon, dan Kompleksitas Algoritma

UNIVERSITAS GUNADARMA

Teknik optimasi. Teknik optimasi kode program Tujuan: menghasilkan kode program yang berukuran lebih kecil dan lebih cepat pada saat dieksekusi.

IMPLEMENTASI GRAF DENGAN MENGGUNAKAN STRATEGI GREEDY

KOMPUTASI PADA JARINGAN KOMPUTER SEBAGAI ALTERNATIF PENINGKATAN KINERJA KOMPUTASI

Pengurutan (Sorting) Algoritma Pemrograman

Design and Analysis of Algorithms CNH2G3- Week 4 Kompleksitas waktu algoritma rekursif part 1

Algoritma Pemrograman

BFS dan DFS. Bahan Kuliah IF2151 Strategi Algoritmik. Oleh: Rinaldi Munir

ALGORITMA RINTA KRIDALUKMANA SISKOM UNDIP

PENDAHULUAN. Motivasi : -. Pengolahan data numerik dalam jumlah yang sangat besar. -. Kebutuhan akan ketersediaan data yang senantiasa up to date.

Perbandingan Algoritma Dijkstra dan Algoritma Bellman Ford pada Routing Jaringan Komputer

Kebutuhan pengolahan paralel

BAB III ANALISA MASALAH DAN RANCANGAN PROGRAM

ANALISIS PERBANDINGAN ALGORITMA SELECTION SORT DENGAN MERGE SORT

Penerapan Algoritma Backtracking pada Pewarnaan Graf

ALGORITMA PENGURUTAN & PENCARIAN

White Box Testing Merupakan metode perancangan test case yang menggunakan struktur kontrol dari perancangan prosedural untuk mendapatkan test case.

Kompleksitas Algoritma

Proses Kompilasi. Otomata dan Pengantar Kompulasi Pertemuan 3

Topic Complexity of Hashing Search & Binary Search Tree Algorithm

Algoritma Greedy (lanjutan)

Analisis Algoritma. Jimmy Tirtawangsa. Universitas Telkom 2014

Sebuah algoritma tidak saja harus benar, tetapi juga harus mangkus (efisien). Algoritma yang bagus adalah algoritma yang mangkus.

PENCARIAN BERUNTUN (SEQUENTIAL SEARCHING)

BAB 2 LANDASAN TEORI

BAB II TINJAUAN PUSTAKA

OPTIMISASI PARTICLE SWARM PADA PEMASANGAN JARINGAN PIPA AIR PDAM"

Dasar-Dasar Pengujian Perangkat Lunak. Fakultas Ilmu Komputer dan Teknologi Informasi Jurusan Sistem Informasi Univesitas Gunadarma

Transkripsi:

NOTASI UNTUK ALGORITMA PARALEL Untuk Shared-Memory Model Global Local Untuk Distributed Memory Machine Parameter suatu konstanta yang sudah dikomunikasikan antar prosesor. Umum +, x, if else endif ; while endwhile ; for endfor for all data paralelism : SIMD : diasumsikan ada lockstep MIMD : diasumsikan berjalan asynchronous menyatakan suatu prosesor store/retrieve nilai local dari prosesor lain. [x] a menyatakan nilai dari prosesor. tmp [s] a SUMMATION (HYPERCUBE SIMD): Parameter Global Local n { Number of elements to add} p { Number of processing elements} j local.set.size, local.value[1 n/p ], sum, tmp For all P i, where () i p 1 do If i < (n modulo p) then Local.set.size n/p Else Local.set.size n/p Sum 0 For j 1 to n/p do If local.set.size j then Sum sum + local.value[j] For j log P-1 downto 0 do If i < 2 j Then tmp [ i+2 j ] sum sum sum + tmp APP Elementary Parallel Algorithm 1/5

End Hasilnya? Bagaimana jika setiap elemen pemrosesan akan mempunyai copy-an dari global sum? Kita dapat menggunakan fase broadcast di akhir algoritma. Setiap elemen pemrosesan Θ mempunyai global sum, nilai-nilainya dapat dikirimkan ke processor lainnya dalam log p tahapan komunikasi dengan membalikan arah edge pada pohon binomial. Kompleksitas untuk menemukan jumlah (sum) dari n nilai, Θ (n/p + log p) pada model hypercube yang berarray prosesor. SHUFFLE EXCHANGE SIMD MODEL Pada model ini, tidal ada dilatasi 1 pada pohon binomial. Efisiensi algoritma ini jika jumlah digabungkan secara berpasangan. Angka logaritma dari tahapan penggabungan dapat menemukan total akhir. Setelah log p shuffle exchange, prosesor O memdapatkan total akhir prosesor. SUMMATION (SHUFFLE-EXCHANGE SIMD) : Parameter n { Number of elements to add } p { Number of processing elements } Global j Local local.set.size, local.value[1 n/p ], sum,tmp For all P i, where () i p 1 do If i < (n modulo p) then Local.set.size n/p Else Local.set.size n/p Sum 0 For j 1 to n/p do If local.set.size j then APP Elementary Parallel Algorithm 2/5

End Sum sum + local.value[j] For j 0 to log p-1 do Shuffle (sum) sum Exchange (tmp) sum Sum sum + tmp Waktu Kompleksitas : Θ (n/p + log p) 2-D Mesh SIMD Model Untuk mendapatkan jumlah n nilai diantara p prosesor, diorganisasikan dalam p x p mesh, minimal satu prosesor pada mesh harus berisi total akhir. Total jumlah dari tahap komunikasi untuk mendapatkan sub-total dari prosesor minimal 2( p-1). Kompleksitas algoritma ini Θ(n/p + p) SUMMATION (2-D MESH SIMD) : (Pseudocode (anggap n = l 2 ) Parameter l { Mesh has size l x l } Global i Local tmp,sum APP Elementary Parallel Algorithm 3/5

{each processor finds sum of its local values code not shown} For i l-1 downto 1 do For all Pj,i, Where 1 j l do {Processing elements in column i active} tmp south (sum) sum sum + tmp End Waktu Eksekusi Algoritma ini terbagi 2 : Waktu yang dibutuhkan untuk nilai awal pesan ( message passing overhead) Waktu yang dibutuhkan untuk melaksanakan pemindahan data ( message latency) Jika data yang di- broadcast sedikit, message passing overhead mendominasi message latency. Algoritma yang baik adalah yang meminimalkan jumlah komunikasi yang dilaksanakan oleh setiap prosesor. Jadi minimal untuk komunikasi membutuhkan log p. Pohon binomial cocok untuk model broadcast ini, karena ada sebuah dilatasi-1 yang ditempelkan ke hypercube dari pohon binomial. Jika data yang di-broadcast besar, waktu pemindahan data mendominasi message-passing overhead. Pada pohon binomial-nya merupakan keadaan terburuk, dalam setiap waktu, tidak lebih dari p/2 dari p log p hubungan komunikasi yang digunakan. APP Elementary Parallel Algorithm 4/5

Jika M adalah waktu yang dibutuhkan untuk melewatkan pesan dari satu prosesor ke lainnya, algoritma broadcast ini membutuhkan waktu M log p. Jhonson and Ho (1989) membuat algoritma broadcast yang mengeksekusi waktu lebih cepat dari algoritma bimial log p. Algoritmanya : setiap hypercube terdiri dari log p edge-disjoint spanning tree dengan node akar yang sama. Algoritma memisahkan pesan ke dalam log p bagian dan broadcast setiap bagian ke node lain melalui pohon rentang binomial. (lihat Gb. 6-13) Sehingga algoritma yang baru membutuhkan waktu M log p/log p = M. HYPERCUBE BROADCAST (id,source,value) : Parameter P {Number of processor} Value id {Processor s id number} source {ID of source processor} Reference value {value to be broadcast} Local i {loop iteration} partner {partner processor} position {position in broadcast tree} {This procedure is called from inside a for all statement} end position id source For i 0 to log p-1 do If position < 2 i then partner id 2 i [partner] value value APP Elementary Parallel Algorithm 5/5