Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/branch-22.02' into hash-join-a…
Browse files Browse the repository at this point in the history
…daptor-allocator
  • Loading branch information
PointKernel committed Dec 3, 2021
2 parents 4a2aba7 + 7ac8aac commit bcc615f
Show file tree
Hide file tree
Showing 306 changed files with 8,173 additions and 7,595 deletions.
4 changes: 2 additions & 2 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ repos:
args: ['-fallback-style=none']
- id: cmake-format
name: cmake-format
entry: bash cpp/scripts/run-cmake-format.sh cmake-format
entry: ./cpp/scripts/run-cmake-format.sh cmake-format
language: python
types: [cmake]
# Note that pre-commit autoupdate does not update the versions
Expand All @@ -81,7 +81,7 @@ repos:
- cmake-format==0.6.11
- id: cmake-lint
name: cmake-lint
entry: bash cpp/scripts/run-cmake-format.sh cmake-lint
entry: ./cpp/scripts/run-cmake-format.sh cmake-lint
language: python
types: [cmake]
# Note that pre-commit autoupdate does not update the versions
Expand Down
257 changes: 255 additions & 2 deletions CHANGELOG.md

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,12 +62,12 @@ The following instructions are for developers and contributors to cuDF OSS devel
Compilers:

* `gcc` version 9.3+
* `nvcc` version 11.0+
* `nvcc` version 11.5+
* `cmake` version 3.20.1+

CUDA/GPU:

* CUDA 11.0+
* CUDA 11.5+
* NVIDIA driver 450.80.02+
* Pascal architecture or better

Expand Down
2 changes: 1 addition & 1 deletion ci/benchmark/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ export GBENCH_BENCHMARKS_DIR="$WORKSPACE/cpp/build/gbenchmarks/"
export LIBCUDF_KERNEL_CACHE_PATH="$HOME/.jitify-cache"

# Dask & Distributed git tag
export DASK_DISTRIBUTED_GIT_TAG='main'
export DASK_DISTRIBUTED_GIT_TAG='2021.11.2'

function remove_libcudf_kernel_cache_dir {
EXITCODE=$?
Expand Down
10 changes: 1 addition & 9 deletions ci/cpu/prebuild.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,7 @@
# Copyright (c) 2020, NVIDIA CORPORATION.
set -e

ARCH=$(arch)
if [ "${ARCH}" = "x86_64" ]; then
DEFAULT_CUDA_VER="11.0"
elif [ "${ARCH}" = "aarch64" ]; then
DEFAULT_CUDA_VER="11.2"
else
echo "Unsupported arch ${ARCH}"
exit 1
fi
DEFAULT_CUDA_VER="11.5"

#Always upload cudf Python package
export UPLOAD_CUDF=1
Expand Down
26 changes: 24 additions & 2 deletions ci/gpu/build.sh
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/bin/bash
# Copyright (c) 2018-2020, NVIDIA CORPORATION.
# Copyright (c) 2018-2021, NVIDIA CORPORATION.
##############################################
# cuDF GPU build and test script for CI #
##############################################
Expand Down Expand Up @@ -31,7 +31,7 @@ export GIT_DESCRIBE_TAG=`git describe --tags`
export MINOR_VERSION=`echo $GIT_DESCRIBE_TAG | grep -o -E '([0-9]+\.[0-9]+)'`

# Dask & Distributed git tag
export DASK_DISTRIBUTED_GIT_TAG='main'
export DASK_DISTRIBUTED_GIT_TAG='2021.11.2'

################################################################################
# TRAP - Setup trap for removing jitify cache
Expand Down Expand Up @@ -176,6 +176,28 @@ else
${gt} --gtest_output=xml:"$WORKSPACE/test-results/"
done

################################################################################
# MEMCHECK - Run compute-sanitizer on GoogleTest (only in nightly builds)
################################################################################
if [[ "$BUILD_MODE" == "branch" && "$BUILD_TYPE" == "gpu" ]]; then
if [[ "$COMPUTE_SANITIZER_ENABLE" == "true" ]]; then
gpuci_logger "Memcheck on GoogleTests with rmm_mode=cuda"
export GTEST_CUDF_RMM_MODE=cuda
COMPUTE_SANITIZER_CMD="compute-sanitizer --tool memcheck"
mkdir -p "$WORKSPACE/test-results/"
for gt in gtests/*; do
test_name=$(basename ${gt})
if [[ "$test_name" == "ERROR_TEST" ]]; then
continue
fi
echo "Running GoogleTest $test_name"
${COMPUTE_SANITIZER_CMD} ${gt} | tee "$WORKSPACE/test-results/${test_name}.cs.log"
done
unset GTEST_CUDF_RMM_MODE
# test-results/*.cs.log are processed in gpuci
fi
fi

CUDF_CONDA_FILE=`find ${CONDA_ARTIFACT_PATH} -name "libcudf-*.tar.bz2"`
CUDF_CONDA_FILE=`basename "$CUDF_CONDA_FILE" .tar.bz2` #get filename without extension
CUDF_CONDA_FILE=${CUDF_CONDA_FILE//-/=} #convert to conda install
Expand Down
6 changes: 3 additions & 3 deletions ci/local/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,12 @@ Build and test your local repository using a base gpuCI Docker image
where:
-H Show this help text
-r Path to repository (defaults to working directory)
-i Use Docker image (default is gpuci/rapidsai:${NIGHTLY_VERSION}-cuda10.1-devel-ubuntu16.04-py3.7)
-i Use Docker image (default is gpuci/rapidsai:${NIGHTLY_VERSION}-cuda11.5-devel-ubuntu20.04-py3.8)
-s Skip building and testing and start an interactive shell in a container of the Docker image
```

Example Usage:
`bash build.sh -r ~/rapids/cudf -i gpuci/rapidsai:0.16-cuda10.2-devel-ubuntu16.04-py3.7`
`bash build.sh -r ~/rapids/cudf -i gpuci/rapidsai:22.02-cuda11.5-devel-ubuntu20.04-py3.8`

For a full list of available gpuCI docker images, visit our [DockerHub](https://hub.docker.com/r/gpuci/rapidsai/tags) page.

Expand All @@ -42,7 +42,7 @@ There are some caveats to be aware of when using this script, especially if you

### Docker Image Build Repository

The docker image will generate build artifacts in a folder on your machine located in the `root` directory of the repository you passed to the script. For the above example, the directory is named `~/rapids/cudf/build_rapidsai_cuda10.1-ubuntu16.04-py3.7/`. Feel free to remove this directory after the script is finished.
The docker image will generate build artifacts in a folder on your machine located in the `root` directory of the repository you passed to the script. For the above example, the directory is named `~/rapids/cudf/build_rapidsai_cuda11.5-ubuntu20.04-py3.8/`. Feel free to remove this directory after the script is finished.

*Note*: The script *will not* override your local build repository. Your local environment stays in tact.

Expand Down
2 changes: 1 addition & 1 deletion ci/local/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
GIT_DESCRIBE_TAG=`git describe --tags`
MINOR_VERSION=`echo $GIT_DESCRIBE_TAG | grep -o -E '([0-9]+\.[0-9]+)'`

DOCKER_IMAGE="gpuci/rapidsai:${MINOR_VERSION}-cuda11.0-devel-ubuntu18.04-py3.7"
DOCKER_IMAGE="gpuci/rapidsai:${MINOR_VERSION}-cuda11.5-devel-ubuntu20.04-py3.8"
REPO_PATH=${PWD}
RAPIDS_DIR_IN_CONTAINER="/rapids"
CPP_BUILD_DIR="cpp/build"
Expand Down
6 changes: 3 additions & 3 deletions ci/release/update-version.sh
Original file line number Diff line number Diff line change
Expand Up @@ -30,13 +30,13 @@ function sed_runner() {
}

# cpp update
sed_runner 's/'"CUDF VERSION .* LANGUAGES"'/'"CUDF VERSION ${NEXT_FULL_TAG} LANGUAGES"'/g' cpp/CMakeLists.txt
sed_runner 's/'"VERSION ${CURRENT_SHORT_TAG}.*"'/'"VERSION ${NEXT_FULL_TAG}"'/g' cpp/CMakeLists.txt

# cpp libcudf_kafka update
sed_runner 's/'"CUDA_KAFKA VERSION .* LANGUAGES"'/'"CUDA_KAFKA VERSION ${NEXT_FULL_TAG} LANGUAGES"'/g' cpp/libcudf_kafka/CMakeLists.txt
sed_runner 's/'"VERSION ${CURRENT_SHORT_TAG}.*"'/'"VERSION ${NEXT_FULL_TAG}"'/g' cpp/libcudf_kafka/CMakeLists.txt

# cpp cudf_jni update
sed_runner 's/'"CUDF_JNI VERSION .* LANGUAGES"'/'"CUDF_JNI VERSION ${NEXT_FULL_TAG} LANGUAGES"'/g' java/src/main/native/CMakeLists.txt
sed_runner 's/'"VERSION ${CURRENT_SHORT_TAG}.*"'/'"VERSION ${NEXT_FULL_TAG}"'/g' java/src/main/native/CMakeLists.txt

# rapids-cmake version
sed_runner 's/'"branch-.*\/RAPIDS.cmake"'/'"branch-${NEXT_SHORT_TAG}\/RAPIDS.cmake"'/g' fetch_rapids.cmake
Expand Down
13 changes: 7 additions & 6 deletions conda/environments/cudf_dev_cuda11.0.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@ channels:
- rapidsai-nightly
- conda-forge
dependencies:
- clang=11.0.0
- clang-tools=11.0.0
- cupy>7.1.0,<10.0.0a0
- clang=11.1.0
- clang-tools=11.1.0
- cupy>=9.5.0,<10.0.0a0
- rmm=22.02.*
- cmake>=3.20.1
- cmake_setuptools>=0.1.3
- python>=3.7,<3.9
- numba>=0.53.1
- numba>=0.54
- numpy
- pandas>=1.0,<1.4.0dev0
- pyarrow=5.0.0=*cuda
Expand All @@ -41,8 +41,8 @@ dependencies:
- pydocstyle=6.1.1
- typing_extensions
- pre-commit
- dask>=2021.09.1
- distributed>=2021.09.1
- dask>=2021.11.1,<=2021.11.2
- distributed>=2021.11.1,<=2021.11.2
- streamz
- arrow-cpp=5.0.0
- dlpack>=0.5,<0.6.0a0
Expand All @@ -66,3 +66,4 @@ dependencies:
- git+https://github.com/dask/distributed.git@main
- git+https://github.com/python-streamz/streamz.git@master
- pyorc
- ptxcompiler # [linux64]
13 changes: 7 additions & 6 deletions conda/environments/cudf_dev_cuda11.2.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@ channels:
- rapidsai-nightly
- conda-forge
dependencies:
- clang=11.0.0
- clang-tools=11.0.0
- cupy>7.1.0,<10.0.0a0
- clang=11.1.0
- clang-tools=11.1.0
- cupy>=9.5.0,<10.0.0a0
- rmm=22.02.*
- cmake>=3.20.1
- cmake_setuptools>=0.1.3
- python>=3.7,<3.9
- numba>=0.53.1
- numba>=0.54
- numpy
- pandas>=1.0,<1.4.0dev0
- pyarrow=5.0.0=*cuda
Expand All @@ -41,8 +41,8 @@ dependencies:
- pydocstyle=6.1.1
- typing_extensions
- pre-commit
- dask>=2021.09.1
- distributed>=2021.09.1
- dask>=2021.11.1,<=2021.11.2
- distributed>=2021.11.1,<=2021.11.2
- streamz
- arrow-cpp=5.0.0
- dlpack>=0.5,<0.6.0a0
Expand All @@ -66,3 +66,4 @@ dependencies:
- git+https://github.com/dask/distributed.git@main
- git+https://github.com/python-streamz/streamz.git@master
- pyorc
- ptxcompiler # [linux64]
15 changes: 8 additions & 7 deletions conda/environments/cudf_dev_cuda11.5.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@ channels:
- rapidsai-nightly
- conda-forge
dependencies:
- clang=11.0.0
- clang-tools=11.0.0
- cupy>7.1.0,<10.0.0a0
- rmm=21.12.*
- clang=11.1.0
- clang-tools=11.1.0
- cupy>=9.5.0,<10.0.0a0
- rmm=22.02.*
- cmake>=3.20.1
- cmake_setuptools>=0.1.3
- python>=3.7,<3.9
- numba>=0.53.1
- numba>=0.54
- numpy
- pandas>=1.0,<1.4.0dev0
- pyarrow=5.0.0=*cuda
Expand All @@ -41,8 +41,8 @@ dependencies:
- pydocstyle=6.1.1
- typing_extensions
- pre-commit
- dask>=2021.09.1
- distributed>=2021.09.1
- dask>=2021.11.1,<=2021.11.2
- distributed>=2021.11.1,<=2021.11.2
- streamz
- arrow-cpp=5.0.0
- dlpack>=0.5,<0.6.0a0
Expand All @@ -66,3 +66,4 @@ dependencies:
- git+https://github.com/dask/distributed.git@main
- git+https://github.com/python-streamz/streamz.git@master
- pyorc
- ptxcompiler # [linux64]
7 changes: 4 additions & 3 deletions conda/recipes/cudf/meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ requirements:
- python
- cython >=0.29,<0.30
- setuptools
- numba >=0.53.1
- numba >=0.54
- dlpack>=0.5,<0.6.0a0
- pyarrow 5.0.0 *cuda
- libcudf {{ version }}
Expand All @@ -40,8 +40,8 @@ requirements:
- python
- typing_extensions
- pandas >=1.0,<1.4.0dev0
- cupy >7.1.0,<10.0.0a0
- numba >=0.53.1
- cupy >=9.5.0,<10.0.0a0
- numba >=0.54
- numpy
- {{ pin_compatible('pyarrow', max_pin='x.x.x') }} *cuda
- fastavro >=0.22.0
Expand All @@ -51,6 +51,7 @@ requirements:
- nvtx >=0.2.1
- packaging
- cachetools
- ptxcompiler # [linux64] # CUDA enhanced compatibility. See https://github.com/rapidsai/ptxcompiler

test: # [linux64]
requires: # [linux64]
Expand Down
4 changes: 2 additions & 2 deletions conda/recipes/custreamz/meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,8 @@ requirements:
- python
- streamz
- cudf {{ version }}
- dask>=2021.09.1
- distributed>=2021.09.1
- dask>=2021.11.1,<=2021.11.2
- distributed>=2021.11.1,<=2021.11.2
- python-confluent-kafka
- cudf_kafka {{ version }}

Expand Down
13 changes: 7 additions & 6 deletions conda/recipes/dask-cudf/meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
{% set minor_version = version.split('.')[0] + '.' + version.split('.')[1] %}
{% set py_version=environ.get('CONDA_PY', 36) %}
{% set cuda_version='.'.join(environ.get('CUDA', '10.1').split('.')[:2]) %}
{% set cuda_major=cuda_version.split('.')[0] %}

package:
name: dask-cudf
Expand All @@ -14,7 +15,7 @@ source:

build:
number: {{ GIT_DESCRIBE_NUMBER }}
string: cuda_{{ cuda_version }}_py{{ py_version }}_{{ GIT_DESCRIBE_HASH }}_{{ GIT_DESCRIBE_NUMBER }}
string: cuda_{{ cuda_major }}_py{{ py_version }}_{{ GIT_DESCRIBE_HASH }}_{{ GIT_DESCRIBE_NUMBER }}
script_env:
- VERSION_SUFFIX
- PARALLEL_LEVEL
Expand All @@ -26,15 +27,15 @@ requirements:
host:
- python
- cudf {{ version }}
- dask>=2021.09.1
- distributed>=2021.09.1
- dask>=2021.11.1,<=2021.11.2
- distributed>=2021.11.1,<=2021.11.2
- cudatoolkit {{ cuda_version }}
run:
- python
- cudf {{ version }}
- dask>=2021.09.1
- distributed>=2021.09.1
- {{ pin_compatible('cudatoolkit', max_pin='x.x') }}
- dask>=2021.11.1,<=2021.11.2
- distributed>=2021.11.1,<=2021.11.2
- {{ pin_compatible('cudatoolkit', max_pin='x', min_pin='x') }}

test: # [linux64]
requires: # [linux64]
Expand Down
1 change: 1 addition & 0 deletions conda/recipes/libcudf/meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,7 @@ test:
- test -f $PREFIX/include/cudf/dictionary/update_keys.hpp
- test -f $PREFIX/include/cudf/filling.hpp
- test -f $PREFIX/include/cudf/fixed_point/fixed_point.hpp
- test -f $PREFIX/include/cudf/fixed_point/temporary.hpp
- test -f $PREFIX/include/cudf/groupby.hpp
- test -f $PREFIX/include/cudf/hashing.hpp
- test -f $PREFIX/include/cudf/interop.hpp
Expand Down
25 changes: 24 additions & 1 deletion cpp/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ rapids_cuda_init_architectures(CUDF)

project(
CUDF
VERSION 21.12.00
VERSION 22.02.00
LANGUAGES C CXX CUDA
)

Expand Down Expand Up @@ -185,6 +185,7 @@ add_library(
src/binaryop/compiled/LogicalOr.cu
src/binaryop/compiled/Mod.cu
src/binaryop/compiled/Mul.cu
src/binaryop/compiled/NullEquals.cu
src/binaryop/compiled/NullMax.cu
src/binaryop/compiled/NullMin.cu
src/binaryop/compiled/PMod.cu
Expand Down Expand Up @@ -310,6 +311,7 @@ add_library(
src/io/statistics/parquet_column_statistics.cu
src/io/text/multibyte_split.cu
src/io/utilities/column_buffer.cpp
src/io/utilities/config_utils.cpp
src/io/utilities/data_sink.cpp
src/io/utilities/datasource.cpp
src/io/utilities/file_io_utilities.cpp
Expand Down Expand Up @@ -733,6 +735,27 @@ set(install_code_string
[=[
set(ArrowCUDA_DIR "${Arrow_DIR}")
find_dependency(ArrowCUDA)
]=]
)

if(CUDF_ENABLE_ARROW_PARQUET)
string(
APPEND
install_code_string
[=[
if(NOT Parquet_DIR)
set(Parquet_DIR "${Arrow_DIR}")
endif()
set(ArrowDataset_DIR "${Arrow_DIR}")
find_dependency(ArrowDataset)
]=]
)
endif()

string(
APPEND
install_code_string
[=[
if(testing IN_LIST cudf_FIND_COMPONENTS)
enable_language(CUDA)
if(EXISTS "${CMAKE_CURRENT_LIST_DIR}/cudf-testing-dependencies.cmake")
Expand Down
Loading

0 comments on commit bcc615f

Please sign in to comment.