xgboost
Classes | Namespaces | Typedefs | Enumerations | Functions
hist_util.h File Reference

Utility for fast histogram aggregation. More...

#include <xgboost/data.h>
#include <xgboost/generic_parameters.h>
#include <limits>
#include <vector>
#include <algorithm>
#include <memory>
#include <utility>
#include <map>
#include "row_set.h"
#include "threading_utils.h"
#include "../tree/param.h"
#include "./quantile.h"
#include "./timer.h"
#include "../include/rabit/rabit.h"
Include dependency graph for hist_util.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  xgboost::common::HistogramCuts
 
class  xgboost::common::CutsBuilder
 
class  xgboost::common::SparseCuts
 Cut configuration for sparse dataset. More...
 
class  xgboost::common::DenseCuts
 Cut configuration for dense dataset. More...
 
struct  xgboost::common::Index
 
struct  xgboost::common::GHistIndexMatrix
 preprocessed global index matrix, in CSR format More...
 
struct  xgboost::common::GHistIndexBlock
 
class  xgboost::common::GHistIndexBlockMatrix
 
class  xgboost::common::HistCollection
 histogram of gradient statistics for multiple nodes More...
 
class  xgboost::common::ParallelGHistBuilder
 Stores temporary histograms to compute them in parallel Supports processing multiple tree-nodes for nested parallelism Able to reduce histograms across threads in efficient way. More...
 
class  xgboost::common::GHistBuilder
 builder for histograms of gradient statistics More...
 

Namespaces

 xgboost
 namespace of xgboost
 
 xgboost::common
 

Typedefs

using xgboost::common::GHistIndexRow = Span< uint32_t const >
 A single row in global histogram index. Directly represent the global index in the histogram entry. More...
 
using xgboost::common::GHistRow = Span< tree::GradStats >
 histogram of gradient statistics for a single node. Consists of multiple GradStats, each entry showing total gradient statistics for that particular bin Uses global bin id so as to represent all features simultaneously More...
 

Enumerations

enum  xgboost::common::BinTypeSize { xgboost::common::kUint8BinsTypeSize = 1, xgboost::common::kUint16BinsTypeSize = 2, xgboost::common::kUint32BinsTypeSize = 4 }
 

Functions

HistogramCuts xgboost::common::DeviceSketch (int device, DMatrix *dmat, int max_bins, size_t sketch_batch_num_elements=0)
 
template<typename AdapterT >
HistogramCuts xgboost::common::AdapterDeviceSketch (AdapterT *adapter, int num_bins, float missing, size_t sketch_batch_num_elements=0)
 
void xgboost::common::InitilizeHistByZeroes (GHistRow hist, size_t begin, size_t end)
 fill a histogram by zeros More...
 
void xgboost::common::IncrementHist (GHistRow dst, const GHistRow add, size_t begin, size_t end)
 Increment hist as dst += add in range [begin, end) More...
 
void xgboost::common::CopyHist (GHistRow dst, const GHistRow src, size_t begin, size_t end)
 Copy hist from src to dst in range [begin, end) More...
 
void xgboost::common::SubtractionHist (GHistRow dst, const GHistRow src1, const GHistRow src2, size_t begin, size_t end)
 Compute Subtraction: dst = src1 - src2 in range [begin, end) More...
 

Detailed Description

Utility for fast histogram aggregation.

Copyright 2017-2020 by Contributors

Author
Philip Cho, Tianqi Chen