C++14 for xgboost (#5664)

This commit is contained in:
Andy Adinets
2020-05-21 02:26:40 +02:00
committed by GitHub
parent 60511a3222
commit 646def51e0
13 changed files with 22 additions and 16 deletions

View File

@@ -14,7 +14,6 @@ if (USE_CUDA)
$<$<COMPILE_LANGUAGE:CUDA>:--expt-extended-lambda>
$<$<COMPILE_LANGUAGE:CUDA>:--expt-relaxed-constexpr>
$<$<COMPILE_LANGUAGE:CUDA>:-lineinfo>
$<$<AND:$<NOT:$<CXX_COMPILER_ID:MSVC>>,$<COMPILE_LANGUAGE:CUDA>>:--std=c++11>
$<$<COMPILE_LANGUAGE:CUDA>:${GEN_CODE}>)
if (USE_NCCL)
@@ -45,6 +44,8 @@ if (USE_CUDA)
endif (HIDE_CXX_SYMBOLS)
set_target_properties(objxgboost PROPERTIES
CUDA_STANDARD 14
CUDA_STANDARD_REQUIRED ON
CUDA_SEPARABLE_COMPILATION OFF)
else (USE_CUDA)
add_library(objxgboost OBJECT ${CPU_SOURCES} ${PLUGINS_SOURCES})
@@ -71,7 +72,7 @@ endif (MSVC)
set_target_properties(objxgboost PROPERTIES
POSITION_INDEPENDENT_CODE ON
CXX_STANDARD 11
CXX_STANDARD 14
CXX_STANDARD_REQUIRED ON)
target_compile_definitions(objxgboost
PRIVATE

View File

@@ -35,6 +35,8 @@ class Column {
index_(index),
index_base_(index_base) {}
virtual ~Column() = default;
uint32_t GetGlobalBinIdx(size_t idx) const {
return index_base_ + static_cast<uint32_t>(index_[idx]);
}

View File

@@ -314,7 +314,7 @@ class NDCGLambdaWeightComputer
for (size_t i = 0; i < sorted_list.size(); ++i) {
labels[i] = sorted_list[i].label;
}
std::stable_sort(labels.begin(), labels.end(), std::greater<bst_float>());
std::stable_sort(labels.begin(), labels.end(), std::greater<>());
IDCG = ComputeGroupDCGWeight(&labels[0], labels.size());
}
if (IDCG == 0.0) {

View File

@@ -699,7 +699,7 @@ class GlobalProposalHistMaker: public CQHistMaker {
this->work_set_.insert(this->work_set_.end(), this->fsplit_set_.begin(),
this->fsplit_set_.end());
XGBOOST_PARALLEL_SORT(this->work_set_.begin(), this->work_set_.end(),
std::less<decltype(this->work_set_)::value_type>{});
std::less<>{});
this->work_set_.resize(
std::unique(this->work_set_.begin(), this->work_set_.end()) - this->work_set_.begin());