-
Notifications
You must be signed in to change notification settings - Fork 5
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
Remove OSX support, add cudadevrt #5
Conversation
OSX CUDA Toolkit packages have not been published since 9.1, and the present build.py implementation does not correctly build the package.
cudadevrt is a static library, so we add an additional platform-specific key and related logic to handle copying static libraries.
I forgot to mention, example packages built with the recipe in this PR for Linux and Windows are at: https://anaconda.org/gmarkall/cudatoolkit/files |
@jjhelmus, would it be possible to get a review here? 🙂 |
Holy xxxx! This is not in |
It seems even with this addition, CuPy would still be unable to locate it...This is our searching strategy: https://github.com/cupy/cupy/blob/775cb7d9ccfbee8aebb46ff7c310dddc3a2b72af/cupy/cuda/compiler.py#L78-L100
Am I right that none of these is met by conda-forge's packaging? |
Interesting did not realize this was needed by CuPy too. Should we open an issue on the |
With the
It looks like CuPy doesn't find the |
Right, CuPy's searching strategy (aka @gmarkall Let me know if I am wrong: Numba can find Sounds like the simplest solution is to set |
@gmarkall, how did you install In [1]: from cupy.cuda import get_cuda_path
In [2]: get_cuda_path()
Out[2]: '/datasets/jkirkham/miniconda/envs/rapids13dev'
`` |
@jakirkham I think it's because you have $ conda activate CF_cupy_test
$ python
Python 3.7.6 | packaged by conda-forge | (default, Mar 23 2020, 23:03:20)
[GCC 7.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from cupy.cuda import get_cuda_path
>>> get_cuda_path()
'/usr/local/cuda' |
Ah ok. That might be. Yeah I installed |
Thanks for identifying this issue. 🙂 It seems like an easy fix upstream. Have raised issue ( cupy/cupy#3222 ). As to setting |
I did:
The
|
Yes this is exactly what I meant!
I feel this is our own issue (providing a customized CUDA Toolkit that is split apart in a highly non-trivial way), and if possible we should just fix it with our own (conda) tools. It's a bit unfair to bother upstream folks for this (even if the final PR comes from one of us) as this CUDA usage was not what was originally intended (by NVIDIA or any sensible people) at all. |
Thanks Graham! I'm also able to reproduce without |
Leo, let's find a new forum for this discussion. I don't want us to derail Graham's PR 😉 |
Sounds good, redirecting to conda-forge/cupy-feedstock#46. |
@gmarkall Do you know if cudadevrt is picky on the CUDA driver version (which is beyond control of conda)? |
I'm afraid I don't know, but I would guess it's probably no more picky than the other components (e.g. cudart). |
Just curious, what's blocking this PR? LGTM. |
cc @jjhelmus |
Ping @jjhelmus again. Without including cudadevrt it could make downstream packages fail if dynamic parallelism or cooperative group is required, see, e.g.: |
This is great, sorry for taking so long to review. |
Many thanks for the review and merge! |
Awesome! Thanks Jonathan! 😄 |
cudatoolkit 10.2.89 build 1 packages which include The specific build strings files are: |
Thanks Jonathan! I confirm this works. |
Hi @jjhelmus Is it possible to add cudadevrt to all |
I raised issue ( #8 ) about how we might manage/maintain multiple |
The primary aim of this PR is to add the
cudadevrt
static library, which is needed for dynamic parallelism, grid sync, etc. For example, it is required for this Numba PR: numba/numba#4551It seems that the OSX packages aren't built anymore:
and the recipe doesn't even point to a correct URL for the toolkit, so rather than fixing that up, I've removed the OSX builder instead.