Project

General

Profile

Feature #1158

Feature #1116: AMPI broadcasts should be [nokeep]

AMPI scatter(v) performance is poor

Added by Sam White over 2 years ago. Updated over 1 year ago.

Status:
New
Priority:
Normal
Assignee:
Category:
AMPI
Target version:
-
Start date:
08/04/2016
Due date:
% Done:

0%


Description

This is a performance bug: we currently do the naive method of sending 'p' individual messages from the root to the 'p' ranks in the communicator.
Once broadcasts are [nokeep], using them for scatter and scatterv (and having the recv'er offset into the buffer) will not be so wasteful of memory and will be much more efficient than the current approach.

History

#1 Updated by Sam White over 2 years ago

  • Parent task set to #1116
  • Tracker changed from Bug to Feature

#2 Updated by Sam White over 2 years ago

  • Status changed from New to In Progress

#3 Updated by Sam White over 2 years ago

This is not so nice for Scatterv because the displs argument is only relevant at the root (users can pass NULL from the non-root ranks). That means that we would need to send the displ array along with the data message in order to properly offset into the bcast array at the receiver, so we need to add the displ array before the scatterv data in the message payload. This makes the size of the nokeep message even larger than it will already be at every Node/PE. This could still perform better than individual messages for some #ranks and message sizes though...

#4 Updated by Sam White over 2 years ago

  • Status changed from In Progress to Implemented

The following will work once we have [nokeep] broadcasts working in AMPI: https://charm.cs.illinois.edu/gerrit/#/c/1807/

#5 Updated by Sam White over 2 years ago

  • Status changed from Implemented to In Progress
  • Target version changed from 6.8.0 to 6.8.1
  • Subject changed from AMPI scatter should use a [nokeep] broadcast to AMPI scatter(v) performance is poor

We can wait until we have a Charm++ scatter operation to use in AMPI.

#6 Updated by Eric Bohm over 1 year ago

  • Target version changed from 6.8.1 to 6.9.0

#7 Updated by Sam White over 1 year ago

  • Target version deleted (6.9.0)
  • Status changed from In Progress to New

Also available in: Atom PDF