Skip to content
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

[RELEASE] rmm v23.08 #1315

Merged
merged 24 commits into from
Aug 9, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
945f9fb
DOC
raydouglass May 19, 2023
913873d
Merge pull request #1273 from rapidsai/branch-23.06
GPUtester May 23, 2023
3c40cbc
Unpin scikit-build upper bound (#1275)
vyasr May 26, 2023
829691c
Remove now-deprecated top-level allocator functions (#1281)
wence- May 31, 2023
3217138
Merge pull request #1282 from rapidsai/branch-23.06
GPUtester May 31, 2023
c34e1ce
Merge pull request #1283 from rapidsai/branch-23.06
GPUtester May 31, 2023
39a528b
Remove documentation build scripts for Jenkins (#1285)
ajschmidt8 Jun 1, 2023
8b3e2c4
Reorder parameters in RMM_EXPECTS (#1286)
vyasr Jun 2, 2023
64da5fe
Remove padding from device_memory_resource (#1278)
vyasr Jun 2, 2023
53fa74a
use rapids-upload-docs script (#1288)
AyodeAwe Jun 5, 2023
417bf14
Merge pull request #1290 from rapidsai/branch-23.06
GPUtester Jun 7, 2023
b5203f2
Ensure logger tests don't generate temp directories in build dir (#1289)
robertmaynard Jun 9, 2023
ea50f90
Use gbench `thread_index()` accessor to fix replay bench compilation …
harrism Jun 13, 2023
0c08dd5
Update to CMake 3.26.4 (#1291)
vyasr Jun 13, 2023
e212256
Add a missing '#include <array>' in logger.hpp (#1295)
valgur Jun 20, 2023
d6cc9b8
RMM: Build CUDA 12 packages (#1223)
bdice Jun 21, 2023
0059926
Use cuda-version to constrain cudatoolkit. (#1296)
bdice Jun 26, 2023
5502767
Stop invoking setup.py (#1300)
vyasr Jul 13, 2023
cfbc678
Update linters: remove flake8, add ruff, update cython-lint (#1302)
vyasr Jul 18, 2023
4ec6bc6
Revert CUDA 12.0 CI workflows to branch-23.08. (#1303)
bdice Jul 18, 2023
0a5b86c
Adding identify minimum version requirement (#1301)
hyperbolic2346 Jul 18, 2023
81e7a38
Switch to new CI wheel building pipeline (#1305)
vyasr Jul 25, 2023
b2ed023
Fix typo in wheels-test.yaml. (#1310)
bdice Jul 26, 2023
314b669
Update Changelog [skip ci]
raydouglass Aug 9, 2023
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
16 changes: 7 additions & 9 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ concurrency:
jobs:
cpp-build:
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/conda-cpp-build.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/conda-cpp-build.yaml@branch-23.08
with:
build_type: ${{ inputs.build_type || 'branch' }}
branch: ${{ inputs.branch }}
Expand All @@ -37,7 +37,7 @@ jobs:
python-build:
needs: [cpp-build]
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/conda-python-build.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/conda-python-build.yaml@branch-23.08
with:
build_type: ${{ inputs.build_type || 'branch' }}
branch: ${{ inputs.branch }}
Expand All @@ -46,7 +46,7 @@ jobs:
upload-conda:
needs: [cpp-build, python-build]
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/conda-upload-packages.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/conda-upload-packages.yaml@branch-23.08
with:
build_type: ${{ inputs.build_type || 'branch' }}
branch: ${{ inputs.branch }}
Expand All @@ -56,7 +56,7 @@ jobs:
if: github.ref_type == 'branch'
needs: python-build
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/custom-job.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/custom-job.yaml@branch-23.08
with:
build_type: ${{ inputs.build_type || 'branch' }}
branch: ${{ inputs.branch }}
Expand All @@ -68,19 +68,17 @@ jobs:
run_script: "ci/build_docs.sh"
wheel-build:
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/wheels-manylinux-build.yml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/wheels-build.yaml@branch-23.08
with:
build_type: ${{ inputs.build_type || 'branch' }}
branch: ${{ inputs.branch }}
sha: ${{ inputs.sha }}
date: ${{ inputs.date }}
package-name: rmm
package-dir: python
skbuild-configure-options: "-DRMM_BUILD_WHEELS=ON"
script: ci/build_wheel.sh
wheel-publish:
needs: wheel-build
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/wheels-manylinux-publish.yml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/wheels-publish.yaml@branch-23.08
with:
build_type: ${{ inputs.build_type || 'branch' }}
branch: ${{ inputs.branch }}
Expand Down
26 changes: 11 additions & 15 deletions .github/workflows/pr.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,40 +21,40 @@ jobs:
- wheel-build
- wheel-tests
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/pr-builder.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/pr-builder.yaml@branch-23.08
checks:
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/checks.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/checks.yaml@branch-23.08
with:
enable_check_generated_files: false
conda-cpp-build:
needs: checks
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/conda-cpp-build.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/conda-cpp-build.yaml@branch-23.08
with:
build_type: pull-request
conda-cpp-tests:
needs: conda-cpp-build
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/conda-cpp-tests.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/conda-cpp-tests.yaml@branch-23.08
with:
build_type: pull-request
conda-python-build:
needs: conda-cpp-build
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/conda-python-build.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/conda-python-build.yaml@branch-23.08
with:
build_type: pull-request
conda-python-tests:
needs: conda-python-build
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/conda-python-tests.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/conda-python-tests.yaml@branch-23.08
with:
build_type: pull-request
docs-build:
needs: conda-python-build
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/custom-job.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/custom-job.yaml@branch-23.08
with:
build_type: pull-request
node_type: "gpu-v100-latest-1"
Expand All @@ -64,18 +64,14 @@ jobs:
wheel-build:
needs: checks
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/wheels-manylinux-build.yml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/wheels-build.yaml@branch-23.08
with:
build_type: pull-request
package-dir: python
package-name: rmm
skbuild-configure-options: "-DRMM_BUILD_WHEELS=ON"
script: ci/build_wheel.sh
wheel-tests:
needs: wheel-build
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/wheels-manylinux-test.yml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/wheels-test.yaml@branch-23.08
with:
build_type: pull-request
package-name: rmm
test-unittest: "python -m pytest ./python/rmm/tests"
test-smoketest: "python ./ci/wheel_smoke_test.py"
script: ci/test_wheel.sh
9 changes: 4 additions & 5 deletions .github/workflows/test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,27 +16,26 @@ on:
jobs:
cpp-tests:
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/conda-cpp-tests.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/conda-cpp-tests.yaml@branch-23.08
with:
build_type: nightly
branch: ${{ inputs.branch }}
date: ${{ inputs.date }}
sha: ${{ inputs.sha }}
python-tests:
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/conda-python-tests.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/conda-python-tests.yaml@branch-23.08
with:
build_type: nightly
branch: ${{ inputs.branch }}
date: ${{ inputs.date }}
sha: ${{ inputs.sha }}
wheel-tests:
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/wheels-manylinux-test.yml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/wheels-test.yaml@branch-23.08
with:
build_type: nightly
branch: ${{ inputs.branch }}
date: ${{ inputs.date }}
sha: ${{ inputs.sha }}
package-name: rmm
test-unittest: "python -m pytest ./python/rmm/tests"
script: ci/test_wheel.sh
16 changes: 6 additions & 10 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,17 +22,8 @@ repos:
hooks:
- id: black
args: ["--config=python/pyproject.toml"]
- repo: https://github.com/PyCQA/flake8
rev: 5.0.4
hooks:
- id: flake8
args: ["--config=python/.flake8"]
files: python/.*$
types: [file]
types_or: [python, cython]
additional_dependencies: ["flake8-force"]
- repo: https://github.com/MarcoGorelli/cython-lint
rev: v0.1.10
rev: v0.15.0
hooks:
- id: cython-lint
- repo: https://github.com/pre-commit/mirrors-clang-format
Expand Down Expand Up @@ -78,6 +69,11 @@ repos:
# of dependencies, so we'll have to update this manually.
additional_dependencies:
- cmakelang==0.6.13
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.0.278
hooks:
- id: ruff
files: python/.*$

default_language_version:
python: python3
35 changes: 35 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,38 @@
# RMM 23.08.00 (9 Aug 2023)

## 🚨 Breaking Changes

- Stop invoking setup.py ([#1300](https://github.com/rapidsai/rmm/pull/1300)) [@vyasr](https://github.com/vyasr)
- Remove now-deprecated top-level allocator functions ([#1281](https://github.com/rapidsai/rmm/pull/1281)) [@wence-](https://github.com/wence-)
- Remove padding from device_memory_resource ([#1278](https://github.com/rapidsai/rmm/pull/1278)) [@vyasr](https://github.com/vyasr)

## 🐛 Bug Fixes

- Fix typo in wheels-test.yaml. ([#1310](https://github.com/rapidsai/rmm/pull/1310)) [@bdice](https://github.com/bdice)
- Add a missing &#39;#include &lt;array&gt;&#39; in logger.hpp ([#1295](https://github.com/rapidsai/rmm/pull/1295)) [@valgur](https://github.com/valgur)
- Use gbench `thread_index()` accessor to fix replay bench compilation ([#1293](https://github.com/rapidsai/rmm/pull/1293)) [@harrism](https://github.com/harrism)
- Ensure logger tests don&#39;t generate temp directories in build dir ([#1289](https://github.com/rapidsai/rmm/pull/1289)) [@robertmaynard](https://github.com/robertmaynard)

## 🚀 New Features

- Remove now-deprecated top-level allocator functions ([#1281](https://github.com/rapidsai/rmm/pull/1281)) [@wence-](https://github.com/wence-)

## 🛠️ Improvements

- Switch to new CI wheel building pipeline ([#1305](https://github.com/rapidsai/rmm/pull/1305)) [@vyasr](https://github.com/vyasr)
- Revert CUDA 12.0 CI workflows to branch-23.08. ([#1303](https://github.com/rapidsai/rmm/pull/1303)) [@bdice](https://github.com/bdice)
- Update linters: remove flake8, add ruff, update cython-lint ([#1302](https://github.com/rapidsai/rmm/pull/1302)) [@vyasr](https://github.com/vyasr)
- Adding identify minimum version requirement ([#1301](https://github.com/rapidsai/rmm/pull/1301)) [@hyperbolic2346](https://github.com/hyperbolic2346)
- Stop invoking setup.py ([#1300](https://github.com/rapidsai/rmm/pull/1300)) [@vyasr](https://github.com/vyasr)
- Use cuda-version to constrain cudatoolkit. ([#1296](https://github.com/rapidsai/rmm/pull/1296)) [@bdice](https://github.com/bdice)
- Update to CMake 3.26.4 ([#1291](https://github.com/rapidsai/rmm/pull/1291)) [@vyasr](https://github.com/vyasr)
- use rapids-upload-docs script ([#1288](https://github.com/rapidsai/rmm/pull/1288)) [@AyodeAwe](https://github.com/AyodeAwe)
- Reorder parameters in RMM_EXPECTS ([#1286](https://github.com/rapidsai/rmm/pull/1286)) [@vyasr](https://github.com/vyasr)
- Remove documentation build scripts for Jenkins ([#1285](https://github.com/rapidsai/rmm/pull/1285)) [@ajschmidt8](https://github.com/ajschmidt8)
- Remove padding from device_memory_resource ([#1278](https://github.com/rapidsai/rmm/pull/1278)) [@vyasr](https://github.com/vyasr)
- Unpin scikit-build upper bound ([#1275](https://github.com/rapidsai/rmm/pull/1275)) [@vyasr](https://github.com/vyasr)
- RMM: Build CUDA 12 packages ([#1223](https://github.com/rapidsai/rmm/pull/1223)) [@bdice](https://github.com/bdice)

# RMM 23.06.00 (7 Jun 2023)

## 🚨 Breaking Changes
Expand Down
6 changes: 3 additions & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,10 @@
# the License.
# =============================================================================

cmake_minimum_required(VERSION 3.23.1 FATAL_ERROR)
cmake_minimum_required(VERSION 3.26.4 FATAL_ERROR)

if(NOT EXISTS ${CMAKE_CURRENT_BINARY_DIR}/RMM_RAPIDS.cmake)
file(DOWNLOAD https://raw.githubusercontent.com/rapidsai/rapids-cmake/branch-23.06/RAPIDS.cmake
file(DOWNLOAD https://raw.githubusercontent.com/rapidsai/rapids-cmake/branch-23.08/RAPIDS.cmake
${CMAKE_CURRENT_BINARY_DIR}/RMM_RAPIDS.cmake)
endif()
include(${CMAKE_CURRENT_BINARY_DIR}/RMM_RAPIDS.cmake)
Expand All @@ -27,7 +27,7 @@ include(rapids-find)

project(
RMM
VERSION 23.06.00
VERSION 23.08.00
LANGUAGES CXX)

# Write the version header
Expand Down
9 changes: 2 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,12 +37,7 @@ RMM can be installed with Conda ([miniconda](https://conda.io/miniconda.html), o
[Anaconda distribution](https://www.anaconda.com/download)) from the `rapidsai` channel:

```bash
# for CUDA 11.5
conda install -c rapidsai -c conda-forge -c nvidia \
rmm cudatoolkit=11.5
# for CUDA 11.2
conda install -c rapidsai -c conda-forge -c nvidia \
rmm cudatoolkit=11.2
conda install -c rapidsai -c conda-forge -c nvidia rmm cuda-version=11.8
```

We also provide [nightly Conda packages](https://anaconda.org/rapidsai-nightly) built from the HEAD
Expand All @@ -63,7 +58,7 @@ Compiler requirements:

* `gcc` version 9.3+
* `nvcc` version 11.2+
* `cmake` version 3.23.1+
* `cmake` version 3.26.4+

CUDA/GPU requirements:

Expand Down
6 changes: 3 additions & 3 deletions benchmarks/replay/replay.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,7 @@ struct replay_benchmark {
/// Create the memory resource shared by all threads before the benchmark runs
void SetUp(const ::benchmark::State& state)
{
if (state.thread_index == 0) {
if (state.thread_index() == 0) {
rmm::logger().log(spdlog::level::info, "------ Start of Benchmark -----");
mr_ = factory_(simulated_size_);
}
Expand All @@ -182,7 +182,7 @@ struct replay_benchmark {
/// Destroy the memory resource and count any unallocated memory
void TearDown(const ::benchmark::State& state)
{
if (state.thread_index == 0) {
if (state.thread_index() == 0) {
rmm::logger().log(spdlog::level::info, "------ End of Benchmark -----");
// clean up any leaked allocations
std::size_t total_leaked{0};
Expand All @@ -207,7 +207,7 @@ struct replay_benchmark {
{
SetUp(state);

auto const& my_events = events_.at(state.thread_index);
auto const& my_events = events_.at(state.thread_index());

for (auto _ : state) { // NOLINT(clang-analyzer-deadcode.DeadStores)
std::for_each(my_events.begin(), my_events.end(), [this](auto event) {
Expand Down
2 changes: 1 addition & 1 deletion benchmarks/utilities/simulated_memory_resource.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ class simulated_memory_resource final : public device_memory_resource {
void* do_allocate(std::size_t bytes, cuda_stream_view) override
{
// NOLINTNEXTLINE(cppcoreguidelines-pro-bounds-pointer-arithmetic)
RMM_EXPECTS(begin_ + bytes <= end_, rmm::bad_alloc, "Simulated memory size exceeded");
RMM_EXPECTS(begin_ + bytes <= end_, "Simulated memory size exceeded", rmm::bad_alloc);
auto* ptr = static_cast<void*>(begin_);
begin_ += bytes; // NOLINT(cppcoreguidelines-pro-bounds-pointer-arithmetic)
return ptr;
Expand Down
18 changes: 5 additions & 13 deletions build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ HELP="$0 [clean] [librmm] [rmm] [-v] [-g] [-n] [-s] [--ptds] [--cmake-args=\"<ar
tests - build tests
-v - verbose build mode
-g - build for debug
-n - no install step
-n - no install step (does not affect Python)
-s - statically link against cudart
--ptds - enable per-thread default stream
--cmake-args=\\\"<args>\\\" - pass arbitrary list of CMake configuration options (escape all quotes in argument)
Expand Down Expand Up @@ -142,8 +142,9 @@ if hasArg --ptds; then
fi

# Append `-DFIND_RMM_CPP=ON` to CMAKE_ARGS unless a user specified the option.
SKBUILD_EXTRA_CMAKE_ARGS="${EXTRA_CMAKE_ARGS}"
if [[ "${EXTRA_CMAKE_ARGS}" != *"DFIND_RMM_CPP"* ]]; then
EXTRA_CMAKE_ARGS="${EXTRA_CMAKE_ARGS} -DFIND_RMM_CPP=ON"
SKBUILD_EXTRA_CMAKE_ARGS="${SKBUILD_EXTRA_CMAKE_ARGS} -DFIND_RMM_CPP=ON"
fi

# If clean given, run it prior to any other steps
Expand Down Expand Up @@ -174,15 +175,6 @@ fi

# Build and install the rmm Python package
if (( NUMARGS == 0 )) || hasArg rmm; then
cd "${REPODIR}/python"
export INSTALL_PREFIX
echo "building rmm..."

python setup.py build_ext --inplace -- -DCMAKE_PREFIX_PATH=${INSTALL_PREFIX} ${EXTRA_CMAKE_ARGS}

if [[ ${INSTALL_TARGET} != "" ]]; then
echo "installing rmm..."
python setup.py install --single-version-externally-managed --record=record.txt -- -DCMAKE_PREFIX_PATH=${INSTALL_PREFIX} ${EXTRA_CMAKE_ARGS}
fi

echo "building and installing rmm..."
SKBUILD_CONFIGURE_OPTIONS="${SKBUILD_EXTRA_CMAKE_ARGS}" python -m pip install --no-build-isolation --no-deps ${REPODIR}/python
fi
20 changes: 10 additions & 10 deletions ci/build_docs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -19,29 +19,29 @@ rapids-print-env
rapids-logger "Downloading artifacts from previous jobs"
CPP_CHANNEL=$(rapids-download-conda-from-s3 cpp)
PYTHON_CHANNEL=$(rapids-download-conda-from-s3 python)
VERSION_NUMBER="23.06"

rapids-mamba-retry install \
--channel "${CPP_CHANNEL}" \
--channel "${PYTHON_CHANNEL}" \
rmm librmm

# Build CPP docs
rapids-logger "Build Doxygen docs"
export RAPIDS_VERSION_NUMBER="23.08"
export RAPIDS_DOCS_DIR="$(mktemp -d)"

rapids-logger "Build CPP docs"
pushd doxygen
doxygen Doxyfile
mkdir -p "${RAPIDS_DOCS_DIR}/librmm/html"
mv html/* "${RAPIDS_DOCS_DIR}/librmm/html"
popd

# Build Python docs
rapids-logger "Build Python docs"
pushd python/docs
sphinx-build -b dirhtml . _html
sphinx-build -b text . _text
mkdir -p "${RAPIDS_DOCS_DIR}/rmm/"{html,txt}
mv _html/* "${RAPIDS_DOCS_DIR}/rmm/html"
mv _text/* "${RAPIDS_DOCS_DIR}/rmm/txt"
popd

if [[ "${RAPIDS_BUILD_TYPE}" != "pull-request" ]]; then
rapids-logger "Upload Docs to S3"
aws s3 sync --no-progress --delete doxygen/html "s3://rapidsai-docs/librmm/${VERSION_NUMBER}/html"
aws s3 sync --no-progress --delete python/docs/_html "s3://rapidsai-docs/rmm/${VERSION_NUMBER}/html"
aws s3 sync --no-progress --delete python/docs/_text "s3://rapidsai-docs/rmm/${VERSION_NUMBER}/txt"
fi
rapids-upload-docs
Loading