xgboost
Public Types | Public Member Functions | Public Attributes | List of all members
xgboost::SparsePage Class Reference

In-memory storage unit of sparse batch, stored in CSR format. More...

#include <data.h>

Inheritance diagram for xgboost::SparsePage:
Inheritance graph
Collaboration diagram for xgboost::SparsePage:
Collaboration graph

Public Types

using Inst = common::Span< Entry const >
 an instance of sparse vector in the batch More...
 

Public Member Functions

Inst operator[] (size_t i) const
 get i-th row from the batch More...
 
HostSparsePageView GetView () const
 
 SparsePage ()
 constructor More...
 
size_t Size () const
 
size_t MemCostBytes () const
 
void Clear ()
 clear the page More...
 
void SetBaseRowId (size_t row_id)
 Set the base row id for this page. More...
 
SparsePage GetTranspose (int num_columns) const
 
void SortRows ()
 
void Push (const dmlc::RowBlock< uint32_t > &batch)
 Push row block into the page. More...
 
template<typename AdapterBatchT >
uint64_t Push (const AdapterBatchT &batch, float missing, int nthread)
 Pushes external data batch onto this page. More...
 
void Push (const SparsePage &batch)
 Push a sparse page. More...
 
void PushCSC (const SparsePage &batch)
 Push a SparsePage stored in CSC format. More...
 

Public Attributes

HostDeviceVector< bst_row_toffset
 
HostDeviceVector< Entrydata
 the data of the segments More...
 
size_t base_rowid {}
 

Detailed Description

In-memory storage unit of sparse batch, stored in CSR format.

Member Typedef Documentation

◆ Inst

an instance of sparse vector in the batch

Constructor & Destructor Documentation

◆ SparsePage()

xgboost::SparsePage::SparsePage ( )
inline

constructor

Member Function Documentation

◆ Clear()

void xgboost::SparsePage::Clear ( )
inline

clear the page

◆ GetTranspose()

SparsePage xgboost::SparsePage::GetTranspose ( int  num_columns) const

◆ GetView()

HostSparsePageView xgboost::SparsePage::GetView ( ) const
inline

◆ MemCostBytes()

size_t xgboost::SparsePage::MemCostBytes ( ) const
inline
Returns
estimation of memory cost of this page

◆ operator[]()

Inst xgboost::SparsePage::operator[] ( size_t  i) const
inline

get i-th row from the batch

◆ Push() [1/3]

void xgboost::SparsePage::Push ( const dmlc::RowBlock< uint32_t > &  batch)

Push row block into the page.

Parameters
batchthe row batch.

◆ Push() [2/3]

template<typename AdapterBatchT >
uint64_t xgboost::SparsePage::Push ( const AdapterBatchT &  batch,
float  missing,
int  nthread 
)

Pushes external data batch onto this page.

Template Parameters
AdapterBatchT
Parameters
batch
missing
nthread
Returns
The maximum number of columns encountered in this input batch. Useful when pushing many adapter batches to work out the total number of columns.

◆ Push() [3/3]

void xgboost::SparsePage::Push ( const SparsePage batch)

Push a sparse page.

Parameters
batchthe row page

◆ PushCSC()

void xgboost::SparsePage::PushCSC ( const SparsePage batch)

Push a SparsePage stored in CSC format.

Parameters
batchThe row batch to be pushed

◆ SetBaseRowId()

void xgboost::SparsePage::SetBaseRowId ( size_t  row_id)
inline

Set the base row id for this page.

◆ Size()

size_t xgboost::SparsePage::Size ( ) const
inline
Returns
Number of instances in the page.

◆ SortRows()

void xgboost::SparsePage::SortRows ( )
inline

Member Data Documentation

◆ base_rowid

size_t xgboost::SparsePage::base_rowid {}

◆ data

HostDeviceVector<Entry> xgboost::SparsePage::data

the data of the segments

◆ offset

HostDeviceVector<bst_row_t> xgboost::SparsePage::offset

The documentation for this class was generated from the following file: