Fix native UDF toolchain alignment for cuDF main#624
Conversation
Greptile SummaryThis PR fixes a toolchain/ABI mismatch when building the native UDF against cuDF Confidence Score: 5/5Safe to merge — changes are minimal, targeted, and consistent with the stated fix. Both changes are straightforward: a compiler toolset version bump in the Dockerfile and a branch name update in CMakeLists.txt. No logic, API contracts, or data paths are affected. The dual use of rapids-cmake-branch as both the cmake helper branch and cuDF GIT_TAG was pre-existing behavior, not introduced by this PR. No P0 or P1 findings. No files require special attention. Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[Docker Build\ngcc-toolset-13] --> B[CMake Configure]
B --> C{USE_PREBUILT_CUDF?}
C -- ON --> D[Download RAPIDS.cmake\nfrom rapidsai/rapids-cmake @ main]
C -- OFF --> D
D --> E[rapids_cpm_init]
C -- ON --> F[Use prebuilt libcudf.so\nfrom rapids-4-spark jar]
F --> G[Fetch CCCL + RMM\nvia rapids-cmake @ main]
C -- OFF --> H[Clone cudf @ main\nvia rapids_cpm_find]
G --> I[Build udfexamplesjni.so]
H --> I
Reviews (5): Last reviewed commit: "Fix native UDF toolchain for cuDF main" | Re-trigger Greptile |
|
Please update the PR description to explain what it changed. The current description is not correct because we're using the main branch and there's no release/26.06 branch. The #623 is not because of the wrong branch. |
f14db0a to
98f7c02
Compare
Use the same RAPIDS CMake branch as cuDF main and build native UDFs with GCC 13 to avoid the CCCL/libcudacxx ABI mismatch seen when loading the UDF JNI library. Signed-off-by: liyuan <yuali@nvidia.com> Made-with: Cursor
98f7c02 to
088c603
Compare
GaryShen2008
left a comment
There was a problem hiding this comment.
Please confirm with DevOps if the Dockerfile will be rebuilt automatically in the CI.
yes. CC @NvTimLiu , merged |
Yes CI will build the UDF Docker image nightly |
Fixes #623.
Summary
The native UDF build should stay on cuDF
main. The failure was caused by toolchain/dependency mismatch with thelibcudf.soused at runtime.This PR:
release/26.02tomaingcc-toolset-14togcc-toolset-13