use thread estimation if threads is set to 0

This commit is contained in:
Niko Abeler 2022-11-20 17:05:11 +01:00
parent d8b172c7fb
commit 19cea83bd8
1 changed files with 10 additions and 3 deletions

View File

@ -12,9 +12,16 @@ pub struct Runner {
impl Runner { impl Runner {
pub fn new(iterations: usize, threads: usize) -> Self { pub fn new(iterations: usize, threads: usize) -> Self {
Self { if threads == 0 {
iterations, match std::thread::available_parallelism() {
threads, Ok(threads) => Runner { iterations, threads: threads.get() },
Err(_) => Runner { iterations, threads: 1 },
}
} else {
Runner {
iterations,
threads,
}
} }
} }