a general estimation from experience, its very rough, for your algorithm it could be anywhere between 1e6 to 1e9 depending on the platform and n_features.
prevent zero devision, if denominator > 0
For multiple gpus, split by class, coarser ganularity splits fits gpus better.