dmlc / XGBoost.jl

XGBoost Julia Package
Other
288 stars 110 forks source link

GPU Support TODO List #134

Closed ExpandingMan closed 1 year ago

ExpandingMan commented 1 year ago

The following needs to be done for this wrapper to get GPU support. From the C API docs it looks like this would mean only nvidia as I think it necessarily relies on CUDA.

Roh-codeur commented 1 year ago

thanks for your work on this, I look forward to seeing this. will add a significant impact on my project, thanks!

Roh-codeur commented 1 year ago

@ExpandingMan : hey mate, thanks for your help with this. did you get a chance to make progress with this? this will be of tremendous help to my project

thanks Roh

ExpandingMan commented 1 year ago

I have not, but I also have not forgotten about it.

The part of this with the most question marks in my mind is how exactly to setup the xgboost_jll which I'm going to have to figure out to some extent before I even attempt to make a wrapper. So if anyone wants to help this along getting the xgboost_jll updated to include GPU support and automatically use that build when nvidia cards are present would be best way to do that.

Roh-codeur commented 1 year ago

ahh ok, sorry, not my area of expertise or even knowhow. thanks for your help in this, ta!

tylerjthomas9 commented 1 year ago

Full GPU support is now available in v2.2.0 (https://github.com/dmlc/XGBoost.jl/pull/142).

Roh-codeur commented 1 year ago

Full GPU support is now available in v2.2.0 (#142).

this is awesome! thanks a lot @tylerjthomas9 and everyone else who helped.

[Edit] this is awesome! thanks a lot to @ExpandingMan and @tylerjthomas9 and everyone else who helped.

tylerjthomas9 commented 1 year ago

this is awesome! thanks a lot @tylerjthomas9 and everyone else who helped.

@ExpandingMan is the primary person behind all the recent improvements to XGBoost.jl

ExpandingMan commented 1 year ago

Forgive the mutual admiration society, but by far the hardest part of doing this was updating the XGBoost_jll to properly handle CUDA dependencies which was done by @tylerjthomas9 . The wrapper part was, fortunately quite easy, thanks in part to the very easy to use CUDA.jl.

So yes, I think this wrapper with GPU support is a nice success story for the Julia wrapping and packaging ecosystem :smile: