1576 Commits

Author SHA1 Message Date
Philip Hyunsu Cho
778751a1bb
Update the release script to download xgboost-cpu (#10657)
* Update the release script to download xgboost-cpu

* Exclude mypy 1.11.1; un-cap pylint

* Exclude mypy 1.11.0 too
2024-07-31 14:43:10 -07:00
Jiaming Yuan
fb77ed7603
[CI] Fix Python wheel workflow. (#10649)
* [CI] Fix Python wheel workflow.

* Use Python 3.10 for building wheels

---------

Co-authored-by: Hyunsu Cho <phcho@nvidia.com>
2024-07-30 10:13:47 -07:00
Jiaming Yuan
827d0e8edb
[breaking] Bump Python requirement to 3.10. (#10434)
- Bump the Python requirement.
- Fix type hints.
- Use loky to avoid deadlock.
- Workaround cupy-numpy compatibility issue on Windows caused by the `safe` casting rule.
- Simplify the repartitioning logic to avoid dask errors.
2024-07-30 17:31:06 +08:00
Dmitry Razdoburdin
7720272870
[sycl] add split applications and tests (#10636)
Co-authored-by: Dmitry Razdoburdin <>
2024-07-26 15:25:49 +08:00
Philip Hyunsu Cho
411c8466bd
[CMake] Explicitly link with CCCL (standalone or CTK) (#10624) 2024-07-23 18:42:54 -07:00
Jiaming Yuan
a19bbc9be5
Avoid caching allocator for large allocations. (#10582) 2024-07-23 03:48:03 +08:00
Dmitry Razdoburdin
f6cae4da85
[SYCL] Add splits evaluation (#10605)
---------

Co-authored-by: Dmitry Razdoburdin <>
2024-07-22 18:14:06 +08:00
Jiaming Yuan
6d9fcb771e
Move device histogram storage into histogram.cuh. (#10608) 2024-07-21 14:10:13 +08:00
Jiaming Yuan
cb62f9e73b
[EM] Prevent init with CUDA malloc resource. (#10606) 2024-07-21 05:08:29 +08:00
Philip Hyunsu Cho
326921dbe4
[CI] Build a CPU-only wheel under name xgboost-cpu (#10603) 2024-07-19 10:51:08 -07:00
Jiaming Yuan
7ab93f3ce3
[CI] Fix test environment. (#10609)
* [CI] Fix test environment.

* Remove shell.

* Remove.

* Update Dockerfile.i386
2024-07-18 10:04:17 -07:00
Jiaming Yuan
292bb677e5
[EM] Support mmap backed ellpack. (#10602)
- Support resource view in ellpack.
- Define the CUDA version of MMAP resource.
- Define the CUDA version of malloc resource.
- Refactor cuda runtime API wrappers, and add memory access related wrappers.
- gather windows macros into a single header.
2024-07-18 08:20:21 +08:00
Jiaming Yuan
e9fbce9791
Refactor DeviceUVector. (#10595)
Create a wrapper instead of using inheritance to avoid inconsistent interface of the class.
2024-07-18 03:33:01 +08:00
Jiaming Yuan
a6a8a55ffa
Merge approx tests. (#10583) 2024-07-16 19:03:48 +08:00
Dmitry Razdoburdin
ce97de2a7c
replace channel for sycl dependencies (#10576)
Co-authored-by: Dmitry Razdoburdin <>
2024-07-12 18:28:54 +08:00
Jiaming Yuan
6c403187ec
Fix column split race condition. (#10572) 2024-07-12 01:07:12 +08:00
Jiaming Yuan
1ca4bfd20e
Avoid thrust vector initialization. (#10544)
* Avoid thrust vector initialization.

- Add a wrapper for rmm device uvector.
- Split up the `Resize` method for HDV.
2024-07-11 17:29:27 +08:00
Jiaming Yuan
89da9f9741
[fed] Split up federated test CMake file. (#10566)
- Collect all federated test files into the same directory.
- Independently list the files.
2024-07-11 13:09:18 +08:00
Jiaming Yuan
5f910cd4ff
[EM] Handle base idx in GPU histogram. (#10549) 2024-07-11 03:26:30 +08:00
Jiaming Yuan
34b154c284
Avoid the use of size_t in the partitioner. (#10541)
- Avoid the use of size_t in the partitioner.
- Use `Span` instead of `Elem` where `node_id` is not needed.
- Remove the `const_cast`.
- Make sure the constness is not removed in the `Elem` by making it reference only.

size_t is implementation-defined, which causes issue when we want to pass pointer or span.
2024-07-11 00:43:08 +08:00
Jiaming Yuan
00264eb72b
[EM] Basic distributed test for external memory. (#10492) 2024-07-06 01:15:20 +08:00
Jiaming Yuan
620b2b155a
Cache GPU histogram kernel configuration. (#10538) 2024-07-04 15:38:59 +08:00
Jiaming Yuan
628411a654
Enhance the threadpool implementation. (#10531)
- Accept an initialization function.
- Support void return tasks.
2024-07-03 12:13:27 +08:00
Jiaming Yuan
9cb4c938da
[EM] Move prefetch in reset into the end of the iteration. (#10529) 2024-07-03 03:48:18 +08:00
Jiaming Yuan
a39fef2c67
[fed] Fixes for the encrypted GRPC backend. (#10503) 2024-07-02 15:15:12 +08:00
Philip Hyunsu Cho
09d32f1f2b
Fix build and C++ tests for FreeBSD (#10480) 2024-06-28 01:47:55 -07:00
Jiaming Yuan
e8a962575a
[EM] Allow staging ellpack on host for GPU external memory. (#10488)
- New parameter `on_host`.
- Abstract format creation and stream creation into policy classes.
2024-06-28 04:42:18 +08:00
Jiaming Yuan
824fba783e
Remove support for deprecated format in Python. (#10490) 2024-06-27 11:31:53 +08:00
Philip Hyunsu Cho
4b88dfff24
[CI] Temporarily pin pylint to 3.2.3 (#10494)
* [CI] Temporarily pin pylint to 3.2.3

* Add quotes

* Correct env
2024-06-26 14:08:49 -07:00
Hyunsu Cho
5efc979551
[CI] [Hotfix] Make S3 upload conditional 2024-06-26 06:21:46 -07:00
Philip Hyunsu Cho
08658b124d
[CI] Add CI pipeline to build libxgboost4j.so targeting Linux ARM64 (#10487) 2024-06-26 01:43:15 -07:00
Philip Hyunsu Cho
4c1920a6a5
[CI] Fix S3 upload for manylinux2014 wheels (#10483) 2024-06-24 14:40:28 -07:00
Philip Hyunsu Cho
d4dee25eb3
[CI] Set up pipeline to build manylinux2014 wheels (#10478) 2024-06-24 12:25:26 -07:00
Jiaming Yuan
26eb68859f
Consistently report error in tests. (#10453) 2024-06-21 14:35:22 +08:00
Jiaming Yuan
e5f1720656
[EM] Avoid writing cut matrix to cache. (#10444) 2024-06-19 18:03:38 +08:00
Philip Hyunsu Cho
45150a844e
[CI] [jvm-packages] Build libxgboost4j.dylib on M1 MacOS with OpenMP support (#10449) 2024-06-18 20:20:29 -07:00
Philip Hyunsu Cho
8689f0b562
[CI] Stop vendoring libomp.dylib in MacOS Python wheels (#10440) 2024-06-18 19:17:02 -07:00
Jiaming Yuan
b9e5229ff2
Update rapids (#10435)
* [CI] Update RAPIDS to latest stable

* RMM.

---------

Co-authored-by: hcho3 <2532981+hcho3@users.noreply.github.com>
Co-authored-by: Philip Hyunsu Cho <chohyu01@cs.washington.edu>
2024-06-18 05:01:57 +08:00
Jiaming Yuan
b4cc350ec5
Fix categorical data with external memory. (#10433) 2024-06-18 04:34:54 +08:00
Philip Hyunsu Cho
bc3747bdce
[CI] Migrate to rockylinux8 / manylinux_2_28_x86_64 (#10399)
* [CI] Migrate to rockylinux8 / manylinux_2_28_x86_64

* Scrub all references to CentOS 7

* Fix

* Remove use of yum

* Use gcc-10 in cpu

* Temporarily disable -Werror

* Use GCC 9 for now

* Roll back gRPC

* Scrub all references to manylinux2014_x86_64

* Revise rename_whl.py to handle no-op rename

* Change JDK_VERSION back to 8

* Reviewer's comment

* Use GCC 10

* Use Spark 3.5.1, same as in pom.xml

* Fix JAR install
2024-06-17 12:07:49 -07:00
Jiaming Yuan
320e7c2041
[CI] Enable CI binary build for the vertical federated learning branch. (#10417)
Co-authored-by: Philip Hyunsu Cho <chohyu01@cs.washington.edu>
2024-06-17 17:01:04 +08:00
Jiaming Yuan
6c83c8c2ef
Allow blocking launch of federated tracker. (#10414)
---------

Co-authored-by: Philip Hyunsu Cho <chohyu01@cs.washington.edu>
2024-06-16 01:43:53 +08:00
Philip Hyunsu Cho
1ace9c66ec
[CI] Fix JVM tests on Windows (#10404) 2024-06-15 00:21:40 -07:00
Richard (Rick) Zamora
dc14f98f40
Avoid default tokenization in Dask (#10398)
---------

Co-authored-by: Jiaming Yuan <jm.yuan@outlook.com>
2024-06-14 19:44:54 +08:00
Bobby Wang
cf0c1d0888
[pyspark] Avoid repartition. (#10408) 2024-06-12 02:26:10 +08:00
Jiaming Yuan
c9f5fcaf21
[col] Small cleanup to federated comm. (#10397) 2024-06-07 21:19:04 +08:00
Jiaming Yuan
979e392deb
Fix warnings in GPU dask tests. (#10358) 2024-06-04 12:58:58 +08:00
Philip Hyunsu Cho
4057f861c1
[CI] Add nightly CI job to test against dev version of deps (#10351)
* [CI] Add nightly CI job to test against dev version of deps

* Update build-containers.sh

* Add build step

* Wait for build artifact

* Try pinning dask

* Address reviewers' comments

* Fix unbound variable error

* Specify dev version exactly

* Pin dask=2024.1.1
2024-06-03 19:28:55 -07:00
Jiaming Yuan
d2d01d977a
Remove unnecessary fetch operations in external memory. (#10342) 2024-05-31 13:16:40 +08:00
Jiaming Yuan
e6eefea5e2
[coll] Move the rabit poll helper. (#10349) 2024-05-31 08:02:21 +08:00