Prevent copying SimpleDMatrix. (#5453)
* Set default dtor for SimpleDMatrix to initialize default copy ctor, which is deleted due to unique ptr. * Remove commented code. * Remove warning for calling host function (std::max). * Remove warning for initialization order. * Remove warning for unused variables.
This commit is contained in:
@@ -427,25 +427,6 @@ DMatrix* DMatrix::Load(const std::string& uri,
|
||||
return dmat;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
DMatrix* DMatrix::Create(std::unique_ptr<DataSource<SparsePage>>&& source,
|
||||
const std::string& cache_prefix) {
|
||||
if (cache_prefix.length() == 0) {
|
||||
// Data split mode is fixed to be row right now.
|
||||
rabit::Allreduce<rabit::op::Max>(&source->info.num_col_, 1);
|
||||
return new data::SimpleDMatrix(std::move(source));
|
||||
} else {
|
||||
#if DMLC_ENABLE_STD_THREAD
|
||||
return new data::SparsePageDMatrix(std::move(source), cache_prefix);
|
||||
#else
|
||||
LOG(FATAL) << "External memory is not enabled in mingw";
|
||||
return nullptr;
|
||||
#endif // DMLC_ENABLE_STD_THREAD
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
template <typename AdapterT>
|
||||
DMatrix* DMatrix::Create(AdapterT* adapter, float missing, int nthread,
|
||||
const std::string& cache_prefix, size_t page_size ) {
|
||||
|
||||
@@ -23,6 +23,7 @@ class SimpleDMatrix : public DMatrix {
|
||||
explicit SimpleDMatrix(AdapterT* adapter, float missing, int nthread);
|
||||
|
||||
explicit SimpleDMatrix(dmlc::Stream* in_stream);
|
||||
~SimpleDMatrix() override = default;
|
||||
|
||||
void SaveToLocalFile(const std::string& fname);
|
||||
|
||||
|
||||
@@ -30,7 +30,6 @@ class SparsePageDMatrix : public DMatrix {
|
||||
row_source_.reset(new data::SparsePageSource(adapter, missing, nthread,
|
||||
cache_prefix, page_size));
|
||||
}
|
||||
// Set number of threads but keep old value so we can reset it after
|
||||
~SparsePageDMatrix() override = default;
|
||||
|
||||
MetaInfo& Info() override;
|
||||
|
||||
Reference in New Issue
Block a user