-
-
Notifications
You must be signed in to change notification settings - Fork 3
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
Rebuild for CUDA 12 #40
Rebuild for CUDA 12 #40
Conversation
The transition to CUDA 12 SDK includes new packages for all CUDA libraries and build tools. Notably, the cudatoolkit package no longer exists, and packages should depend directly on the specific CUDA libraries (libblas, libcusolver, etc) as needed. For an in-depth overview of the changes and to report problems [see this issue]( conda-forge/conda-forge.github.io#1963 ). Please feel free to raise any issues encountered there. Thank you! 🙏
…nda-forge-pinning 2023.06.08.00.22.40
Hi! This is the friendly automated conda-forge-linting service. I just wanted to let you know that I linted all conda-recipes in your PR ( |
Compile line
error
Incompatibility between new nvcc and pybind11? |
This is just on CUDA 12 |
On OS X, compiler line:
error:
i.e. |
Think this is due to The Maybe Edit: Filed issue ( bacpop/pp-sketchlib#92 ) |
Thanks for diagnosing this! I will fix this upstream and release a new version |
Happy to help :) Also the pybind11 compilation issue looks similar to upstream issue ( pybind/pybind11#4606 ) |
brilliant, thanks – I will probably wait for that to be fixed before updating the build here in that case |
A new release for the macOS fixes is probably useful here independently of the pybind11 issue as the macOS issues show up in other PRs ( like this HDF5 migrator: #41 ) For the pybind11 + nvcc issue, we might be able to use a different version of GCC with CUDA 12 (like GCC 11 or 10) as a workaround ( pybind/pybind11#4606 (comment) ) |
Along the lines of trying older compilers to see if that resolves the issues, have configured macOS to use LLVM 14 and the Linux CUDA 12 build to use GCC 11 |
Needed a couple more pins for macOS, but this seems to work Please take a look and let me know what you think 🙂 |
The combination of pybind11 + GCC 12 + nvcc 12 runs into compilation errors. This is documented in a pybind11 issue. To workaround this, configure the CUDA 12 migrator to use GCC 11, which shouldn't have this issue. xref: pybind/pybind11#4606
…nda-forge-pinning 2023.06.27.16.55.53 Now that GCC 11 is configured for use with CUDA 12 in the migrator, re-render to propagate that changes to the variants and CI.
As build issues are being encountered with LLVM 15 on macOS, pin to LLVM 14 in this feedstock to workaround those build issues. To ensure `llvm-openmp` matches pin it as well. Also, as the new `libcxx` will introduce this problem even with the older compiler toolchain, add `libcxx` as an explicit dependency in `build` & `host` along with pinning it. These build issues still need to be fixed upstream. However, this workaround should just allow this feedstock to continue to build on macOS.
…nda-forge-pinning 2023.06.27.16.55.53 Now that the LLVM 14 toolchain is pinned on macOS, re-render to update the variants with these constraints.
7fbc9bd
to
c617e8c
Compare
Cleaned up the commits a bit to make it easier to see relevant changes grouped together. Also should hopefully make it easier to revert them when no longer needed |
This all looks great, thanks! I'll fix upstream shortly for OS X, and hopefully the next CUDA 12 release will fix the pybind issue |
Happy to help 😄 Thanks John! 🙏 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Filed feedstock issues for follow up (linked below) once the corresponding upstream issues are resolved. Noting here for clarity
|
||
fortran_compiler_version: # [linux64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] | ||
- 12 # [linux64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] | ||
- 11 # [linux64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Filed issue ( #43 ) to track reverting this once the upstream issue ( pybind/pybind11#4606 ) is resolved
########################################################### | ||
# Drop this file when the upstream issue is fixed. # | ||
# # | ||
# xref: https://github.com/bacpop/pp-sketchlib/issues/92 # | ||
########################################################### | ||
c_compiler_version: # [osx] | ||
- 14 # [osx] | ||
cxx_compiler_version: # [osx] | ||
- 14 # [osx] | ||
libcxx: # [osx] | ||
- 14 # [osx] | ||
llvm_openmp: # [osx] | ||
- 14 # [osx] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Filed issue ( #42 ) to track reverting this once the upstream issue ( bacpop/pp-sketchlib#92 ) is resolved
@@ -38,6 +41,9 @@ requirements: | |||
- eigen | |||
- hdf5 | |||
- openblas | |||
# Drop `libcxx` when the upstream issue is fixed | |||
# xref: https://github.com/bacpop/pp-sketchlib/issues/92 | |||
- libcxx # [osx] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Filed issue ( #42 ) to track reverting this once the upstream issue ( bacpop/pp-sketchlib#92 ) is resolved
This PR has been triggered in an effort to update cuda120.
Notes and instructions for merging this PR:
Please note that if you close this PR we presume that the feedstock has been rebuilt, so if you are going to perform the rebuild yourself don't close this PR until the your rebuild has been merged.
Here are some more details about this specific migrator:
If this PR was opened in error or needs to be updated please add the
bot-rerun
label to this PR. The bot will close this PR and schedule another one. If you do not have permissions to add this label, you can use the phrase@conda-forge-admin, please rerun bot
in a PR comment to have theconda-forge-admin
add it for you.This PR was created by the regro-cf-autotick-bot. The regro-cf-autotick-bot is a service to automatically track the dependency graph, migrate packages, and propose package version updates for conda-forge. Feel free to drop us a line if there are any issues! This PR was generated by https://github.com/regro/cf-scripts/actions/runs/5209187231, please use this URL for debugging.