Rewrite the whole xgboost in rust without any c/c++

I want to rewrite the whole xgboost in rust without any single line of c/c++ code. Because my work asks me to do that. I am not familiar with c++ which xgsboost source code uses, and that is the problem for me. Anyone has any advice for me? Any code or paper, except a scalable tree boosting system?

This is the KDD paper written back in 2016 for XGBoost:

I also wrote a master’s thesis on XGBoost, and it contains a pseudocode for the XGBoost training algorithm:

For a runnable example, see

Thx, Philip. It’s really helpful. I’ll check all of them.

You might also have a look at this high performance Python + Numba implementation of XGBoost:

Hi @czzmmc,

Any chance you came up with the start of something ?
I’ve been looking to do the exact same thing lately to get rid of the odd c/cpp code used in the current crate I tried to use.
Maybe there is a project I could contribute to ?


Hi @hcho3,
The second Google drive link expired.
Is it possible to reshare it again for the further reading?

Thank you so much!