7053 Commits

Author SHA1 Message Date
Jiaming Yuan
55aef8f546
[EM] Avoid resizing host cache. (#10734)
* [EM] Avoid resizing host cache.

- Add SAM allocator and resource.
- Use page-based cache instead of stream-based cache.
2024-08-23 06:34:01 +08:00
James Lamb
dbfafd8557
[doc] Install the conda GPU variant in environments without CUDA (#10731) 2024-08-22 19:48:15 +08:00
Philip Hyunsu Cho
cd83fe6033
[breaking][CI] Use CTK 12.4 (#10697) 2024-08-21 19:59:34 -07:00
Jiaming Yuan
142bdc73ec
[EM] Support SHAP contribution with QDM. (#10724)
- Add GPU support.
- Add external memory support.
- Update the GPU tree shap.
2024-08-22 05:25:10 +08:00
Jiaming Yuan
cb54374550
Update clang-tidy. (#10730)
- Install cmake using pip.
- Fix compile command generation.
- Clean up the tidy script and remove the need to load the yaml file.
- Fix modernized type traits.
- Fix span class. Polymorphism support is dropped
2024-08-22 04:12:18 +08:00
James Lamb
03bd1183bc
[doc] prefer 'cmake -B' and 'cmake --build' everywhere (#10717) 2024-08-22 02:16:55 +08:00
Dmitry Razdoburdin
24d225c1ab
[SYCL] Implement UpdatePredictionCache and connect updater with leraner. (#10701)
---------

Co-authored-by: Dmitry Razdoburdin <>
2024-08-22 02:07:44 +08:00
Jiaming Yuan
9b88495840
[multi] Implement weight feature importance. (#10700) 2024-08-22 02:06:47 +08:00
Jiaming Yuan
402e7837fb
Fix potential race in feature constraint. (#10719) 2024-08-21 16:50:31 +08:00
david-cortes
e9f1abc1f0
[R] keep row names in predictions (#10727) 2024-08-21 05:49:02 +08:00
david-cortes
adf87b27c5
[doc] Fix tutorial for advanced objectives (#10725) 2024-08-21 02:52:50 +08:00
Jiaming Yuan
508ac13243
Check cub errors. (#10721)
- Make sure cuda error returned by cub scan is caught.
- Avoid temporary buffer allocation in thrust device vector.
2024-08-21 02:50:26 +08:00
Michael Mayer
b949a4bf7b
[R] Work on Roxygen documentation (#10674) 2024-08-20 13:33:13 +08:00
James Lamb
5db0803eb2
ignore UBJSON files in gitignore (#10718) 2024-08-19 16:50:37 +08:00
david-cortes
caabee2135
[R] remove 'reshape' argument, let shapes be handled by core cpp library (#10330) 2024-08-18 23:31:38 +08:00
Jiaming Yuan
fd365c147e
[doc] Brief note about RMM SAM allocator. [skip ci] (#10712) 2024-08-17 04:21:39 +08:00
Jiaming Yuan
ec3f327c20
Add managed memory allocator. (#10711) 2024-08-17 03:02:34 +08:00
Jiaming Yuan
8d7fe262d9
[EM] Enable access to the number of batches. (#10691)
- Expose `NumBatches` in `DMatrix`.
- Small cleanup for removing legacy CUDA stream and ~force CUDA context initialization~.
- Purge old external memory data generation code.
2024-08-17 02:59:45 +08:00
Jiaming Yuan
033a666900
[EM] Log the page size of ellpack. (#10713) 2024-08-17 01:35:47 +08:00
Jiaming Yuan
abe65e3769
Reduce thread contention in column split histogram test. (#10708) 2024-08-17 01:00:32 +08:00
Jiaming Yuan
2258bc870d
Add more tests and doc for QDM. (#10692) 2024-08-16 23:30:04 +08:00
Jiaming Yuan
582ea104b5
[EM] Enable prediction cache for GPU. (#10707)
- Use `UpdatePosition` for all nodes and skip `FinalizePosition` when external memory is used.
- Create `encode/decode` for node position, this is just as a refactor.
- Reuse code between update position and finalization.
2024-08-15 21:41:59 +08:00
Dmitry Razdoburdin
0def8e0bae
[sycl] fix fitting for fp32 devices (#10702)
Co-authored-by: Dmitry Razdoburdin <>
2024-08-15 03:50:17 +08:00
Dmitry Razdoburdin
773ded684b
[sycl] Add depth-wise policy (#10690)
Co-authored-by: Dmitry Razdoburdin <>
2024-08-13 18:12:35 +08:00
James Lamb
b457d0d792
[doc] [R] clarify lintr docs (#10698) 2024-08-13 14:37:31 +08:00
Jiaming Yuan
2ecc85ffad
[EM] Support ExtMemQdm in the GPU predictor. (#10694) 2024-08-13 12:21:11 +08:00
Jiaming Yuan
43704549a2
[coll] Reduce the amount of open files (socket). (#10693)
Reduce the chance of hitting `Failed to call `socket`: Too many open files`.
2024-08-13 05:23:49 +08:00
Jiaming Yuan
d414fdf2e7
[EM] Add GPU version of the external memory QDM. (#10689) 2024-08-10 10:49:43 +08:00
James Lamb
18b28d9315
[R] prefer startsWith to substr() or regular expressions (#10687) 2024-08-09 21:18:46 +08:00
James Lamb
fb9201abae
[CI] use key=value form for Dockerfile ENV statements (#10685) 2024-08-09 21:12:50 +08:00
James Lamb
e02b376bf7
[R] Ignore auto-generated config.h, ensure tests run without 'vcd' (#10688) 2024-08-09 17:23:27 +08:00
Jiaming Yuan
7bccc1ea2c
[EM] CPU implementation for external memory QDM. (#10682)
- A new DMatrix type.
- Extract common code into a new QDM base class.

Not yet working:
- Not exposed to the interface yet, will wait for the GPU implementation.
- ~No meta info yet, still working on the source.~
- Exporting data to CSR is not supported yet.
2024-08-09 09:38:02 +08:00
jakirkham
ac8366654b
Tweak R-package endian message for clarity (#10654)
---------

Co-authored-by: Jiaming Yuan <jm.yuan@outlook.com>
2024-08-09 09:33:54 +08:00
Dmitry Razdoburdin
e555a238bc
[SYCL]. Add implementation for loss-guided policy (#10681)
---------

Co-authored-by: Dmitry Razdoburdin <>
2024-08-09 09:04:46 +08:00
Jiaming Yuan
cc3b56fc37
Cleanup GPU Hist tests. (#10677)
* Cleanup GPU Hist tests.

- Remove GPU Hist gradient sampling test. The same properties are tested in the gradient
  sampler test suite.
- Move basic histogram tests into the histogram test suite.
- Remove the header inclusion of the `updater_gpu_hist.cu` in tests.
2024-08-06 11:50:44 +08:00
Jiaming Yuan
6ccf116601
[dask] Reduce the flakiness of tests. (#10678) 2024-08-06 06:04:10 +08:00
Philip Hyunsu Cho
35b1cdb365
Update release script for the JVM packages (#10660) 2024-08-05 14:46:14 -07:00
Jiaming Yuan
3d8107adb8
Support doc link for the sklearn module. (#10287) 2024-08-06 02:35:32 +08:00
Jiaming Yuan
a269055b2b
[coll] Use loky for tests. (#10676)
This makes the tests easier to run and debug. In addition, they can now work on Windows as
well.
2024-08-03 07:33:42 +08:00
Jiaming Yuan
a185b693dc
Reduce warnings and flakiness in tests. (#10659)
- Fix warnings in tests.
- Try to reduce the flakiness of dask test.
2024-08-03 07:32:47 +08:00
Jiaming Yuan
2e7ba900ef
[CI] Add timeout limit to JVM tests. (#10673) 2024-08-03 01:51:13 +08:00
dependabot[bot]
ad32b4e021
Bump ossf/scorecard-action from 2.3.3 to 2.4.0 (#10664)
Bumps [ossf/scorecard-action](https://github.com/ossf/scorecard-action) from 2.3.3 to 2.4.0.
- [Release notes](https://github.com/ossf/scorecard-action/releases)
- [Changelog](https://github.com/ossf/scorecard-action/blob/main/RELEASE.md)
- [Commits](dc50aa9510...62b2cac7ed)

---
updated-dependencies:
- dependency-name: ossf/scorecard-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-03 00:11:11 +08:00
dependabot[bot]
9e0a9a066b
Bump docker/setup-buildx-action from 3.4.0 to 3.6.1 (#10663)
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 3.4.0 to 3.6.1.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](https://github.com/docker/setup-buildx-action/compare/v3.4.0...v3.6.1)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-03 00:10:35 +08:00
Jiaming Yuan
574c20dc1d
Enable CI build for the federated-secure branch. (#10671) 2024-08-02 22:13:17 +08:00
Jiaming Yuan
77c844cef7
Reduce thread contention in column split tests. (#10658)
---------

Co-authored-by: Philip Hyunsu Cho <chohyu01@cs.washington.edu>
2024-08-01 18:36:46 +08:00
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
jakirkham
757aafc131
Allow external configuration of endianness in R package build (#10642)
* Allow users to set endianness in R build

* Run `autoreconf -vi`

* Don't use :BOOL suffix

* Use AC_CONFIG_HEADERS

---------

Co-authored-by: Hyunsu Cho <phcho@nvidia.com>
Co-authored-by: Philip Hyunsu Cho <chohyu01@cs.washington.edu>
2024-07-29 17:24:29 -07:00
jakirkham
d4b82f50ab
Add Library\mingw-w64 to Windows search path (#10643) 2024-07-29 14:17:59 -07:00