Przeglądaj źródła

Expand bigint shl/shr benchmarking

Josh Stone 9 lat temu
rodzic
commit
1ebcc77513
1 zmienionych plików z 14 dodań i 3 usunięć
  1. 14 3
      benches/bigint.rs

+ 14 - 3
benches/bigint.rs

@@ -167,13 +167,24 @@ fn from_str_radix_36(b: &mut Bencher) {
     from_str_radix_bench(b, 36);
 }
 
+#[bench]
+fn shl(b: &mut Bencher) {
+    let n = BigUint::one() << 1000;
+    b.iter(|| {
+        let mut m = n.clone();
+        for i in 0..50 {
+            m = m << i;
+        }
+    })
+}
+
 #[bench]
 fn shr(b: &mut Bencher) {
-    let n = { let one : BigUint = One::one(); one << 1000 };
+    let n = BigUint::one() << 2000;
     b.iter(|| {
         let mut m = n.clone();
-        for _ in 0..10 {
-            m = m >> 1;
+        for i in 0..50 {
+            m = m >> i;
         }
     })
 }