Polyphase Merge

Embed Size (px)

Citation preview

POLYPHASE MERGEy MERUPAKAN K-WAY MEGE DENGAN MENGGUNAKAN K+1 y y y

y

EKTERNAL FILE PADA POSISI 1, JUMLAH RUN DALAM ORIGINAL FILE DIDISTRIBUSIKAN KE DLAM K INPUT FILE RUN I DARI SETIAP FILE DIGABUNG PADA FILE KE(K+1)/OUTPUT FILE RUN KE 2 DIGABUNG KE FILE K+1, DIIKUTI RUN KE 3.. SAMPAI SALAH SATU DARI FILE INPUT KOSONG. FILE YANG KOSONG MENJADI FILE OUTPUT DAN FILE OUTPUT SEBELUMNYA MENJADI FILE INPUT PROSES INI DIULANGI SAMPAI AKHIR K-WAY MERGE

y METODE IN AKAN BERHASIL JIKA DISTRIBUSI RUN DARI ORIGINAL FILE INPUT BERDASARKAN PADA BARISAN FIBONACCI y BARISAN FIBONACCI ORDER KE Ky y y y y y y

Fo= 0 untuk 017, didistribusikan dummy sebagai input file

PROSES POLYPHASE MERGEPass1 : Run I dari setiap file dimerge diletakkan ke output file (F4). Pada langkah ini F1= 6, F2=4, F3=0, dan F4 =7. File F3 menjadi output file Pass 2: Run dimerge ke F3 sampai F2 kosong. Pada langkah ini F1= 2, F2=0, F3=4, dan F4 =3 F2 menjadi output file. ..dst Pada akhir pass-4 file terurut pada F1

Misal k= 3, jumlah run 31Pass 0 1 2 3 4 5 f1 13 6 2 0 1 0 f2 11 4 0 2 1 0 f3 7 0 4 2 1 0 F4(outp ut) 0 7 3 1 0 1

0,0,0,1,1,2,4,8,15,29,56f1 0 0 0 1 1 2 4 8 15 29 56 f2 0 0 1 0 1 2 4 7 14 27 52 F3 0 1 0 0 1 2 3 6 12 23 44 f4 1 0 0 0 1 1 2 4 8 15 29 Jumlah Run 1 1 1 1 4 7 13 25 49 94 181

Misal k= 2f1 0 1 1 2 3 5 8 f2 1 0 1 1 2 3 5 Juml ah

13

K=2, jumlah run = 13f1 8 3 0 2 1 0 f2 5 0 3 1 0 1 f3 0 5 2 0 1 0

CASCADE MERGEy Distribusi run dan k- way merge pada pass-1 =

polyhase merge y Pada pass -2 menggunakan (k-1) merge yang baru dikosongkan. Dan yang baru diisi pada pass-1 di rewound (r) y Pada pass-3 menggunakan (k-2) merge dan seterusnya sampai pass-k yakni : saat one-way merge dilakukan

Misal k=3, file asal berisi 70 runPass 0 1 2 3 4 5 6 7 8 9 10 11 12 a 31 17 6 0 6 6r 6r 3 1 0 1 1r 1r b 25 11 0 6 0 5 5r 2 0 1 0 1 1r c 14 0 11 11r 5 0 3 0 2 2r 1 0 1 d 0 14 14r 14r 8 3 0 3 3r 3r 2 1 0 3 2 1 3 2 1 3 2 1 3 2 1 Merge

K=4, jumlah run = 181a 56 27 12 4 0 2 1 0 b 52 23 8 0 4 2 1 0 c 44 15 0 8 4 2 1 0 d 29 0 15 7 3 1 0 1 e 0 29 14 6 2 0 1 0