pecos_core/sims_rngs/
xoshiro_rng.rs

1// Copyright 2024 The PECOS Developers
2//
3// Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
4// in compliance with the License.You may obtain a copy of the License at
5//
6//     https://www.apache.org/licenses/LICENSE-2.0
7//
8// Unless required by applicable law or agreed to in writing, software distributed under the License
9// is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
10// or implied. See the License for the specific language governing permissions and limitations under
11// the License.
12
13use super::sim_rng::SimRng;
14pub use rand_xoshiro::{
15    Xoshiro128PlusPlus, Xoshiro128StarStar, Xoshiro256PlusPlus, Xoshiro256StarStar,
16    Xoshiro512PlusPlus, Xoshiro512StarStar,
17};
18
19impl SimRng for Xoshiro128PlusPlus {} // Recommended for 32-bit systems
20impl SimRng for Xoshiro256PlusPlus {} // Recommended for 64-bit systems
21impl SimRng for Xoshiro512PlusPlus {} // Recommended if paranoid about parallelization (bigger state)
22
23// StarStar can be faster for some systems
24impl SimRng for Xoshiro128StarStar {}
25impl SimRng for Xoshiro256StarStar {}
26impl SimRng for Xoshiro512StarStar {}