-
-
Notifications
You must be signed in to change notification settings - Fork 24
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
Make cuDNN/cuTENSOR/NCCL optional #109
Comments
Wee need changes in both ( cupy/cupy#4850 (comment) ). The CuPy bits can be discussed in that issue. The Conda bits are easy to handle once the CuPy bit are done (and in a release) |
Thanks, @pentschev! @kkraus14 @jakirkham I have a question related to this need. I'd also like to make cuTENSOR optional --- which currently is not, as I expanded the build matrix so that we build CuPy without cuTENSOR support (for CUDA 9.2 - 11.2) in cos6 images, and we build it with cuTENSOR (for CUDA 10.1+) in cos7 images. This is a bit too much. In order to make it optional (and reduce the build matrix size), I say we kill the duplicate builds in the former (cos6 + CUDA 10.1+). WDYT? Would this have any real impact to your user base? |
Does CuPy link to cuTENSOR at build time? |
Yes, there're two Cython modules for supporting cuTENSOR. |
Likewise for cuDNN and NCCL. |
What happens if a user tries to load those modules if they were linked to those libraries, but the libraries were not present? A library load error? Or does CuPy have some way to insulate the user from that? |
Python raises |
Sounds good. I think if we have that in place for cuTENSOR and NCCL, it will be easy to make those optional here in the same way |
Also ok with dropping CentOS 6 (assuming I understood your suggestion above correctly) RAPIDS is CentOS 7+ only |
I raised the question on version pinning in the CuPy counterpart issue: cupy/cupy#4850 (comment). CuPy's library metadata pins at different versions from the latest ones we have on CF, so it needs to be addressed too. |
Once that is done, I think we can add all of these to |
In case it wasn't clear, the work plan is as follows:
|
(btw @pentschev I changed the issue title to reflect the new plan.) |
@pentschev this is done starting v9.0.0rc1; v8.6 still has to carry the deps... |
Thanks so much @leofang , you're awesome! 😄 |
Currently CuPy lists cuDNN as a requirement, but given cuDNN is large in size it's possibly a good idea to make it optional instead. A concrete use case is RAPIDS, it depends on CuPy but doesn't use cuDNN, which forces the inclusion of that library in official Docker containers, etc.
@leofang mentioned there may be a few things that need to be changed. Could we discuss those here? Do we need those changes in the CuPy repo or do they need to be here in the feedstock?
cc @kkraus14 @kmaehashi @jakirkham
The text was updated successfully, but these errors were encountered: