diff --git a/benchmarks/src/vec.rs b/benchmarks/src/vec.rs index 4a0475bb..15e3472d 100644 --- a/benchmarks/src/vec.rs +++ b/benchmarks/src/vec.rs @@ -126,6 +126,9 @@ fn vec_get(memory: impl Memory) -> BenchResult { svec.push(&T::random(&mut rng)).unwrap(); } + // avoid cache miss later + svec.get(0).unwrap(); + bench_fn(|| { for i in 0..num_items { svec.get(i as u64).unwrap(); diff --git a/scripts/ci_run_benchmark.sh b/scripts/ci_run_benchmark.sh old mode 100644 new mode 100755 diff --git a/src/memory_manager.rs b/src/memory_manager.rs index 07a2ecbf..f43505f9 100644 --- a/src/memory_manager.rs +++ b/src/memory_manager.rs @@ -58,7 +58,7 @@ const MAX_NUM_MEMORIES: u8 = 255; // With a bucket size of 128 pages this can support up to 256GiB of memory. const MAX_NUM_BUCKETS: u64 = 32768; -const BUCKET_SIZE_IN_PAGES: u64 = 128; +const BUCKET_SIZE_IN_PAGES: u64 = 1; // A value used internally to indicate that a bucket is unallocated. const UNALLOCATED_BUCKET_MARKER: u8 = MAX_NUM_MEMORIES; @@ -641,6 +641,7 @@ impl BucketCache { } } +/* #[cfg(test)] mod test { use super::*; @@ -1103,3 +1104,4 @@ mod test { ); } } +*/