Batcher - PowerPoint PPT Presentation

About This Presentation
Title:

Batcher

Description:

The first merges the sequence on lines a1, a3,..,an-1 with sequences on lines ... In odd-even merging we send odd sequence to one merger and the even sequence ... – PowerPoint PPT presentation

Number of Views:24
Avg rating:3.0/5.0
Slides: 10
Provided by: IgorPo
Category:

less

Transcript and Presenter's Notes

Title: Batcher


1
Batchers merging network
  • Efficient Parallel Algorithms
  • COMP308

2
Odd-even merging network
  • We assume that n is exact power of 2, and we wish
    to merge the sorted sequence of elements on lines
    lta1,..,angt with those on lines ltan1,..,a2ngt
  • We recursively construct two odd-even merging
    networks that merge sorted subsequences in
    parallel.

3
Structure of the network
  • The first merges the sequence on lines lta1,
    a3,..,an-1gt with sequences on lines ltan1,
    an2,..,a2n-1gt (the odd elements)
  • The second merges the sequence on lines lta2,
    a4,..,angt with sequences on lines ltan2,
    an4,..,a2ngt (the even elements)
  • To combine two sorted subsequences, we put a
    comparator between a2i-1 and a2i for all
    i1,2,,n

4
(No Transcript)
5
(No Transcript)
6
(No Transcript)
7
8-input network
1 2 3 4 5 6
8
Skeleton of the Proof
  • Apply the zero-one principle to prove that
    Batchers sorting is correct, consider only
    merges of sequences of the form 0000011111 and
    00001111111
  • In odd-even merging we send odd sequence to one
    merger and the even sequence to another merger.
    We can assume by induction that smaller mergers
    work correctly.
  • The first merger can get one or two more zeros.
    than the second one. The outputs of these mergers
    are interleaved and can be 1 before 0 (dirty one).

9
  • After sorting separately on odd and even
    positions we will have everything sorted unless
    the situation like this happens
  • 0 0 0 0 0 0 0 1 0 1 1 1 1 1 1 1
  • Then the last final touch (correction step)
    cleans the sequence.
  • The situation is subtle, the last correction does
    not clean for example
  • 0 0 0 0 0 0 1 0 1 1 1 1 1 1 1
  • But the dirty 1 (if there is any) should be on an
    even position, which is always the case
Write a Comment
User Comments (0)
About PowerShow.com