Sha256: 0389ac6c473632f0e93c962f223404cc360257f6699b4ec90b9b3be16bb6d74f
Contents?: true
Size: 1.02 KB
Versions: 37
Compression:
Stored size: 1.02 KB
Contents
#![feature(test)] extern crate test; use std::sync::Barrier; use crossbeam_epoch as epoch; use crossbeam_utils::thread::scope; use test::Bencher; #[bench] fn single_flush(b: &mut Bencher) { const THREADS: usize = 16; let start = Barrier::new(THREADS + 1); let end = Barrier::new(THREADS + 1); scope(|s| { for _ in 0..THREADS { s.spawn(|_| { epoch::pin(); start.wait(); end.wait(); }); } start.wait(); b.iter(|| epoch::pin().flush()); end.wait(); }) .unwrap(); } #[bench] fn multi_flush(b: &mut Bencher) { const THREADS: usize = 16; const STEPS: usize = 10_000; b.iter(|| { scope(|s| { for _ in 0..THREADS { s.spawn(|_| { for _ in 0..STEPS { let guard = &epoch::pin(); guard.flush(); } }); } }) .unwrap(); }); }
Version data entries
37 entries across 37 versions & 1 rubygems