Skip to content

fix(pathfinder): use exact dynamic library names - #2689

Draft
rwgk wants to merge 2 commits into
NVIDIA:mainfrom
rwgk:pathfinder_wildcard_cleanup
Draft

fix(pathfinder): use exact dynamic library names#2689
rwgk wants to merge 2 commits into
NVIDIA:mainfrom
rwgk:pathfinder_wildcard_cleanup

Conversation

@rwgk

@rwgk rwgk commented Aug 23, 2026

Copy link
Copy Markdown
Contributor

Description

Related: #1732

cuda-pathfinder used broad filesystem wildcard matching for Linux shared
objects and an explicit CUPTI fallback glob on Windows. Already-loaded
detection and native loading use descriptor-declared names instead, so a
wildcard-only match could load successfully but remain invisible to a later
uncached residency check. In less controlled cases, that asymmetry could also
allow a second version of a library into the process.

This PR simplifies and aligns the behavior:

  • Use exact descriptor-declared names for filesystem discovery on both
    platforms.
  • Share Linux's newest-first SONAME list across filesystem discovery,
    already-loaded detection, and native loading.
  • Remove CUPTI's Windows wildcard exception; new names are cataloged
    explicitly like other libraries.
  • Fix the existing cuFFT Mp SONAME ordering so ABI 12 is preferred over ABI
    11.

Explicit Linux filesystem layouts must now expose an exact declared SONAME
alias. A physical patch-version filename without that alias is intentionally
not discovered.

Checklist

  • New or existing tests cover these changes.
  • The documentation is up to date with these changes.

rwgk added 2 commits August 23, 2026 14:54
CUPTI uses the stable cupti64_13.dll basename starting with CUDA 13.5, so it no longer needs forward-compatible wildcard discovery for each toolkit release. Add the stable name and remove the now-unused Windows DLL fallback-glob metadata and search machinery.
Use one descriptor-defined newest-first candidate list for filesystem discovery, RTLD_NOLOAD checks, and native loading. Remove the generic unversioned and glob fallbacks so undeclared ABI names cannot be found on disk while remaining invisible to resident checks.

Correct the cufftMp catalog ordering so ABI 12 is preferred over ABI 11. Layouts must provide an exact declared SONAME alias; physical patch filenames without that alias are intentionally not discovered.
@rwgk rwgk added this to the cuda.pathfinder next milestone Aug 23, 2026
@rwgk rwgk added the cuda.pathfinder Everything related to the cuda.pathfinder module label Aug 23, 2026
@rwgk rwgk self-assigned this Aug 23, 2026
@copy-pr-bot

copy-pr-bot Bot commented Aug 23, 2026

Copy link
Copy Markdown
Contributor

Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually.

Contributors can view more details about this message here.

@rwgk

rwgk commented Aug 23, 2026

Copy link
Copy Markdown
Contributor Author

/ok to test ab26c96

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

Labels

cuda.pathfinder Everything related to the cuda.pathfinder module

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant