Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: dmlc/dlpack
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v1.1
Choose a base ref
...
head repository: dmlc/dlpack
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v1.2
Choose a head ref
  • 10 commits
  • 5 files changed
  • 10 contributors

Commits on Mar 13, 2025

  1. Configuration menu
    Copy the full SHA
    22eb042 View commit details
    Browse the repository at this point in the history

Commits on Mar 14, 2025

  1. fix doc rendering again

    leofang authored Mar 14, 2025
    Configuration menu
    Copy the full SHA
    2541d71 View commit details
    Browse the repository at this point in the history

Commits on Mar 25, 2025

  1. chore: fix typos in dlpack.h comments and notes (#161)

    - Correct 'multiply' to 'multiple' in data alignment comment.
    - Correct 'aligment' to 'alignment' in data alignment comment.
    - Fix typo 'in in' to 'in' in DLManagedTensorVersioned comment.
    corenel authored Mar 25, 2025
    Configuration menu
    Copy the full SHA
    83af1e7 View commit details
    Browse the repository at this point in the history

Commits on Mar 31, 2025

  1. Configuration menu
    Copy the full SHA
    490e31b View commit details
    Browse the repository at this point in the history

Commits on Apr 10, 2025

  1. update diagram to 1.1 (#164)

    leofang authored Apr 10, 2025
    Configuration menu
    Copy the full SHA
    688d2ba View commit details
    Browse the repository at this point in the history

Commits on May 12, 2025

  1. Configuration menu
    Copy the full SHA
    5c210da View commit details
    Browse the repository at this point in the history

Commits on Jun 10, 2025

  1. add trn (#168)

    jinhongyii authored Jun 10, 2025
    Configuration menu
    Copy the full SHA
    7f393bb View commit details
    Browse the repository at this point in the history

Commits on Sep 4, 2025

  1. Use commit hash to download lint script (#171)

    Since it was deleted in dmlc/dmlc-core#693
    take-cheeze authored Sep 4, 2025
    Configuration menu
    Copy the full SHA
    addbc8b View commit details
    Browse the repository at this point in the history

Commits on Oct 11, 2025

  1. [RFC] Support DLPACK C Functions for Speed Exchange and Stream Handli…

    …ng (#174)
    
    * [RFC] Support DLPACK C Functions for Speed Exchange and Stream Handling
    
    This PR adds support for three C functions to speedup DLPack exchange.
    As of now, DLPack exchange relies on python functions such as tensor.__dlpack__().
    
    While they works well for common cases, the general overhead of such exchange is
    at the level of 0.2-0.3 us for very well optimized version, and can go up to
    0.4-1 us for less optimized implementation.
    
    For a function that takes three arguments f(a, b, c), assume we run DLPack
    exchange for each argument, the general conversion overhead usually gets to
    around 1us and sometimes to 3us.
    
    While such overhead can be acceptable in many settings, in GPU applications
    the extra 1-3us overhead can still be significant.
    
    This PR proposes three functions for speed exchange DLPack tensors without
    going through python interpreter.
    
    - DLPackFromPyObject: exports a PyObject Tensor to DLManagedTensorVesioned
    - DLPackToPyObject: DLManagedTensorVesioned converts to a PyObject Tensor
    - DLPackTensorAllocator: Used to expose one package's tensor allocator to another package
      - This allows for example we implement libraries that allocates intermediate tensor
        based on the caller's specified Tensor Allocator.
    
    Our preliminary results show that these functions, when incorporated correctly
    via native extensions such as c/c++, can bring exchange cost to the level of
    30ns - 80ns, giving us about one order of maginitude speedup. That means functions
    like f(a, b, c) can finish at 0.2us-0.4us level, which is close to what native
    cpp extension overhead do without exchange.
    
    * Incorporate suggestions to use a global table
    for all function pointers
    
    * Update naming and specification according to feedbacks
    
    * Add maximum version parameter
    
    * Update to include WorkStream proposal, move version to API chain
    
    * Update based on latest feedback
    
    * Incorporate feedbacks from sberg
    
    Co-authored-by: Sebastian Berg <sebastianb@nvidia.com>
    
    * Update include/dlpack/dlpack.h
    
    Co-authored-by: Sebastian Berg <sebastian@sipsolutions.net>
    
    * Update include/dlpack/dlpack.h
    
    Co-authored-by: Sebastian Berg <sebastian@sipsolutions.net>
    
    * Move exchange api to common header
    
    * Update include/dlpack/dlpack.h
    
    Co-authored-by: Lisandro Dalcin <dalcinl@gmail.com>
    
    ---------
    
    Co-authored-by: Sebastian Berg <sebastianb@nvidia.com>
    Co-authored-by: Sebastian Berg <sebastian@sipsolutions.net>
    Co-authored-by: Lisandro Dalcin <dalcinl@gmail.com>
    4 people authored Oct 11, 2025
    Configuration menu
    Copy the full SHA
    1117366 View commit details
    Browse the repository at this point in the history
  2. Enforce strides to be not null when ndim is nonzero (#178)

    * Enforce strides to be not null when ndim is nonzero
    
    This PR updates the spec to enforce the strides to be not null
    when the ndim is nonzero.
    This is going to help consumers to handle cases more uniformly.
    
    * Add more comments on the null rationale
    
    * Remove mention of framework handling
    
    * Update NULL note, bump minor
    tqchen authored Oct 11, 2025
    Configuration menu
    Copy the full SHA
    93c8f2a View commit details
    Browse the repository at this point in the history
Loading