Support 64bit seed. (#5643)
This commit is contained in:
parent
eaf2a00b5c
commit
21ed1f0c6d
@ -17,7 +17,7 @@ struct GenericParameter : public XGBoostParameter<GenericParameter> {
|
||||
|
||||
public:
|
||||
// stored random seed
|
||||
int seed;
|
||||
int64_t seed;
|
||||
// whether seed the PRNG each iteration
|
||||
bool seed_per_iteration;
|
||||
// number of threads to use if OpenMP is enabled
|
||||
|
||||
@ -260,4 +260,26 @@ TEST(Learner, GPUConfiguration) {
|
||||
}
|
||||
}
|
||||
#endif // defined(XGBOOST_USE_CUDA)
|
||||
|
||||
TEST(Learner, Seed) {
|
||||
auto m = RandomDataGenerator{10, 10, 0}.GenerateDMatrix();
|
||||
std::unique_ptr<Learner> learner {
|
||||
Learner::Create({m})
|
||||
};
|
||||
auto seed = std::numeric_limits<int64_t>::max();
|
||||
learner->SetParam("seed", std::to_string(seed));
|
||||
learner->Configure();
|
||||
Json config { Object() };
|
||||
learner->SaveConfig(&config);
|
||||
ASSERT_EQ(std::to_string(seed),
|
||||
get<String>(config["learner"]["generic_param"]["seed"]));
|
||||
|
||||
seed = std::numeric_limits<int64_t>::min();
|
||||
learner->SetParam("seed", std::to_string(seed));
|
||||
learner->Configure();
|
||||
learner->SaveConfig(&config);
|
||||
ASSERT_EQ(std::to_string(seed),
|
||||
get<String>(config["learner"]["generic_param"]["seed"]));
|
||||
}
|
||||
|
||||
} // namespace xgboost
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user