From b45d887c9eab5517474dd78f5f4d414f664d89cf Mon Sep 17 00:00:00 2001 From: TheIronBorn Date: Mon, 12 Feb 2024 01:09:01 +0000 Subject: [PATCH 1/3] use clone_from in quicksort bench --- rayon-demo/src/quicksort/bench.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rayon-demo/src/quicksort/bench.rs b/rayon-demo/src/quicksort/bench.rs index 5b4fc1e7b..2f420c1ad 100644 --- a/rayon-demo/src/quicksort/bench.rs +++ b/rayon-demo/src/quicksort/bench.rs @@ -8,7 +8,7 @@ fn bench_harness(mut f: F, b: &mut test::Bencher) { let base_vec = super::default_vec(BENCH_SIZE); let mut sort_vec = vec![]; b.iter(|| { - sort_vec = base_vec.clone(); + sort_vec.clone_from(&base_vec); f(&mut sort_vec); }); assert!(super::is_sorted(&sort_vec)); From 0b8aa9826e4cac828c67ef4e1574c2b4e5971426 Mon Sep 17 00:00:00 2001 From: TheIronBorn Date: Tue, 13 Feb 2024 01:15:15 +0000 Subject: [PATCH 2/3] use clone_from in mergesort bench --- rayon-demo/src/mergesort/bench.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rayon-demo/src/mergesort/bench.rs b/rayon-demo/src/mergesort/bench.rs index ad6a23d5d..a97c786c2 100644 --- a/rayon-demo/src/mergesort/bench.rs +++ b/rayon-demo/src/mergesort/bench.rs @@ -4,9 +4,9 @@ const BENCH_SIZE: usize = 250_000_000 / 512; fn bench_harness(mut f: F, b: &mut test::Bencher) { let base_vec = super::default_vec(BENCH_SIZE); - let mut sort_vec = vec![]; + let mut sort_vec = base_vec.clone(); b.iter(|| { - sort_vec = base_vec.clone(); + sort_vec.clone_from(&base_vec); f(&mut sort_vec); }); assert!(super::is_sorted(&mut sort_vec)); From 03317c8a231470ae72c76dc5a4ffb07e1faf1660 Mon Sep 17 00:00:00 2001 From: TheIronBorn Date: Tue, 13 Feb 2024 01:16:04 +0000 Subject: [PATCH 3/3] ensure we allocate before timing starts in quicksort bench --- rayon-demo/src/quicksort/bench.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rayon-demo/src/quicksort/bench.rs b/rayon-demo/src/quicksort/bench.rs index 2f420c1ad..231c8d1bb 100644 --- a/rayon-demo/src/quicksort/bench.rs +++ b/rayon-demo/src/quicksort/bench.rs @@ -6,7 +6,7 @@ const BENCH_SIZE: usize = 250_000_000 / 512; fn bench_harness(mut f: F, b: &mut test::Bencher) { let base_vec = super::default_vec(BENCH_SIZE); - let mut sort_vec = vec![]; + let mut sort_vec = base_vec.clone(); b.iter(|| { sort_vec.clone_from(&base_vec); f(&mut sort_vec);