Skip to content

[ENH]: Pathfinder CI test case coverage improvements #1093

Description

@brandon-b-miller

cuda.pathfinder is currently tested in CI for two CTK installation modes: a system CTK and one whose components are individually provided via wheels. Generally, pathfinder seems to be tested wherever cuda.bindings and cuda.core are tested.

Instead, cuda.pathfinder ought to have its own matrix of CI jobs that test the four installation modes that are supported: a system install, a wheel install, a conda install, and a local install of the ctk at a nonstandard directory the user points to via CUDA_HOME.

The solution might look like removing the pathfinder tests from the existing jobs and assigning a dedicated CI workflow to pathfinder that runs pathfinder tests across all the CTK installation modes. Existing testing coverage of cuda-core and cuda-bindings could be maintained if desired.

Activity

  1. brandon-b-miller commented on Oct 7, 2025

    @brandon-b-miller
    ContributorAuthor
  2. added
    cuda.pathfinderEverything related to the cuda.pathfinder module
    CI/CDCI/CD infrastructure
    on Oct 7, 2025
  3. rwgk commented on Oct 28, 2025

    @rwgk
    Contributor

    Test matrix:

    • 1-site-packages
      • 1-linux-64
        • cu12
        • cu13
      • 2-linux-aarch64
        • cu12
        • cu13
      • 3-win-64
        • cu12
        • cu13
    • 2-local-ctk
      • 1-linux-64
        • cu12
        • cu13
      • 2-linux-aarch64
        • cu12
        • cu13
      • 3-win-64
        • cu12
        • cu13
    • 3-conda-ctk
      • 1-linux-64
        • cu12
        • cu13
      • 2-linux-aarch64
        • cu12
        • cu13
      • 3-win-64
        • cu12
        • cu13

    for pkgsys in ("1-site-packages", "2-local-ctk", "3-conda-ctk"):
        print(f"* {pkgsys}")
        for arch in ("1-linux-64", "2-linux-aarch64", "3-win-64"):
            print(f"    * {arch}")
            for cumajor in ("12", "13"):
                print(f"        * cu{cumajor}")
  4. rwgk commented on Oct 28, 2025

    @rwgk
    Contributor

    Commands to set up environments:

    • site-packages (identical on all platforms)
    cd cuda_pathfinder/
    pip install -v -e . --group test-cu13
    
    pip install -v -e . --group test-cu12
    

    • local-ctk
    cuda_13.0.2_580.95.05_linux.run
    cuda_13.0.2_580.95.05_linux_sbsa.run
    cuda_13.0.2_windows.exe
    
    cuda_12.9.1_575.57.08_linux.run
    cuda_12.9.1_575.57.08_linux_sbsa.run
    cuda_12.9.1_576.57_windows.exe
    
    cd cuda_pathfinder/
    pip install -v -e . --group test
    

    • conda-ctk
    toolshed/conda_create_for_pathfinder_testing.sh 13.0.2
    
    toolshed/conda_create_for_pathfinder_testing.sh 12.9.1
    
    toolshed/conda_create_for_pathfinder_testing.ps1 13.0.2
    
    toolshed/conda_create_for_pathfinder_testing.ps1 12.9.1
    
    cd cuda_pathfinder/
    pip install -v -e . --group test
    
  5. rwgk commented on Oct 28, 2025

    @rwgk
    Contributor

    Commands for testing:

    export CUDA_PATHFINDER_TEST_LOAD_NVIDIA_DYNAMIC_LIB_STRICTNESS=all_must_work
    export CUDA_PATHFINDER_TEST_FIND_NVIDIA_HEADERS_STRICTNESS=all_must_work
    cd cuda_pathfinder/
    pytest -ra -s -v tests/
    
    $env:CUDA_PATHFINDER_TEST_LOAD_NVIDIA_DYNAMIC_LIB_STRICTNESS = "all_must_work"
    $env:CUDA_PATHFINDER_TEST_FIND_NVIDIA_HEADERS_STRICTNESS = "all_must_work"
    cd cuda_pathfinder\
    pytest -ra -s -v tests\
    

    For local-ctk testing: CUDA_HOME must be set in the environment

  6. added
    P0High priority - Must do!
    and removed
    triageNeeds the team's attention
    on Oct 30, 2025
  7. 4 remaining items

  8. changed the title [-]Pathfinder CI test case coverage improvements[/-] [+][ENH]: Pathfinder CI test case coverage improvements[/+] on Mar 4, 2026
  9. removed this from the cuda.pathfinder backlog milestone on Apr 2, 2026
  10. rparolin commented on May 4, 2026

    @rparolin
    Collaborator

    @rwgk Are we still working on this?

  11. rwgk commented on May 4, 2026

    @rwgk
    Contributor

    @rwgk Are we still working on this?

    Short answer: No

    Not directly at least. I'm adding more mocks on the go while working on #1038 / #1977. When I'm done with that ("days, not weeks"), it'd make sense to make a pass cleaning up the pathfinder tests as a whole, but currently I don't think it needs to be a big project (like what I had in mind back in October).

  12. added this to the cuda.pathfinder next milestone on May 21, 2026
  13. rparolin commented on May 29, 2026

    @rparolin
    Collaborator

    @rwgk I'm going to close this ticket out given that we aren't working on it anymore. Feel free to re-open if you believe it was a mistake.

  14. assigned and unassigned on May 29, 2026
  15. leofang commented on May 29, 2026

    @leofang
    Member

    I will take a stab at this.

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

Metadata

Metadata

Assignees

Labels

CI/CDCI/CD infrastructureP0High priority - Must do!cuda.pathfinderEverything related to the cuda.pathfinder moduleenhancementAny code-related improvements

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions