Uploaded image for project: 'Hama'
  1. Hama
  2. HAMA-643

Introduce BSP_OBLSYNC

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • bsp core, messaging
    • None

    Description

      The PUB Library [1] a german BSP lib contains a very interesting feature called "oblivious synchronization" or in short "BSP_OBLSYNC".

      The signature of the method looks like this:

      bsp oblsync (bsp, numMsgs)

      {{{
      The oblivious synchronization should be used if the programmer knows the number of messages
      each processor will receive in a superstep. E.g., if each processor sends a message to its right
      neighbour then every processor knows that it will receive exactly one message. Thus, in the oblivious
      synchronization each processor waits until nmsgs are received. This type of synchronization
      is much faster than the other one since no additional communication is needed. The standard
      synchronization should be used if the number of messages to receive is unknown. Supersteps with
      standard synchronization can alternate with oblivious synchronizations, but within one superstep
      each processor has to use the same type of synchronization
      }}}

      With such an feature, we can greatly speedup kmeans clustering by avoiding barrier synchronization, because the message exchanged are constant throughout all supersteps.

      [1] http://www2.cs.uni-paderborn.de/~pub/

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              thomas.jungblut Thomas Jungblut
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated: