Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mark all kernels with internal linkage #5764

Merged

Conversation

robertmaynard
Copy link
Contributor

Downstream consumers of static built versions of RAPIDS C++ projects have encountered runtime issues due to multiple instances of the same kernel existing in different DSOs.

To resolve this issue we need to ensure that all CUDA kernels in all RAPIDS libraries need to be have internal linkage ( static for projects using whole compilation, attribute((visibility("hidden"))) for header libraries / separable compilation ).

This updates all cuml kernels to have internal linkage, and adds a CI job to verify that no new kernels are added with external linkage.

@robertmaynard robertmaynard added bug Something isn't working non-breaking Non-breaking change labels Feb 7, 2024
@robertmaynard robertmaynard requested review from a team as code owners February 7, 2024 21:56
Copy link
Contributor

@bdice bdice left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a reason you decided not to add a macro like CUDF_KERNEL here?

@robertmaynard
Copy link
Contributor Author

Is there a reason you decided not to add a macro like CUDF_KERNEL here?

No, will revise to use a common macro

@robertmaynard robertmaynard force-pushed the fea/mark_kernels_as_internal branch from 5f730c2 to 53d3d0b Compare February 8, 2024 17:00
@robertmaynard robertmaynard force-pushed the fea/mark_kernels_as_internal branch from 53d3d0b to c33e56b Compare February 12, 2024 15:29
@robertmaynard robertmaynard changed the base branch from branch-24.04 to branch-24.06 April 10, 2024 14:55
@robertmaynard robertmaynard requested a review from a team as a code owner April 10, 2024 17:09
@github-actions github-actions bot added the CMake label Apr 10, 2024
Co-authored-by: Bradley Dice <bdice@bradleydice.com>
@robertmaynard robertmaynard requested a review from bdice April 10, 2024 19:04
@bdice
Copy link
Contributor

bdice commented Apr 12, 2024

This should be good to go once the documentation fix finishes running CI and we get an ops approval. I'll pre-emptively merge this.

@bdice
Copy link
Contributor

bdice commented Apr 12, 2024

/merge

@rapids-bot rapids-bot bot merged commit 95dd665 into rapidsai:branch-24.06 Apr 15, 2024
59 checks passed
@robertmaynard robertmaynard deleted the fea/mark_kernels_as_internal branch April 15, 2024 13:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working CMake CUDA/C++ non-breaking Non-breaking change
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants