/*! * Copyright 2020 by XGBoost Contributors */ #ifndef EVALUATE_SPLITS_CUH_ #define EVALUATE_SPLITS_CUH_ #include #include "../../data/ellpack_page.cuh" #include "../constraints.cuh" #include "../updater_gpu_common.cuh" namespace xgboost { namespace tree { template struct EvaluateSplitInputs { int nidx; GradientSumT parent_sum; GPUTrainingParam param; common::Span feature_set; common::Span feature_segments; common::Span feature_values; common::Span min_fvalue; common::Span gradient_histogram; ValueConstraint value_constraint; common::Span monotonic_constraints; }; template void EvaluateSplits(common::Span out_splits, EvaluateSplitInputs left, EvaluateSplitInputs right); template void EvaluateSingleSplit(common::Span out_split, EvaluateSplitInputs input); } // namespace tree } // namespace xgboost #endif // EVALUATE_SPLITS_CUH_