Skip to content

[FEA]: Add support for pathfinder.find_bitcode_lib("nvshmem_device")#1828

Open
rwgk wants to merge 2 commits intoNVIDIA:mainfrom
rwgk:pathfinder_find_bitcode_lib_nvshmem_device
Open

[FEA]: Add support for pathfinder.find_bitcode_lib("nvshmem_device")#1828
rwgk wants to merge 2 commits intoNVIDIA:mainfrom
rwgk:pathfinder_find_bitcode_lib_nvshmem_device

Conversation

@rwgk
Copy link
Copy Markdown
Collaborator

@rwgk rwgk commented Mar 29, 2026

Closes #1421

Tested with (site-packages, Conda) x (cu12, cu13) on Linux.

(site-packages, Conda) x (cu12, cu13)
@rwgk rwgk added this to the cuda.pathfinder next milestone Mar 29, 2026
@rwgk rwgk self-assigned this Mar 29, 2026
@rwgk rwgk added P1 Medium priority - Should do feature New feature or request cuda.pathfinder Everything related to the cuda.pathfinder module labels Mar 29, 2026
@copy-pr-bot
Copy link
Copy Markdown
Contributor

copy-pr-bot bot commented Mar 29, 2026

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.

nvshmem wheels are not published for Windows, so the nvshmem_device
entry must be filtered out on that platform. This adds an
`available_on_windows` key to _BitcodeLibInfo and uses it to build
SUPPORTED_BITCODE_LIBS, which controls test parametrization.

Made-with: Cursor
@rwgk
Copy link
Copy Markdown
Collaborator Author

rwgk commented Mar 30, 2026

/ok to test

@github-actions
Copy link
Copy Markdown

@rwgk
Copy link
Copy Markdown
Collaborator Author

rwgk commented Mar 30, 2026

Hi @benhg, could you please take a look at this tiny PR?

I could only find a single .bc file under site-packages and Conda. Your original request (#1421) was:

cuda_pathfinder.find_bitcode_lib("nvshmem", lib_type=LLVM)

What is the idea behind lib_type?

@benhg
Copy link
Copy Markdown
Member

benhg commented Mar 30, 2026

Hi @benhg, could you please take a look at this tiny PR?

I could only find a single .bc file under site-packages and Conda. Your original request (#1421) was:

cuda_pathfinder.find_bitcode_lib("nvshmem", lib_type=LLVM)

What is the idea behind lib_type?

Hi @rwgk - thanks for this!

Right now, there is in fact only one libnvshmem_device.bc. In NVSHMEM 3.7, there will probably be a libnvshmem_device.bc, and a libnvshmem_device.ltoir. There may also be libnvshmem_device_SM{gencode}.bc

Thanks

@rwgk rwgk marked this pull request as ready for review March 31, 2026 00:18
@rwgk rwgk requested a review from cpcloud March 31, 2026 00:18
@rwgk
Copy link
Copy Markdown
Collaborator Author

rwgk commented Mar 31, 2026

Conclusion from offline discussion with @benhg: the current state of the PR is good to go.

In the future we can add e.g. find_bitcode_lib("nvshmem_device:IR=LTO") or possibly more formalized alternatives, such as find_bitcode_lib("nvshmem_device", ir="LTO"). The simple API in this PR is compatible with either alternative.

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 feature New feature or request P1 Medium priority - Should do

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FEA]: cuda-pathfinder supporting LLVM/LTO bitcode libraries

2 participants