-
Notifications
You must be signed in to change notification settings - Fork 189
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
[BUG]: CuPy cannot be built with CCCL v2.3.1 #1493
Comments
From the build log, I think this was the full command invoked (obtained at the parent commit of the offending one):
|
This looks like there is an additional namespace thrust::detail defined somewhere. Could that be in your project? |
I did suspect it could be the case, but I don't think I've seen it done, nor did I find anything via grep. Not sure if I missed something. Also, the offending commit looks innocent to me and it's unclear to me why this error could be triggered... I was scratching my head around. |
Oh the commit is definitely causing the issue. The issue is that nvcc has certain issues with nested namespaces. For nvcc there is difference between The commit introduced a versioning namespace that ensures that we do not accidentally mix kernels from different cccl versions. |
Now that I think about it my guess is that you have conflicting versions of thrust in your build. One will have the inline namespace one not. That would create exactly that kind of issue |
So I tried and build according to your reproducer and it does indeed fail. I den tried to replace the offending However, when actually building cupy it then expanded to plain That suggests that there are different versions of thrust at play |
I might have some clue about this. CuPy vendored very old thrust::complex headers which do come with a detail namespace. Getting rid of it is a long-term goal, in the meanwhile any suggestion for me to quickly work around? |
@leofang I have opened cupy/cupy#8221 I believe that should address your issue |
Tracked here: cupy/cupy#8222 |
Is this a duplicate?
Type of Bug
Compile-time Error
Component
Thrust
Describe the bug
Build time failure:
This happens between v2.2.0 and v2.3.1. From
git bisect
, it seems the offending commit is e21f700cc: @gevtushenko for vis
How to Reproduce
Build CuPy from source, with the CCCL submodule changed to v2.3.1
git clone --recursive https://github.com/cupy/cupy.git
cd cupy; git submodule update --init --recursive
cd third_party/cccl
git fetch --tags origin
git checkout v2.3.1
cd ../..
pip install -v -e .
Expected behavior
Build success
Reproduction link
No response
Operating System
No response
nvidia-smi output
No response
NVCC version
The text was updated successfully, but these errors were encountered: