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

Upgrade to XGBoost 2.1.0 #167

Merged
merged 123 commits into from
Jul 26, 2024
Merged
Changes from 1 commit
Commits
Show all changes
123 commits
Select commit Hold shift + click to select a range
41956de
Upgrade to XGBoost 2.1.0
hcho3 Jun 29, 2024
f01972f
MNT: Re-rendered with conda-build 24.5.1, conda-smithy 3.36.2, and co…
Jun 29, 2024
8cd97b9
Drop `rabit` install
jakirkham Jun 29, 2024
eee9c0e
List source directory contents before copying
jakirkham Jun 29, 2024
7a47d9b
Remove CLI
hcho3 Jun 29, 2024
aa2382d
Fix buildno
hcho3 Jun 29, 2024
0cb0928
Require R 4.3+
hcho3 Jun 29, 2024
ffa745d
Require cross-r-base 4.3
hcho3 Jun 30, 2024
c875ff1
Consistently require R 4.3
hcho3 Jun 30, 2024
800bdbd
MNT: Re-rendered with conda-build 24.3.0, conda-smithy 3.36.2, and co…
hcho3 Jun 30, 2024
f4e8edd
Use evals instead of watchlist
hcho3 Jun 30, 2024
f1337b5
Re-rendered with conda-build 24.3.0, conda-smithy 3.36.2, and conda-f…
hcho3 Jun 30, 2024
e40c7a7
Merge remote-tracking branch 'origin/main' into xgb_210
hcho3 Jun 30, 2024
6ed6754
MNT: Re-rendered with conda-build 24.3.0, conda-smithy 3.36.2, and co…
hcho3 Jun 30, 2024
485748e
MNT: Re-rendered with conda-build 24.3.0, conda-smithy 3.36.2, and co…
hcho3 Jun 30, 2024
aab8872
Drop extra `conda_*`s from `conda-forge.yml`
jakirkham Jul 10, 2024
abd6f77
Merge branch 'main' into xgb_210
hcho3 Jul 10, 2024
c2290b5
MNT: Re-rendered with conda-build 24.3.0, conda-smithy 3.36.2, and co…
hcho3 Jul 14, 2024
e903154
MNT: Re-rendered with conda-build 24.5.1, conda-smithy 3.37.0, and co…
Jul 16, 2024
25fb6fb
Add `pin_subpackage` in `host` & `run`
jakirkham Jul 17, 2024
57f1b1b
Ignore missing `ld64.so.2` linkage on `ppc64le`
jakirkham Jul 17, 2024
e3b4ef4
Require R 4.3+
jakirkham Jul 17, 2024
702135d
Drop outdated CUDA skip (min is 11.8)
jakirkham Jul 17, 2024
866c306
Move R skip into relevant packages
jakirkham Jul 17, 2024
e16c795
MNT: Re-rendered with conda-build 24.5.1, conda-smithy 3.37.0, and co…
Jul 17, 2024
7eb2411
Add MinGW compilers to top-level
jakirkham Jul 17, 2024
0879870
MNT: Re-rendered with conda-build 24.5.1, conda-smithy 3.37.0, and co…
Jul 17, 2024
b524aed
Exclude R 3.4
hcho3 Jul 17, 2024
778a482
Explicitly skip windows for R
hcho3 Jul 17, 2024
e23f853
Use True instead of true
hcho3 Jul 17, 2024
2ea37be
Skip CUDA 11.8 for Windows
hcho3 Jul 17, 2024
8a7d594
MNT: Re-rendered with conda-build 24.3.0, conda-smithy 3.37.1, and co…
hcho3 Jul 17, 2024
8120e40
Add missing_dso_whitelist for R package specifically
hcho3 Jul 17, 2024
0bef94b
Relax exact pins to `x.x.x`
jakirkham Jul 18, 2024
ca09d1c
Revert "Relax exact pins to `x.x.x`"
jakirkham Jul 18, 2024
e427580
Test `libxgboost` library is installed
jakirkham Jul 20, 2024
80f2456
Test `xgboost` can be `import`ed
jakirkham Jul 20, 2024
9e3a2c2
Add mutex no-op tests
jakirkham Jul 20, 2024
e2fa757
Add Python `import` tests
jakirkham Jul 20, 2024
fc11ee2
Add R equivalent of `import` tests
jakirkham Jul 20, 2024
0d72bbe
Fix Windows `libxgboost` tests
jakirkham Jul 20, 2024
fd3194c
Use `PREFIX` in Windows `libxgboost` tests
jakirkham Jul 20, 2024
e381bfa
Test MinGW path for `libxgboost` on Windows
jakirkham Jul 20, 2024
4b15964
Try Windows CUDA 11.8 again
jakirkham Jul 20, 2024
bda415f
MNT: Re-rendered with conda-build 24.5.1, conda-smithy 3.37.1, and co…
Jul 20, 2024
bde32c5
Skip NVCC Windows environment activation
jakirkham Jul 20, 2024
9d2eadf
Revert "Skip NVCC Windows environment activation"
jakirkham Jul 20, 2024
98d8ba2
Lower case `not` in `bld.bat`
jakirkham Jul 20, 2024
a3eec4d
Space out `==` in `bld.bat`
jakirkham Jul 20, 2024
16938dd
Pass `WIN32_LEAN_AND_MEAN` on CUDA 11.8
jakirkham Jul 20, 2024
5cae8ef
Pass `WIN32_LEAN_AND_MEAN` to `nvcc` directly
jakirkham Jul 20, 2024
114cce3
Try `-D` instead of `/D`
jakirkham Jul 20, 2024
8b1604a
Use `CXXFLAGS` on Windows
jakirkham Jul 20, 2024
1979c78
Use cross-python more consistently
jakirkham Jul 20, 2024
f12967a
Drop extra space
jakirkham Jul 20, 2024
23ba9f3
Use `python` instead of env var
jakirkham Jul 20, 2024
1487cfb
Move `test/script` after `test/imports`
jakirkham Jul 20, 2024
4ecdf2f
Require Python 3.8+
jakirkham Jul 20, 2024
297ec13
Drop cross-python throughout
jakirkham Jul 20, 2024
0e90c76
Explicitly require Python & R in respective tests
jakirkham Jul 20, 2024
6c4122d
Add `WIN32_LEAN_AND_MEAN` to nvcc flags too
jakirkham Jul 20, 2024
c91ed93
Revert to `PYTHON` env var
jakirkham Jul 20, 2024
170d9c4
Add `CUDAFLAGS` on Windows too
jakirkham Jul 20, 2024
0a70b12
Fix Windows CUDA 11.8 check
jakirkham Jul 20, 2024
80e51a2
Use only `CUDAFLAGS` to set `WIN32_LEAN_AND_MEAN`
jakirkham Jul 20, 2024
eba7c96
Add mutex packages first
jakirkham Jul 20, 2024
c637e5f
Run test script on native builds only
jakirkham Jul 20, 2024
1edd47f
Add `@echo on` to `bld.bat`
jakirkham Jul 20, 2024
c964dd4
Drop unneeded quotes in `bld.bat`
jakirkham Jul 20, 2024
232b659
Type CMake args in `bld.bat`
jakirkham Jul 20, 2024
e0a5290
Drop selector from test script
jakirkham Jul 20, 2024
ab0501d
Test native builds only
jakirkham Jul 20, 2024
a2aaad4
MNT: Re-rendered with conda-build 24.5.1, conda-smithy 3.37.1, and co…
Jul 20, 2024
7e2ccd0
Readd `cross-python` for building
jakirkham Jul 20, 2024
f705ae1
Use `cccl` to build `libxgboost`
jakirkham Jul 20, 2024
f8422de
Drop Windows CUDA 11.8 workaround
jakirkham Jul 20, 2024
e0b67b8
Drop commented Windows CUDA 11.8 `skip`
jakirkham Jul 20, 2024
0d4897a
Add top-level `noarch: python` to disable matrix
jakirkham Jul 20, 2024
1b47b51
MNT: Re-rendered with conda-build 24.5.1, conda-smithy 3.37.1, and co…
Jul 20, 2024
c067944
Apply patch dmlc/xgboost#10624
hcho3 Jul 22, 2024
847d066
Update patch
hcho3 Jul 22, 2024
21f1c9d
Move `cccl` to `host`
jakirkham Jul 22, 2024
f15daa3
Refresh XGBoost CCCL patch
jakirkham Jul 22, 2024
8fa589d
Squash patch
hcho3 Jul 22, 2024
d685506
Remove outdated CMake option
hcho3 Jul 22, 2024
dafc853
Remove install targets
jakirkham Jul 22, 2024
c9a3ae9
Switch to using source tarball
jakirkham Jul 22, 2024
a466561
Fix patch header
jakirkham Jul 22, 2024
e9521db
Fix patch format
jakirkham Jul 22, 2024
c08b35c
Update patch
hcho3 Jul 23, 2024
ad7fd0d
Show build command on Win
hcho3 Jul 23, 2024
5599b57
missing --
hcho3 Jul 23, 2024
0622240
Remove /m
hcho3 Jul 23, 2024
660f31a
Use -v
hcho3 Jul 23, 2024
3a77d97
Update patch
hcho3 Jul 24, 2024
5bee750
Fix lint
hcho3 Jul 24, 2024
bd7aa65
MNT: Re-rendered with conda-build 24.3.0, conda-smithy 3.37.1, and co…
hcho3 Jul 24, 2024
fd2bca9
Revert "MNT: Re-rendered with conda-build 24.3.0, conda-smithy 3.37.1…
hcho3 Jul 24, 2024
3b96b9e
Revert "Fix lint"
hcho3 Jul 24, 2024
e971233
Add back CUDA include path, but as SYSTEM
hcho3 Jul 24, 2024
0350fc8
Set min Python once and fix lint
jakirkham Jul 24, 2024
a89803e
MNT: Re-rendered with conda-build 24.5.1, conda-smithy 3.37.1, and co…
Jul 24, 2024
82d28a3
Try `AFTER` with CTK includes
jakirkham Jul 24, 2024
0e0eb0d
Use CMake interface target with CCCL & CTK
jakirkham Jul 24, 2024
b07a9f2
Consolidate patches into a directory
jakirkham Jul 24, 2024
f7f1fce
Link `CUDA::cudart_static` instead
jakirkham Jul 24, 2024
29250fa
Allow building with CCCL that's newer than CTK
hcho3 Jul 24, 2024
cc02f33
Exclude 2.4.0, 2.5.0 versions of CCCL
hcho3 Jul 24, 2024
bc5fec0
Update patches
hcho3 Jul 24, 2024
98aa52a
Switch to VS 2022
jakirkham Jul 24, 2024
5a42d4a
MNT: Re-rendered with conda-build 24.5.1, conda-smithy 3.37.1, and co…
Jul 24, 2024
25340c1
Downgrade to VS 2017
jakirkham Jul 25, 2024
e28655b
MNT: Re-rendered with conda-build 24.5.1, conda-smithy 3.37.1, and co…
Jul 25, 2024
0229049
Revert `conda_build_config.yaml`
jakirkham Jul 25, 2024
1249f1c
MNT: Re-rendered with conda-build 24.5.1, conda-smithy 3.37.1, and co…
Jul 25, 2024
d46872a
On Windows, set `__cplusplus` to C++ standard
jakirkham Jul 25, 2024
2ad8f99
Add Microsoft links to `/Zc:__cplusplus` comment
jakirkham Jul 25, 2024
2bc4e87
Link Microsoft blog on `/Zc:__cplusplus`
jakirkham Jul 25, 2024
1f90186
Pass `/Zc:__cplusplus` from `nvcc` to `cl`
jakirkham Jul 25, 2024
f7636eb
Update recipe/meta.yaml
hcho3 Jul 25, 2024
72e01f3
Drop Windows `__cplusplus` workaround
jakirkham Jul 25, 2024
f0e8fc3
Try bringing back `noarch: python`
hcho3 Jul 25, 2024
0349fc6
Tidy up patches
hcho3 Jul 25, 2024
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
Prev Previous commit
Next Next commit
Update patch
  • Loading branch information
hcho3 committed Jul 23, 2024
commit c08b35cd1bfa3e8f76eb101e8648a3b8e1e7b05f
29 changes: 20 additions & 9 deletions recipe/0005-Add-CMake-option-to-build-with-external-CCCL.patch
Original file line number Diff line number Diff line change
@@ -1,26 +1,37 @@
From 4165b0eb2665d27142d005b5a062ce6d84fe0432 Mon Sep 17 00:00:00 2001
From 683d24cf9ae591308176b1365544cbe9c57b60c5 Mon Sep 17 00:00:00 2001
From: Hyunsu Cho <chohyu01@cs.washington.edu>
Date: Mon, 22 Jul 2024 12:20:10 -0700
Subject: [PATCH] [CMake] Explicitly link with CCCL (standalone or CTK)

---
CMakeLists.txt | 6 ++++++
cmake/Utils.cmake | 1 +
2 files changed, 7 insertions(+)
CMakeLists.txt | 17 +++++++++++++++++
cmake/Utils.cmake | 1 +
2 files changed, 18 insertions(+)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 034d52164..311a2bc31 100644
index dc0f7e654..20dccd087 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -221,6 +221,12 @@ if(USE_CUDA)
@@ -224,6 +224,23 @@ if(USE_CUDA)
add_subdirectory(${PROJECT_SOURCE_DIR}/gputreeshap)

find_package(CUDAToolkit REQUIRED)
+ find_package(CCCL CONFIG)
+ if(NOT CCCL_FOUND)
+ message(STATUS "Standalone CCCL not found. Attempting to use CCCL from CTK...")
+ find_package(CCCL REQUIRED CONFIG
+ PATHS ${CUDAToolkit_LIBRARY_DIR}/cmake/cccl)
+ message(STATUS "Standalone CCCL not found. Attempting to use CCCL from CUDA Toolkit...")
+ find_package(CCCL CONFIG
+ HINTS ${CUDAToolkit_LIBRARY_DIR}/cmake)
+ if(NOT CCCL_FOUND)
+ message(STATUS "Could not locate CCCL from CUDA Toolkit. Using Thrust and CUB from CUDA Toolkit...")
+ find_package(Thrust CONFIG REQUIRED
+ HINTS ${CUDAToolkit_LIBRARY_DIR}/cmake)
+ find_package(CUB CONFIG REQUIRED
+ HINTS ${CUDAToolkit_LIBRARY_DIR}/cmake)
+ find_package(libcudacxx CONFIG REQUIRED
+ HINTS ${CUDAToolkit_LIBRARY_DIR}/cmake)
+ add_library(CCCL::CCCL INTERFACE IMPORTED GLOBAL)
+ target_link_libraries(CCCL::CCCL INTERFACE Thrust::Thrust CUB::CUB libcudacxx::libcudacxx)
+ endif()
+ endif()
endif()

Loading