Evovest / EvoTrees.jl

Boosted trees in Julia
https://evovest.github.io/EvoTrees.jl/dev/
Apache License 2.0
175 stars 21 forks source link

Trains as single threaded and no documentation on how to use multithreading #240

Closed jbmorgado closed 1 year ago

jbmorgado commented 1 year ago

The documentation is scant about these details, but the Readme talks about training with a 12 thread Ryzen CPU which seems to imply the training process should be multithreaded.

But, when using the examples provided in the documentation, all training is done as single threaded, and, as such, very slow.

Please clarify this in the Documentation and add instruction on how to use multithreading (if it indeed supports it).

jeremiedb commented 1 year ago

EvoTrees performs training and inference using all threads available to Julia. So there's no special action needed, other than making multiple threads available, which can be achieved in various ways: https://docs.julialang.org/en/v1/manual/multi-threading/. Notably, either through the JULIA_NUM_THREADS env variable, or using --threads=8 argument in command line argument.