|
template<typename Func > |
void | Init (const size_t n_tasks, size_t n_nodes, Func funcNTask) |
|
template<bool default_left, bool any_missing, typename ColumnType , typename Predicate > |
std::pair< size_t, size_t > | PartitionKernel (const ColumnType &column, common::Span< const size_t > row_indices, common::Span< size_t > left_part, common::Span< size_t > right_part, size_t base_rowid, Predicate &&pred) |
|
template<typename Pred > |
std::pair< size_t, size_t > | PartitionRangeKernel (common::Span< const size_t > ridx, common::Span< size_t > left_part, common::Span< size_t > right_part, Pred pred) |
|
template<typename BinIdxType , bool any_missing, bool any_cat> |
void | Partition (const size_t node_in_set, const size_t nid, const common::Range1d range, const int32_t split_cond, GHistIndexMatrix const &gmat, const ColumnMatrix &column_matrix, const RegTree &tree, const size_t *rid) |
|
template<typename Pred > |
void | PartitionRange (const size_t node_in_set, const size_t nid, common::Range1d range, bst_feature_t fidx, common::RowSetCollection *p_row_set_collection, Pred pred) |
| Partition tree nodes with specific range of row indices. More...
|
|
void | AllocateForTask (size_t id) |
|
common::Span< size_t > | GetLeftBuffer (int nid, size_t begin, size_t end) |
|
common::Span< size_t > | GetRightBuffer (int nid, size_t begin, size_t end) |
|
void | SetNLeftElems (int nid, size_t begin, size_t end, size_t n_left) |
|
void | SetNRightElems (int nid, size_t begin, size_t end, size_t n_right) |
|
size_t | GetNLeftElems (int nid) const |
|
size_t | GetNRightElems (int nid) const |
|
void | CalculateRowOffsets () |
|
void | MergeToArray (int nid, size_t begin, size_t *rows_indexes) |
|
size_t | GetTaskIdx (int nid, size_t begin) |
|