Skip to content

Support cuTENSOR in pathfinder #1144

Closed

Description

@leofang

Both nvmath-python (cc @yangcal) and CuPy will need it.

New functionality needed:

load_nvidia_dynamic_lib("cutensor")
load_nvidia_dynamic_lib("cutensorMg")
find_nvidia_header_directory("cutensor")

Activity

  1. added
    enhancementAny code-related improvements
    P0High priority - Must do!
    cuda.pathfinderEverything related to the cuda.pathfinder module
    triageNeeds the team's attention
    on Oct 16, 2025
  2. yangcal commented on Oct 16, 2025

    @yangcal
    Contributor

    Is it gonna be inside the bindings? Should cuquantum C libs be supported too?

  3. leofang commented on Oct 16, 2025

    @leofang
    MemberAuthor

    Most of nvmath modules have switched over to use pathfinder (which helps avoid the RPATH hack at build time), so I assume it's good to help them stay consistent.

    For cuQuantum Python, I guess it is really up to you if you want to replace the existing code in the codegen with pathfinder 🙂 I think the search behavior should be compatible and technically there is no strong reason for changing.

  4. ZzEeKkAa commented on Oct 23, 2025

    @ZzEeKkAa
    Contributor

    Tarballs (https://developer.nvidia.com/cutensor-downloads?target_os=Linux&target_arch=x86_64&Distribution=Agnostic):

    • wget https://developer.download.nvidia.com/compute/cutensor/redist/libcutensor/linux-x86_64/libcutensor-linux-x86_64-2.3.1.0_cuda13-archive.tar.xz
    • wget https://developer.download.nvidia.com/compute/cutensor/redist/libcutensor/linux-x86_64/libcutensor-linux-x86_64-2.3.1.0_cuda12-archive.tar.xz

    Wheels:

    Conda:

  5. rwgk commented on Oct 23, 2025

    @rwgk
    Contributor

    Quick triaging:

    pip install cutensor-cu13
    pip install cutensor-cu12
    
    ::::::::::::::
    ./cutensor_cu12-2.3.1.dist-info/RECORD
    ::::::::::::::
    cutensor/include/cutensor.h
    cutensor/include/cutensor/types.h
    cutensor/include/cutensorMg.h
    cutensor/lib/libcutensor.so.2
    cutensor/lib/libcutensorMg.so.2
    
    ::::::::::::::
    ./cutensor_cu13-2.3.1.dist-info/RECORD
    ::::::::::::::
    cutensor/include/cutensor.h
    cutensor/include/cutensor/types.h
    cutensor/include/cutensorMg.h
    cutensor/lib/libcutensor.so.2
    cutensor/lib/libcutensorMg.so.2
    
  6. self-assigned this
    on Oct 23, 2025
  7. rwgk commented on Oct 26, 2025

    @rwgk
    Contributor

    @ZzEeKkAa Where are the tarballs usually installed? Do we need to support certain standard locations?

  8. rwgk commented on Oct 27, 2025

    @rwgk
    Contributor

    From off-line discussion:

    When using tarballs, users are expected to set LD_LIBRARY_PATH, or install into a directory that is already covered by ldconfig (such as /usr/lib).

    This means libcutensor will be found by the system search and we don't need any special code in pathfinder.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

P0High priority - Must do!cuda.pathfinderEverything related to the cuda.pathfinder moduleenhancementAny code-related improvementstriageNeeds the team's attention

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions