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

NVRTC Batch 5 #1180

Merged
merged 35 commits into from
Aug 16, 2024
Merged

NVRTC Batch 5 #1180

merged 35 commits into from
Aug 16, 2024

Conversation

mborland
Copy link
Member

Finally, we have enough foundation on NVRTC that we can now add distributions.

Adds NVRTC support to: arcsine dist, bernoulli dist, cauchy dist, exponential dist, extreme value dist, holtsmark dist, landau dist, laplace dist, logistic dist, mapairy dist, and saspoint5 dist. This is the same support that currently exists for NVCC

Replaces the use of thurst::pair with cuda::std::pair so that it works with NVRTC. Implement our own versions of cuda::std::forward and cuda::std::make_tuple since they are missing from libcu++.

NVRTC support is almost in line with what is supported in NVCC and SYCL minus a few outstanding special functions that are not in the libcu++ library. Those will be in the next batch so that development moving forward will apply to all platforms at once rather than piecemeal.

Completed CI runs on device can be found at: cppalliance/cuda-math#13

CC: @steppi, @izaid, @dschmitz89

@izaid
Copy link

izaid commented Aug 15, 2024

This is really, really great! Thanks!!

@dschmitz89
Copy link
Contributor

Same here, on behalf of the Python community, thank you very much, this whole undertaking will be an important step for reusable special functions throughout the ecosystem!

@mborland
Copy link
Member Author

Only CI failure is a bad connect downloading packages. Should be safe to merge.

@mborland mborland merged commit 54e5acf into develop Aug 16, 2024
76 of 77 checks passed
@mborland mborland deleted the NVRTC_5 branch August 16, 2024 13:36
@steppi
Copy link

steppi commented Aug 19, 2024

Excellent! I'll start looking into getting this working in CuPy.

@mborland
Copy link
Member Author

Excellent! I'll start looking into getting this working in CuPy.

Let us know how it goes and feel free to ping us with issues you find.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants