Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consolidate messages in UCX #3732

Open
wants to merge 39 commits into
base: main
Choose a base branch
from
Open

Commits on Apr 21, 2020

  1. Define as_cuda_array

    Provides a function to let us coerce our underlying
    `__cuda_array_interface__` objects into something that behaves more like
    an array. Prefers CuPy if possible, but will fallback to Numba if its
    not available.
    jakirkham committed Apr 21, 2020
    Configuration menu
    Copy the full SHA
    070a19f View commit details
    Browse the repository at this point in the history
  2. Send/recv host and device frames in a message each

    To cutdown on the number of send/recv operations and also to transmit
    larger amounts of data at a time, this condenses all frames into a host
    buffer and a device buffer, which are sent as two separate
    transmissions.
    jakirkham committed Apr 21, 2020
    Configuration menu
    Copy the full SHA
    bee6f0b View commit details
    Browse the repository at this point in the history

Commits on Apr 23, 2020

  1. Configuration menu
    Copy the full SHA
    a9b3161 View commit details
    Browse the repository at this point in the history
  2. Fast path cases with 0 or 1 frames

    No need to concatenate them together in this case.
    jakirkham committed Apr 23, 2020
    Configuration menu
    Copy the full SHA
    5ed7332 View commit details
    Browse the repository at this point in the history
  3. Add concat helper functions

    To optimize concatenation in the case where NumPy and CuPy are around,
    just use their `concatenate` functions. However when they are absent
    fallback to some hand-rolled concatenate routines.
    jakirkham committed Apr 23, 2020
    Configuration menu
    Copy the full SHA
    0473527 View commit details
    Browse the repository at this point in the history
  4. Add split helper functions

    To optimize the case where NumPy and CuPy are around, simply use their
    `split` function to pull apart large frames into smaller chunks.
    jakirkham committed Apr 23, 2020
    Configuration menu
    Copy the full SHA
    610e864 View commit details
    Browse the repository at this point in the history

Commits on Apr 28, 2020

  1. Configuration menu
    Copy the full SHA
    87c85cf View commit details
    Browse the repository at this point in the history
  2. Only return DeviceBuffers/memoryviews

    Make sure that we extract and return the underlying
    `DeviceBuffer`s/`memoryview`s.
    jakirkham committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    0dc0bb0 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    3d325f8 View commit details
    Browse the repository at this point in the history
  4. Drop leftover line

    jakirkham committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    107a2db View commit details
    Browse the repository at this point in the history
  5. Finish accumulation

    jakirkham committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    dbd57cf View commit details
    Browse the repository at this point in the history
  6. Fix variable name

    jakirkham committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    6fba794 View commit details
    Browse the repository at this point in the history
  7. Fix other variable names

    jakirkham committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    c04bb39 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    820fbc4 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    18d4331 View commit details
    Browse the repository at this point in the history
  10. Move sync before send/recv of device buffers

    This limits synchronization to cases where only non-trivial device
    buffers are being sent.
    jakirkham committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    19dfbf6 View commit details
    Browse the repository at this point in the history
  11. Use RMM allocator with CuPy

    jakirkham committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    1a4a324 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    5bf32e0 View commit details
    Browse the repository at this point in the history
  13. Add device_split fallback

    jakirkham committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    fb6ba72 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    0dcbd5c View commit details
    Browse the repository at this point in the history
  15. Skip last size when splitting

    This will result in an extra empty frame getting added to the back of
    the list of frames, which we don't need. So go ahead and drop the last
    length as split already will grab until the end.
    jakirkham committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    5c3ad3a View commit details
    Browse the repository at this point in the history
  16. Cast Numba arrays to uint8

    jakirkham committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    5663983 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    791fb26 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    6eac4d4 View commit details
    Browse the repository at this point in the history

Commits on Apr 30, 2020

  1. Check len to concat frames

    jakirkham committed Apr 30, 2020
    Configuration menu
    Copy the full SHA
    99a73a0 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c4c6801 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    62f7f12 View commit details
    Browse the repository at this point in the history
  4. Run black

    jakirkham committed Apr 30, 2020
    Configuration menu
    Copy the full SHA
    877dab4 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    81f718b View commit details
    Browse the repository at this point in the history
  6. Update comments

    jakirkham committed Apr 30, 2020
    Configuration menu
    Copy the full SHA
    ee528d5 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    af94abb View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    94aee85 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    a9900a0 View commit details
    Browse the repository at this point in the history
  10. Rewrite device_split to use cupy.copyto

    As `.copy()` calls `memcpy`, which is synchronous, performance is worse
    as we synchronize after copying each part of the buffer. To fix this,
    we switch to `cupy.copyto` with calls `memcpyasync`. This lets us avoid
    having a synchronize after each copy.
    jakirkham committed Apr 30, 2020
    Configuration menu
    Copy the full SHA
    f37951a View commit details
    Browse the repository at this point in the history
  11. Drop synchronize call

    Shouldn't be needed as copying should occur before deletion of the
    original buffer as it is stream ordered.
    jakirkham committed Apr 30, 2020
    Configuration menu
    Copy the full SHA
    a236401 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    b26b58d View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    a05293b View commit details
    Browse the repository at this point in the history
  14. Drop unneeded slice

    jakirkham committed Apr 30, 2020
    Configuration menu
    Copy the full SHA
    0d046d7 View commit details
    Browse the repository at this point in the history
  15. Run black

    jakirkham committed Apr 30, 2020
    Configuration menu
    Copy the full SHA
    e4a6d1e View commit details
    Browse the repository at this point in the history