Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 34 additions & 0 deletions CMake/resolve_dependency_modules/cudf.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,25 @@ set(
set(VELOX_cudf_SOURCE_URL "https://github.com/rapidsai/cudf/archive/${VELOX_cudf_COMMIT}.tar.gz")
velox_resolve_dependency_url(cudf)

# Probe for a system UCX install. The variables are used only to gate ucxx
# fetching below; nothing in Velox links against UCX directly yet.
find_library(UCX_LIBRARY NAMES ucp)
find_path(UCX_INCLUDE_DIR NAMES ucp/api/ucp.h)
Comment thread
zoltan marked this conversation as resolved.
if(UCX_LIBRARY AND UCX_INCLUDE_DIR)
message(STATUS "Found UCX: ${UCX_LIBRARY} (headers: ${UCX_INCLUDE_DIR}) -- ucxx will be fetched")
# ucxx commit 8d47a9f from 2026-04-08 (release v0.49.00)
set(VELOX_ucxx_VERSION 0.49)
set(VELOX_ucxx_COMMIT 8d47a9ff797fd8c40c9a4a46375381e96cd017ff)
set(
VELOX_ucxx_BUILD_SHA256_CHECKSUM
4aaaff1eb6ea2837f07e97d323ab61e7cb730f2143fc3023c0a8881891ab1367
)
set(VELOX_ucxx_SOURCE_URL "https://github.com/rapidsai/ucxx/archive/${VELOX_ucxx_COMMIT}.tar.gz")
velox_resolve_dependency_url(ucxx)
else()
message(STATUS "UCX not found -- ucxx will not be fetched")
endif()

# Use block so we don't leak variables
block(SCOPE_FOR VARIABLES)
# Setup libcudf build to not have testing components
Expand Down Expand Up @@ -104,8 +123,23 @@ block(SCOPE_FOR VARIABLES)
UPDATE_DISCONNECTED 1
)

if(UCX_LIBRARY AND UCX_INCLUDE_DIR)
FetchContent_Declare(
ucxx
URL ${VELOX_ucxx_SOURCE_URL}
URL_HASH ${VELOX_ucxx_BUILD_SHA256_CHECKSUM}
SOURCE_SUBDIR
cpp
UPDATE_DISCONNECTED 1
)
endif()

FetchContent_MakeAvailable(cudf)

if(UCX_LIBRARY AND UCX_INCLUDE_DIR)
FetchContent_MakeAvailable(ucxx)
endif()

# cudf sets all warnings as errors, and therefore fails to compile with velox
# expanded set of warnings. We selectively disable problematic warnings just for
# cudf
Expand Down
4 changes: 2 additions & 2 deletions scripts/setup-centos-adapters.sh
Original file line number Diff line number Diff line change
Expand Up @@ -25,13 +25,13 @@
# Use "n" to never wipe directories.
# * VELOX_CUDA_VERSION="12.9": Which version of CUDA to install, will pick up
# CUDA_VERSION from the env
# * VELOX_UCX_VERSION="1.19.0": Which version of ucx to install, will pick up
# * VELOX_UCX_VERSION="1.20.1": Which version of ucx to install, will pick up
# UCX_VERSION from the env

set -efx -o pipefail

VELOX_CUDA_VERSION=${CUDA_VERSION:-"12.9"}
VELOX_UCX_VERSION=${UCX_VERSION:-"1.19.0"}
VELOX_UCX_VERSION=${UCX_VERSION:-"1.20.1"}
SCRIPT_DIR=$(dirname "${BASH_SOURCE[0]}")
source "$SCRIPT_DIR"/setup-centos9.sh

Expand Down
Loading