pass trival test

This commit is contained in:
tqchen 2014-09-02 17:38:51 -07:00
parent 226d26d40c
commit f3360d173b
2 changed files with 13 additions and 11 deletions

View File

@ -47,8 +47,9 @@ class CSCMatrixManager {
/*! \brief get underlying batch */
inline ColBatch GetBatch(void) const {
ColBatch batch;
batch.col_index = &col_index[0];
batch.col_data = &col_data[0];
batch.size = col_index.size();
batch.col_index = BeginPtr(col_index);
batch.col_data = BeginPtr(col_data);
return batch;
}
private:
@ -83,7 +84,9 @@ class CSCMatrixManager {
val->Clear();
if (read_top_ >= col_index_.size()) return false;
while (read_top_ < col_index_.size()) {
if (!this->TryFill(col_index_[read_top_], val)) return true;
if (!this->TryFill(col_index_[read_top_], val)) {
return true;
}
++read_top_;
}
return true;
@ -241,12 +244,10 @@ class FMatrixPage : public IFMatrix {
}
virtual void InitColAccess(float pkeep = 1.0f) {
if (this->HaveColAccess()) return;
if (!this->LoadColData()) {
this->InitColData(pkeep, fname_cbuffer_.c_str(),
64 << 20, 5);
utils::Check(this->LoadColData(), "fail to read in column data");
}
}
/*!
* \brief get the row iterator associated with FMatrix
*/

View File

@ -452,6 +452,7 @@ class ColMaker: public IUpdater {
utils::Check(n > 0, "colsample_bylevel is too small that no feature can be included");
feat_set.resize(n);
}
std::sort(feat_set.begin(), feat_set.end());
utils::IIterator<ColBatch> *iter = p_fmat->ColIterator(feat_set);
while (iter->Next()) {
this->UpdateSolution(iter->Value(), gpair, *p_fmat, info);