From da4f443625f2ebebf4d1a85d302ecad1ade3acbc Mon Sep 17 00:00:00 2001 From: Maksym Arutyunyan Date: Fri, 6 Jun 2025 11:58:23 +0200 Subject: [PATCH 01/13] read lazy size only once --- src/btreemap/node.rs | 91 ++++++++++++++++++++++++++--------------- src/btreemap/node/v1.rs | 4 +- src/btreemap/node/v2.rs | 8 ++-- 3 files changed, 63 insertions(+), 40 deletions(-) diff --git a/src/btreemap/node.rs b/src/btreemap/node.rs index 45f60604..4fe37f4f 100644 --- a/src/btreemap/node.rs +++ b/src/btreemap/node.rs @@ -184,13 +184,13 @@ impl Node { #[inline(always)] fn get_key<'a, M: Memory>(&'a self, (k, _): &'a LazyEntry, memory: &M) -> &'a K { - k.get_or_load(|offset| self.load_key_from_memory(offset, memory)) + k.get_or_load(|offset, size| self.load_key_from_memory(offset, size, memory)) } /// Returns a reference to the cached value and loads it from memory if needed. #[inline(always)] fn get_value<'a, M: Memory>(&'a self, (_, v): &'a LazyEntry, memory: &M) -> &'a [u8] { - v.get_or_load(|offset| self.load_value_from_memory(offset, memory)) + v.get_or_load(|offset, size| self.load_value_from_memory(offset, size, memory)) } /// Returns a reference to the key at the specified index. @@ -207,16 +207,16 @@ impl Node { /// Extracts the contents of key (by loading it first if it's not loaded yet). fn extract_key(&self, key: LazyKey, memory: &M) -> K { - key.take_or_load(|offset| self.load_key_from_memory(offset, memory)) + key.take_or_load(|offset, size| self.load_key_from_memory(offset, size, memory)) } /// Extracts the contents of value (by loading it first if it's not loaded yet). fn extract_value(&self, value: LazyValue, memory: &M) -> Vec { - value.take_or_load(|offset| self.load_value_from_memory(offset, memory)) + value.take_or_load(|offset, size| self.load_value_from_memory(offset, size, memory)) } /// Loads a key from stable memory at the given offset. - fn load_key_from_memory(&self, mut offset: Bytes, memory: &M) -> K { + fn load_key_from_memory(&self, mut offset: Bytes, size: u32, memory: &M) -> K { let reader = NodeReader { address: self.address, overflows: &self.overflows, @@ -224,24 +224,35 @@ impl Node { memory, }; - let size = match self.version { + // let size = match self.version { + // Version::V1(_) => { + // // V1: key size is always stored in memory. + // let size = read_u32(&reader, Address::from(offset.get())); + // offset += U32_SIZE; + // size + // } + // Version::V2(_) => { + // // V2: use fixed size if available, otherwise read from memory. + // if K::BOUND.is_fixed_size() { + // K::BOUND.max_size() + // } else { + // let size = read_u32(&reader, Address::from(offset.get())); + // offset += U32_SIZE; + // size + // } + // } + // } as usize; + let size = size as usize; + match self.version { Version::V1(_) => { - // V1: key size is always stored in memory. - let size = read_u32(&reader, Address::from(offset.get())); offset += U32_SIZE; - size } Version::V2(_) => { - // V2: use fixed size if available, otherwise read from memory. - if K::BOUND.is_fixed_size() { - K::BOUND.max_size() - } else { - let size = read_u32(&reader, Address::from(offset.get())); + if !K::BOUND.is_fixed_size() { offset += U32_SIZE; - size } } - } as usize; + }; let mut bytes = Vec::with_capacity(size); read_to_vec(&reader, Address::from(offset.get()), &mut bytes, size); @@ -250,7 +261,7 @@ impl Node { } /// Loads a value from stable memory at the given offset. - fn load_value_from_memory(&self, offset: Bytes, memory: &M) -> Vec { + fn load_value_from_memory(&self, offset: Bytes, size: u32, memory: &M) -> Vec { let reader = NodeReader { address: self.address, overflows: &self.overflows, @@ -258,7 +269,8 @@ impl Node { memory, }; - let size = read_u32(&reader, Address::from(offset.get())) as usize; + //let size = read_u32(&reader, Address::from(offset.get())) as usize; + let size = size as usize; let mut bytes = Vec::with_capacity(size); read_to_vec( &reader, @@ -523,7 +535,11 @@ impl NodeHeader { #[derive(Debug)] enum LazyObject { ByVal(T), - ByRef { offset: Bytes, loaded: OnceCell }, + ByRef { + offset: Bytes, + size: u32, + loaded: OnceCell, + }, } impl LazyObject { @@ -533,28 +549,35 @@ impl LazyObject { } #[inline(always)] - pub fn by_ref(offset: Bytes) -> Self { + pub fn by_ref(offset: Bytes, size: u32) -> Self { LazyObject::ByRef { offset, + size, loaded: OnceCell::new(), } } #[inline(always)] - pub fn get_or_load(&self, load: impl FnOnce(Bytes) -> T) -> &T { + pub fn get_or_load(&self, load: impl FnOnce(Bytes, u32) -> T) -> &T { match self { LazyObject::ByVal(value) => value, - LazyObject::ByRef { offset, loaded } => loaded.get_or_init(|| load(*offset)), + LazyObject::ByRef { + offset, + size, + loaded, + } => loaded.get_or_init(|| load(*offset, *size)), } } #[inline(always)] - pub fn take_or_load(self, load: impl FnOnce(Bytes) -> T) -> T { + pub fn take_or_load(self, load: impl FnOnce(Bytes, u32) -> T) -> T { match self { LazyObject::ByVal(value) => value, - LazyObject::ByRef { offset, loaded } => { - loaded.into_inner().unwrap_or_else(|| load(offset)) - } + LazyObject::ByRef { + offset, + size, + loaded, + } => loaded.into_inner().unwrap_or_else(|| load(offset, size)), } } } @@ -571,17 +594,17 @@ impl LazyValue { } #[inline(always)] - pub fn by_ref(offset: Bytes) -> Self { - Self(LazyObject::by_ref(offset)) + pub fn by_ref(offset: Bytes, size: u32) -> Self { + Self(LazyObject::by_ref(offset, size)) } #[inline(always)] - pub fn get_or_load(&self, load: impl FnOnce(Bytes) -> Blob) -> &Blob { + pub fn get_or_load(&self, load: impl FnOnce(Bytes, u32) -> Blob) -> &Blob { self.0.get_or_load(load) } #[inline(always)] - pub fn take_or_load(self, load: impl FnOnce(Bytes) -> Blob) -> Blob { + pub fn take_or_load(self, load: impl FnOnce(Bytes, u32) -> Blob) -> Blob { self.0.take_or_load(load) } } @@ -596,17 +619,17 @@ impl LazyKey { } #[inline(always)] - pub fn by_ref(offset: Bytes) -> Self { - Self(LazyObject::by_ref(offset)) + pub fn by_ref(offset: Bytes, size: u32) -> Self { + Self(LazyObject::by_ref(offset, size)) } #[inline(always)] - pub fn get_or_load(&self, load: impl FnOnce(Bytes) -> K) -> &K { + pub fn get_or_load(&self, load: impl FnOnce(Bytes, u32) -> K) -> &K { self.0.get_or_load(load) } #[inline(always)] - pub fn take_or_load(self, load: impl FnOnce(Bytes) -> K) -> K { + pub fn take_or_load(self, load: impl FnOnce(Bytes, u32) -> K) -> K { self.0.take_or_load(load) } } diff --git a/src/btreemap/node/v1.rs b/src/btreemap/node/v1.rs index 2f9bcd05..751bdf32 100644 --- a/src/btreemap/node/v1.rs +++ b/src/btreemap/node/v1.rs @@ -72,12 +72,12 @@ impl Node { for _ in 0..header.num_entries { let key_offset = offset; offset += U32_SIZE; - let key = LazyKey::by_ref(key_offset); + let key = LazyKey::by_ref(key_offset, max_key_size); offset += Bytes::from(max_key_size); let value_offset = offset; offset += U32_SIZE; - let value = LazyValue::by_ref(value_offset); + let value = LazyValue::by_ref(value_offset, max_value_size); offset += Bytes::from(max_value_size); entries.push((key, value)); diff --git a/src/btreemap/node/v2.rs b/src/btreemap/node/v2.rs index 6ff0099c..da24e1f5 100644 --- a/src/btreemap/node/v2.rs +++ b/src/btreemap/node/v2.rs @@ -176,18 +176,18 @@ impl Node { ); LazyKey::by_value(K::from_bytes(Cow::Borrowed(&buf))) } else { - LazyKey::by_ref(key_offset) + LazyKey::by_ref(key_offset, key_size) }; offset += Bytes::from(key_size); - entries.push((key, LazyValue::by_ref(Bytes::from(0_u64)))); + entries.push((key, LazyValue::by_ref(Bytes::from(0_u64), 0))); } // Load the values for (_key, value) in entries.iter_mut() { // Load the values lazily. - *value = LazyValue::by_ref(Bytes::from(offset.get())); - let value_size = read_u32(&reader, offset) as usize; + let value_size = read_u32(&reader, offset); + *value = LazyValue::by_ref(Bytes::from(offset.get()), value_size); offset += U32_SIZE + Bytes::from(value_size as u64); } From 14a3cb5d971cea0bd2acd445dbe378cee0ff19c4 Mon Sep 17 00:00:00 2001 From: Maksym Arutyunyan Date: Fri, 6 Jun 2025 12:01:36 +0200 Subject: [PATCH 02/13] . --- src/btreemap/node.rs | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/btreemap/node.rs b/src/btreemap/node.rs index 4fe37f4f..d952be3f 100644 --- a/src/btreemap/node.rs +++ b/src/btreemap/node.rs @@ -242,17 +242,20 @@ impl Node { // } // } // } as usize; - let size = size as usize; - match self.version { + let size = match self.version { Version::V1(_) => { offset += U32_SIZE; + size } Version::V2(_) => { - if !K::BOUND.is_fixed_size() { + if K::BOUND.is_fixed_size() { + K::BOUND.max_size() + } else { offset += U32_SIZE; + size } } - }; + } as usize; let mut bytes = Vec::with_capacity(size); read_to_vec(&reader, Address::from(offset.get()), &mut bytes, size); From 66ea8f331bf7e4d70673f616910e5fd59d89ac44 Mon Sep 17 00:00:00 2001 From: Maksym Arutyunyan Date: Fri, 6 Jun 2025 12:04:59 +0200 Subject: [PATCH 03/13] . --- src/btreemap/node.rs | 19 ------------------- 1 file changed, 19 deletions(-) diff --git a/src/btreemap/node.rs b/src/btreemap/node.rs index d952be3f..994add06 100644 --- a/src/btreemap/node.rs +++ b/src/btreemap/node.rs @@ -224,24 +224,6 @@ impl Node { memory, }; - // let size = match self.version { - // Version::V1(_) => { - // // V1: key size is always stored in memory. - // let size = read_u32(&reader, Address::from(offset.get())); - // offset += U32_SIZE; - // size - // } - // Version::V2(_) => { - // // V2: use fixed size if available, otherwise read from memory. - // if K::BOUND.is_fixed_size() { - // K::BOUND.max_size() - // } else { - // let size = read_u32(&reader, Address::from(offset.get())); - // offset += U32_SIZE; - // size - // } - // } - // } as usize; let size = match self.version { Version::V1(_) => { offset += U32_SIZE; @@ -272,7 +254,6 @@ impl Node { memory, }; - //let size = read_u32(&reader, Address::from(offset.get())) as usize; let size = size as usize; let mut bytes = Vec::with_capacity(size); read_to_vec( From 0e8169f10c95ff76830d16a28a8dfd64a9fafb37 Mon Sep 17 00:00:00 2001 From: Maksym Arutyunyan Date: Fri, 6 Jun 2025 12:08:20 +0200 Subject: [PATCH 04/13] . --- src/btreemap/node/v1.rs | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/btreemap/node/v1.rs b/src/btreemap/node/v1.rs index 751bdf32..f8f4bdbd 100644 --- a/src/btreemap/node/v1.rs +++ b/src/btreemap/node/v1.rs @@ -70,15 +70,11 @@ impl Node { let mut entries = Vec::with_capacity(header.num_entries as usize); let mut offset = NodeHeader::size(); for _ in 0..header.num_entries { - let key_offset = offset; - offset += U32_SIZE; - let key = LazyKey::by_ref(key_offset, max_key_size); - offset += Bytes::from(max_key_size); + let key = LazyKey::by_ref(offset, max_key_size); + offset += U32_SIZE + Bytes::from(max_key_size); - let value_offset = offset; - offset += U32_SIZE; - let value = LazyValue::by_ref(value_offset, max_value_size); - offset += Bytes::from(max_value_size); + let value = LazyValue::by_ref(offset, max_value_size); + offset += U32_SIZE + Bytes::from(max_value_size); entries.push((key, value)); } From 7b2b5b9a7acc1f3b931891a51bd790172bb058da Mon Sep 17 00:00:00 2001 From: Maksym Arutyunyan Date: Fri, 6 Jun 2025 12:12:49 +0200 Subject: [PATCH 05/13] . --- src/btreemap/node.rs | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/btreemap/node.rs b/src/btreemap/node.rs index 994add06..9f8dc397 100644 --- a/src/btreemap/node.rs +++ b/src/btreemap/node.rs @@ -230,12 +230,10 @@ impl Node { size } Version::V2(_) => { - if K::BOUND.is_fixed_size() { - K::BOUND.max_size() - } else { + if !K::BOUND.is_fixed_size() { offset += U32_SIZE; - size } + size } } as usize; From f78007d64877b51d82382130deacf07dc358dcd9 Mon Sep 17 00:00:00 2001 From: Maksym Arutyunyan Date: Fri, 6 Jun 2025 12:34:40 +0200 Subject: [PATCH 06/13] . --- proptest-regressions/btreemap/node/tests.txt | 8 +++++++ src/btreemap/node.rs | 25 ++++++++++++++++---- 2 files changed, 28 insertions(+), 5 deletions(-) create mode 100644 proptest-regressions/btreemap/node/tests.txt diff --git a/proptest-regressions/btreemap/node/tests.txt b/proptest-regressions/btreemap/node/tests.txt new file mode 100644 index 00000000..49c12d37 --- /dev/null +++ b/proptest-regressions/btreemap/node/tests.txt @@ -0,0 +1,8 @@ +# Seeds for failure cases proptest has generated in the past. It is +# automatically read and these particular cases re-run before any +# novel cases are generated. +# +# It is recommended to check this file in to source control so that +# everyone who runs the test benefits from these saved cases. +cc 143a30deae19afb7894c008752af9b12ac71c4c15c5b6d69bc97e0a1daa7992b # shrinks to input = _MigratingV1NodesToV2Args { node_data: NodeV1Data { max_key_size: 85, max_value_size: 597, entries: {[239, 8, 5, 239, 181, 211, 96, 11, 5, 133, 14, 92, 246, 241, 106, 202, 223, 180, 21, 217, 8, 11, 14, 171, 130, 89, 66, 135, 242, 138, 10, 15, 230, 113, 97, 87, 159, 164, 192, 19, 140, 22, 166, 216, 130, 71, 127, 31, 143, 114, 187, 13, 238]: [102, 105, 133, 166, 219, 181, 233, 107, 83, 185, 203, 127, 15, 241, 250, 168, 184, 141, 75, 224, 72, 147, 25, 10, 127, 79, 110, 156, 143, 152, 1, 10, 207, 193, 236, 191, 236, 218, 16, 24, 128, 135, 210, 182, 167, 227, 235, 14, 155, 129, 211, 152, 208, 51, 182, 46]}, node_type: Internal } } +cc ce89f992ce66488d54d12fcc4327effe8fe0b225d5562c9b6b7a00e80cca5615 # shrinks to input = _SavingAndLoadingV1PreservesDataArgs { node_data: NodeV1Data { max_key_size: 961, max_value_size: 703, entries: {[]: [195, 0, 17, 77, 102, 121, 65, 164, 230, 228, 105, 201, 11, 181, 97, 235, 236, 212, 112, 65, 155, 57, 198, 22, 225, 227, 188, 76, 81, 25, 162, 144, 71, 72, 221, 86, 15, 86, 149, 154, 125, 142, 88, 118, 220, 122, 47, 158, 7, 139, 125, 169, 84, 11, 102, 75, 157, 134, 123, 166, 228, 87, 193, 26, 247, 95, 188, 247, 152, 236, 46, 243, 241, 101, 135, 173, 249, 95, 245, 151, 86, 71, 22, 205, 247, 113]}, node_type: Leaf } } diff --git a/src/btreemap/node.rs b/src/btreemap/node.rs index 9f8dc397..08904e4f 100644 --- a/src/btreemap/node.rs +++ b/src/btreemap/node.rs @@ -216,7 +216,7 @@ impl Node { } /// Loads a key from stable memory at the given offset. - fn load_key_from_memory(&self, mut offset: Bytes, size: u32, memory: &M) -> K { + fn load_key_from_memory(&self, mut offset: Bytes, size0: u32, memory: &M) -> K { let reader = NodeReader { address: self.address, overflows: &self.overflows, @@ -226,17 +226,27 @@ impl Node { let size = match self.version { Version::V1(_) => { + // V1: key size is always stored in memory. + let size = read_u32(&reader, Address::from(offset.get())); offset += U32_SIZE; size } Version::V2(_) => { - if !K::BOUND.is_fixed_size() { + // V2: use fixed size if available, otherwise read from memory. + if K::BOUND.is_fixed_size() { + K::BOUND.max_size() + } else { + let size = read_u32(&reader, Address::from(offset.get())); offset += U32_SIZE; + size } - size } } as usize; + // if size != size0 as usize { + // panic!("Key size mismatch: expected {size}, got {size0}"); + // } + let mut bytes = Vec::with_capacity(size); read_to_vec(&reader, Address::from(offset.get()), &mut bytes, size); @@ -244,7 +254,7 @@ impl Node { } /// Loads a value from stable memory at the given offset. - fn load_value_from_memory(&self, offset: Bytes, size: u32, memory: &M) -> Vec { + fn load_value_from_memory(&self, offset: Bytes, size0: u32, memory: &M) -> Vec { let reader = NodeReader { address: self.address, overflows: &self.overflows, @@ -252,7 +262,12 @@ impl Node { memory, }; - let size = size as usize; + let size = read_u32(&reader, Address::from(offset.get())) as usize; + + // if size != size0 as usize { + // panic!("Value size mismatch: expected {size}, got {size0}"); + // } + let mut bytes = Vec::with_capacity(size); read_to_vec( &reader, From 36e79d2501f6d325b47d2766cbca6376be3bd826 Mon Sep 17 00:00:00 2001 From: Maksym Arutyunyan Date: Fri, 6 Jun 2025 12:35:25 +0200 Subject: [PATCH 07/13] . --- proptest-regressions/btreemap/node/tests.txt | 8 -------- 1 file changed, 8 deletions(-) delete mode 100644 proptest-regressions/btreemap/node/tests.txt diff --git a/proptest-regressions/btreemap/node/tests.txt b/proptest-regressions/btreemap/node/tests.txt deleted file mode 100644 index 49c12d37..00000000 --- a/proptest-regressions/btreemap/node/tests.txt +++ /dev/null @@ -1,8 +0,0 @@ -# Seeds for failure cases proptest has generated in the past. It is -# automatically read and these particular cases re-run before any -# novel cases are generated. -# -# It is recommended to check this file in to source control so that -# everyone who runs the test benefits from these saved cases. -cc 143a30deae19afb7894c008752af9b12ac71c4c15c5b6d69bc97e0a1daa7992b # shrinks to input = _MigratingV1NodesToV2Args { node_data: NodeV1Data { max_key_size: 85, max_value_size: 597, entries: {[239, 8, 5, 239, 181, 211, 96, 11, 5, 133, 14, 92, 246, 241, 106, 202, 223, 180, 21, 217, 8, 11, 14, 171, 130, 89, 66, 135, 242, 138, 10, 15, 230, 113, 97, 87, 159, 164, 192, 19, 140, 22, 166, 216, 130, 71, 127, 31, 143, 114, 187, 13, 238]: [102, 105, 133, 166, 219, 181, 233, 107, 83, 185, 203, 127, 15, 241, 250, 168, 184, 141, 75, 224, 72, 147, 25, 10, 127, 79, 110, 156, 143, 152, 1, 10, 207, 193, 236, 191, 236, 218, 16, 24, 128, 135, 210, 182, 167, 227, 235, 14, 155, 129, 211, 152, 208, 51, 182, 46]}, node_type: Internal } } -cc ce89f992ce66488d54d12fcc4327effe8fe0b225d5562c9b6b7a00e80cca5615 # shrinks to input = _SavingAndLoadingV1PreservesDataArgs { node_data: NodeV1Data { max_key_size: 961, max_value_size: 703, entries: {[]: [195, 0, 17, 77, 102, 121, 65, 164, 230, 228, 105, 201, 11, 181, 97, 235, 236, 212, 112, 65, 155, 57, 198, 22, 225, 227, 188, 76, 81, 25, 162, 144, 71, 72, 221, 86, 15, 86, 149, 154, 125, 142, 88, 118, 220, 122, 47, 158, 7, 139, 125, 169, 84, 11, 102, 75, 157, 134, 123, 166, 228, 87, 193, 26, 247, 95, 188, 247, 152, 236, 46, 243, 241, 101, 135, 173, 249, 95, 245, 151, 86, 71, 22, 205, 247, 113]}, node_type: Leaf } } From e1feedb5773b9d4a5041d095a7c9c1085065f476 Mon Sep 17 00:00:00 2001 From: Maksym Arutyunyan Date: Fri, 6 Jun 2025 12:37:05 +0200 Subject: [PATCH 08/13] . --- src/btreemap/node/v1.rs | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/btreemap/node/v1.rs b/src/btreemap/node/v1.rs index f8f4bdbd..751bdf32 100644 --- a/src/btreemap/node/v1.rs +++ b/src/btreemap/node/v1.rs @@ -70,11 +70,15 @@ impl Node { let mut entries = Vec::with_capacity(header.num_entries as usize); let mut offset = NodeHeader::size(); for _ in 0..header.num_entries { - let key = LazyKey::by_ref(offset, max_key_size); - offset += U32_SIZE + Bytes::from(max_key_size); + let key_offset = offset; + offset += U32_SIZE; + let key = LazyKey::by_ref(key_offset, max_key_size); + offset += Bytes::from(max_key_size); - let value = LazyValue::by_ref(offset, max_value_size); - offset += U32_SIZE + Bytes::from(max_value_size); + let value_offset = offset; + offset += U32_SIZE; + let value = LazyValue::by_ref(value_offset, max_value_size); + offset += Bytes::from(max_value_size); entries.push((key, value)); } From eef414639e269e3886f2dd7dacfcac1f38c1aed4 Mon Sep 17 00:00:00 2001 From: Maksym Arutyunyan Date: Fri, 6 Jun 2025 12:53:18 +0200 Subject: [PATCH 09/13] fix tests --- src/btreemap/node.rs | 33 ++++++++++++++++----------------- src/btreemap/node/v1.rs | 6 ++++-- 2 files changed, 20 insertions(+), 19 deletions(-) diff --git a/src/btreemap/node.rs b/src/btreemap/node.rs index 08904e4f..98114cb7 100644 --- a/src/btreemap/node.rs +++ b/src/btreemap/node.rs @@ -216,7 +216,12 @@ impl Node { } /// Loads a key from stable memory at the given offset. - fn load_key_from_memory(&self, mut offset: Bytes, size0: u32, memory: &M) -> K { + fn load_key_from_memory( + &self, + mut offset: Bytes, + loaded_size: u32, + memory: &M, + ) -> K { let reader = NodeReader { address: self.address, overflows: &self.overflows, @@ -227,26 +232,20 @@ impl Node { let size = match self.version { Version::V1(_) => { // V1: key size is always stored in memory. - let size = read_u32(&reader, Address::from(offset.get())); offset += U32_SIZE; - size + loaded_size } Version::V2(_) => { - // V2: use fixed size if available, otherwise read from memory. + // V2: use fixed size if available, otherwise the one loaded from memory. if K::BOUND.is_fixed_size() { K::BOUND.max_size() } else { - let size = read_u32(&reader, Address::from(offset.get())); offset += U32_SIZE; - size + loaded_size } } } as usize; - // if size != size0 as usize { - // panic!("Key size mismatch: expected {size}, got {size0}"); - // } - let mut bytes = Vec::with_capacity(size); read_to_vec(&reader, Address::from(offset.get()), &mut bytes, size); @@ -254,7 +253,12 @@ impl Node { } /// Loads a value from stable memory at the given offset. - fn load_value_from_memory(&self, offset: Bytes, size0: u32, memory: &M) -> Vec { + fn load_value_from_memory( + &self, + offset: Bytes, + loaded_size: u32, + memory: &M, + ) -> Vec { let reader = NodeReader { address: self.address, overflows: &self.overflows, @@ -262,12 +266,7 @@ impl Node { memory, }; - let size = read_u32(&reader, Address::from(offset.get())) as usize; - - // if size != size0 as usize { - // panic!("Value size mismatch: expected {size}, got {size0}"); - // } - + let size = loaded_size as usize; let mut bytes = Vec::with_capacity(size); read_to_vec( &reader, diff --git a/src/btreemap/node/v1.rs b/src/btreemap/node/v1.rs index 751bdf32..39f02f31 100644 --- a/src/btreemap/node/v1.rs +++ b/src/btreemap/node/v1.rs @@ -71,13 +71,15 @@ impl Node { let mut offset = NodeHeader::size(); for _ in 0..header.num_entries { let key_offset = offset; + let size = read_u32(memory, address + key_offset); offset += U32_SIZE; - let key = LazyKey::by_ref(key_offset, max_key_size); + let key = LazyKey::by_ref(key_offset, size); offset += Bytes::from(max_key_size); let value_offset = offset; + let size = read_u32(memory, address + value_offset); offset += U32_SIZE; - let value = LazyValue::by_ref(value_offset, max_value_size); + let value = LazyValue::by_ref(value_offset, size); offset += Bytes::from(max_value_size); entries.push((key, value)); From 53ef2c60dd4d4ad43fbe8b59b554aabc3b7122dc Mon Sep 17 00:00:00 2001 From: Maksym Arutyunyan Date: Fri, 6 Jun 2025 12:54:11 +0200 Subject: [PATCH 10/13] . --- src/btreemap/node/v1.rs | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/src/btreemap/node/v1.rs b/src/btreemap/node/v1.rs index 39f02f31..698ffd67 100644 --- a/src/btreemap/node/v1.rs +++ b/src/btreemap/node/v1.rs @@ -70,17 +70,13 @@ impl Node { let mut entries = Vec::with_capacity(header.num_entries as usize); let mut offset = NodeHeader::size(); for _ in 0..header.num_entries { - let key_offset = offset; - let size = read_u32(memory, address + key_offset); - offset += U32_SIZE; - let key = LazyKey::by_ref(key_offset, size); - offset += Bytes::from(max_key_size); + let size = read_u32(memory, address + offset); + let key = LazyKey::by_ref(offset, size); + offset += U32_SIZE + Bytes::from(max_key_size); - let value_offset = offset; - let size = read_u32(memory, address + value_offset); - offset += U32_SIZE; - let value = LazyValue::by_ref(value_offset, size); - offset += Bytes::from(max_value_size); + let size = read_u32(memory, address + offset); + let value = LazyValue::by_ref(offset, size); + offset += U32_SIZE + Bytes::from(max_value_size); entries.push((key, value)); } From 43336c238d0e8f1dde931b5708db98e8e899f614 Mon Sep 17 00:00:00 2001 From: Maksym Arutyunyan Date: Fri, 6 Jun 2025 12:59:04 +0200 Subject: [PATCH 11/13] --persist --- benchmarks/btreemap/canbench_results.yml | 1140 +++++++++++----------- benchmarks/compare/canbench_results.yml | 12 +- 2 files changed, 576 insertions(+), 576 deletions(-) diff --git a/benchmarks/btreemap/canbench_results.yml b/benchmarks/btreemap/canbench_results.yml index 4605f79f..0a5f24fa 100644 --- a/benchmarks/btreemap/canbench_results.yml +++ b/benchmarks/btreemap/canbench_results.yml @@ -1,2281 +1,2281 @@ benches: btreemap_v2_contains_10mib_values: total: - start_instructions: 14479293363 + start_instructions: 14485967088 calls: 1 - instructions: 142209886 + instructions: 142211176 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_blob8_u64: total: - start_instructions: 459630211 + start_instructions: 453873913 calls: 1 - instructions: 283243189 + instructions: 284729279 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_blob_1024_128: total: - start_instructions: 6131895381 + start_instructions: 6106585973 calls: 1 - instructions: 4294894395 + instructions: 4287195965 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_blob_128_128: total: - start_instructions: 1362339662 + start_instructions: 1343142775 calls: 1 - instructions: 840909879 + instructions: 833911663 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_blob_16_128: total: - start_instructions: 587875096 + start_instructions: 582936916 calls: 1 - instructions: 300105739 + instructions: 301679315 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_blob_256_128: total: - start_instructions: 2036711438 + start_instructions: 2016223113 calls: 1 - instructions: 1326771404 + instructions: 1319638530 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_blob_32_1024: total: - start_instructions: 1238245580 + start_instructions: 1225152952 calls: 1 - instructions: 337445353 + instructions: 335467582 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_blob_32_128: total: - start_instructions: 659339379 + start_instructions: 647671599 calls: 1 - instructions: 337242960 + instructions: 335857878 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_blob_32_16: total: - start_instructions: 572198169 + start_instructions: 559722634 calls: 1 - instructions: 329500232 + instructions: 328808636 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_blob_32_256: total: - start_instructions: 749396807 + start_instructions: 736916035 calls: 1 - instructions: 335682012 + instructions: 334434280 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_blob_32_32: total: - start_instructions: 594146104 + start_instructions: 580919298 calls: 1 - instructions: 342487370 + instructions: 339847405 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_blob_32_4: total: - start_instructions: 556169406 + start_instructions: 543466976 calls: 1 - instructions: 333741843 + instructions: 332340491 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_blob_32_512: total: - start_instructions: 910873891 + start_instructions: 898832441 calls: 1 - instructions: 333192032 + instructions: 331695208 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_blob_32_64: total: - start_instructions: 618881021 + start_instructions: 605611965 calls: 1 - instructions: 337617776 + instructions: 334858997 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_blob_32_8: total: - start_instructions: 566704183 + start_instructions: 553652829 calls: 1 - instructions: 335387698 + instructions: 334584161 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_blob_4_128: total: - start_instructions: 500930654 + start_instructions: 496586041 calls: 1 - instructions: 250355533 + instructions: 253347393 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_blob_512_128: total: - start_instructions: 3423432805 + start_instructions: 3400962940 calls: 1 - instructions: 2298434694 + instructions: 2290838032 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_blob_64_128: total: - start_instructions: 804812720 + start_instructions: 787924438 calls: 1 - instructions: 419606577 + instructions: 414363931 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_blob_8_128: total: - start_instructions: 555383524 + start_instructions: 549947436 calls: 1 - instructions: 273336150 + instructions: 275816925 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_u64_blob8: total: - start_instructions: 433090833 + start_instructions: 427844055 calls: 1 - instructions: 225499214 + instructions: 227932675 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_u64_u64: total: - start_instructions: 434693266 + start_instructions: 429391869 calls: 1 - instructions: 230729854 + instructions: 233050996 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_u64_vec8: total: - start_instructions: 442791595 + start_instructions: 437943978 calls: 1 - instructions: 225499214 + instructions: 227932675 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_vec8_u64: total: - start_instructions: 606342608 + start_instructions: 609571867 calls: 1 - instructions: 373974697 + instructions: 380704257 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_vec_1024_128: total: - start_instructions: 3192363458 + start_instructions: 3139139615 calls: 1 - instructions: 1847543846 + instructions: 1824658601 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_vec_128_128: total: - start_instructions: 1152132995 + start_instructions: 1122931818 calls: 1 - instructions: 562946700 + instructions: 574277486 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_vec_16_128: total: - start_instructions: 788123774 + start_instructions: 789675873 calls: 1 - instructions: 432781522 + instructions: 448376104 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_vec_256_128: total: - start_instructions: 1570435457 + start_instructions: 1532479798 calls: 1 - instructions: 916951508 + instructions: 902317937 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_vec_32_1024: total: - start_instructions: 1628350867 + start_instructions: 1602777496 calls: 1 - instructions: 516345711 + instructions: 514204305 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_vec_32_128: total: - start_instructions: 857561793 + start_instructions: 841581401 calls: 1 - instructions: 437597042 + instructions: 428712870 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_vec_32_16: total: - start_instructions: 722884550 + start_instructions: 711050685 calls: 1 - instructions: 367092399 + instructions: 375067409 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_vec_32_256: total: - start_instructions: 1007673020 + start_instructions: 987481510 calls: 1 - instructions: 445726848 + instructions: 441718231 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_vec_32_32: total: - start_instructions: 725399616 + start_instructions: 713894096 calls: 1 - instructions: 367166166 + instructions: 363350872 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_vec_32_4: total: - start_instructions: 711759047 + start_instructions: 700624986 calls: 1 - instructions: 366267461 + instructions: 368447209 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_vec_32_512: total: - start_instructions: 1225599518 + start_instructions: 1199394096 calls: 1 - instructions: 480959850 + instructions: 460605848 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_vec_32_64: total: - start_instructions: 769411650 + start_instructions: 757545427 calls: 1 - instructions: 407119040 + instructions: 407446583 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_vec_32_8: total: - start_instructions: 711554910 + start_instructions: 700422898 calls: 1 - instructions: 366285316 + instructions: 360599988 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_vec_4_128: total: - start_instructions: 683578434 + start_instructions: 683425633 calls: 1 - instructions: 398219526 + instructions: 412997574 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_vec_512_128: total: - start_instructions: 2134044956 + start_instructions: 2081367474 calls: 1 - instructions: 1276595174 + instructions: 1252406684 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_vec_64_128: total: - start_instructions: 961598179 + start_instructions: 942322408 calls: 1 - instructions: 512370493 + instructions: 506200298 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_contains_vec_8_128: total: - start_instructions: 746474463 + start_instructions: 746800143 calls: 1 - instructions: 398244282 + instructions: 402314967 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_10mib_values: total: - start_instructions: 14479293363 + start_instructions: 14485967088 calls: 1 - instructions: 388595745 + instructions: 388591799 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_blob8_u64: total: - start_instructions: 459630211 + start_instructions: 453873913 calls: 1 - instructions: 294497967 + instructions: 305721005 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_blob_1024_128: total: - start_instructions: 6131895381 + start_instructions: 6106585973 calls: 1 - instructions: 4434041256 + instructions: 4425292182 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_blob_128_128: total: - start_instructions: 1362339662 + start_instructions: 1343142775 calls: 1 - instructions: 874096447 + instructions: 866438618 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_blob_16_128: total: - start_instructions: 587875096 + start_instructions: 582936916 calls: 1 - instructions: 313526182 + instructions: 314408612 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_blob_256_128: total: - start_instructions: 2036711438 + start_instructions: 2016223113 calls: 1 - instructions: 1373148633 + instructions: 1364965205 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_blob_32_1024: total: - start_instructions: 1238245580 + start_instructions: 1225152952 calls: 1 - instructions: 357155884 + instructions: 354108431 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_blob_32_128: total: - start_instructions: 659339379 + start_instructions: 647671599 calls: 1 - instructions: 351535575 + instructions: 349135022 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_blob_32_16: total: - start_instructions: 572198169 + start_instructions: 559722634 calls: 1 - instructions: 340461041 + instructions: 338382934 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_blob_32_256: total: - start_instructions: 749396807 + start_instructions: 736916035 calls: 1 - instructions: 351061580 + instructions: 348736211 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_blob_32_32: total: - start_instructions: 594146104 + start_instructions: 580919298 calls: 1 - instructions: 353942162 + instructions: 350096821 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_blob_32_4: total: - start_instructions: 556169406 + start_instructions: 543466976 calls: 1 - instructions: 343418315 + instructions: 340412929 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_blob_32_512: total: - start_instructions: 910873891 + start_instructions: 898832441 calls: 1 - instructions: 350194700 + instructions: 347642367 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_blob_32_64: total: - start_instructions: 618881021 + start_instructions: 605611965 calls: 1 - instructions: 350423639 + instructions: 346801711 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_blob_32_8: total: - start_instructions: 566704183 + start_instructions: 553652829 calls: 1 - instructions: 345686337 + instructions: 343068561 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_blob_4_128: total: - start_instructions: 500930654 + start_instructions: 496586041 calls: 1 - instructions: 262413923 + instructions: 264255339 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_blob_512_128: total: - start_instructions: 3423432805 + start_instructions: 3400962940 calls: 1 - instructions: 2375697190 + instructions: 2367049397 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_blob_64_128: total: - start_instructions: 804812720 + start_instructions: 787924438 calls: 1 - instructions: 443018389 + instructions: 436964615 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_blob_8_128: total: - start_instructions: 555383524 + start_instructions: 549947436 calls: 1 - instructions: 286466153 + instructions: 287796664 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_u64_blob8: total: - start_instructions: 433090833 + start_instructions: 427844055 calls: 1 - instructions: 235941210 + instructions: 237235810 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_u64_u64: total: - start_instructions: 434693266 + start_instructions: 429391869 calls: 1 - instructions: 242257570 + instructions: 243863622 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_u64_vec8: total: - start_instructions: 442791595 + start_instructions: 437943978 calls: 1 - instructions: 236688734 + instructions: 237991855 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_vec8_u64: total: - start_instructions: 606342608 + start_instructions: 609571867 calls: 1 - instructions: 383633049 + instructions: 388751749 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_vec_1024_128: total: - start_instructions: 3192363458 + start_instructions: 3139139615 calls: 1 - instructions: 1895892024 + instructions: 1841512517 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_vec_128_128: total: - start_instructions: 1152132995 + start_instructions: 1122931818 calls: 1 - instructions: 575182494 + instructions: 583901097 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_vec_16_128: total: - start_instructions: 788123774 + start_instructions: 789675873 calls: 1 - instructions: 442328783 + instructions: 456729380 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_vec_256_128: total: - start_instructions: 1570435457 + start_instructions: 1532479798 calls: 1 - instructions: 929706182 + instructions: 912188250 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_vec_32_1024: total: - start_instructions: 1628350867 + start_instructions: 1602777496 calls: 1 - instructions: 558668781 + instructions: 552829333 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_vec_32_128: total: - start_instructions: 857561793 + start_instructions: 841581401 calls: 1 - instructions: 447698382 + instructions: 437331843 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_vec_32_16: total: - start_instructions: 722884550 + start_instructions: 711050685 calls: 1 - instructions: 374638995 + instructions: 381657978 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_vec_32_256: total: - start_instructions: 1007673020 + start_instructions: 987481510 calls: 1 - instructions: 463244752 + instructions: 457027785 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_vec_32_32: total: - start_instructions: 725399616 + start_instructions: 713894096 calls: 1 - instructions: 374845458 + instructions: 370072286 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_vec_32_4: total: - start_instructions: 711759047 + start_instructions: 700624986 calls: 1 - instructions: 374022132 + instructions: 374915815 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_vec_32_512: total: - start_instructions: 1225599518 + start_instructions: 1199394096 calls: 1 - instructions: 502894643 + instructions: 480046390 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_vec_32_64: total: - start_instructions: 769411650 + start_instructions: 757545427 calls: 1 - instructions: 415510256 + instructions: 414392804 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_vec_32_8: total: - start_instructions: 711554910 + start_instructions: 700422898 calls: 1 - instructions: 374044544 + instructions: 367113868 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_vec_4_128: total: - start_instructions: 683578434 + start_instructions: 683425633 calls: 1 - instructions: 407171454 + instructions: 421113113 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_vec_512_128: total: - start_instructions: 2134044956 + start_instructions: 2081367474 calls: 1 - instructions: 1289217058 + instructions: 1262553245 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_vec_64_128: total: - start_instructions: 961598179 + start_instructions: 942322408 calls: 1 - instructions: 523089686 + instructions: 514950924 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_get_vec_8_128: total: - start_instructions: 746474463 + start_instructions: 746800143 calls: 1 - instructions: 407684839 + instructions: 410396744 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_insert_10mib_values: total: - start_instructions: 9227500944 + start_instructions: 9227501071 calls: 1 - instructions: 5251792571 + instructions: 5258466149 heap_increase: 322 stable_memory_increase: 3613 scopes: {} btreemap_v2_insert_blob8_u64: total: - start_instructions: 7169136 + start_instructions: 7169153 calls: 1 - instructions: 451301662 + instructions: 445545231 heap_increase: 0 stable_memory_increase: 4 scopes: {} btreemap_v2_insert_blob_1024_128: total: - start_instructions: 517497045 + start_instructions: 517497062 calls: 1 - instructions: 5525867839 + instructions: 5500538282 heap_increase: 0 stable_memory_increase: 196 scopes: {} btreemap_v2_insert_blob_128_128: total: - start_instructions: 136717328 + start_instructions: 136717345 calls: 1 - instructions: 1208772051 + instructions: 1189575035 heap_increase: 0 stable_memory_increase: 46 scopes: {} btreemap_v2_insert_blob_16_128: total: - start_instructions: 80779238 + start_instructions: 80779255 calls: 1 - instructions: 500630568 + instructions: 495692271 heap_increase: 0 stable_memory_increase: 24 scopes: {} btreemap_v2_insert_blob_256_128: total: - start_instructions: 192187819 + start_instructions: 192187836 calls: 1 - instructions: 1817433122 + instructions: 1796924648 heap_increase: 0 stable_memory_increase: 67 scopes: {} btreemap_v2_insert_blob_32_1024: total: - start_instructions: 470117592 + start_instructions: 470117609 calls: 1 - instructions: 724942513 + instructions: 711849768 heap_increase: 0 stable_memory_increase: 173 scopes: {} btreemap_v2_insert_blob_32_128: total: - start_instructions: 88387550 + start_instructions: 88387567 calls: 1 - instructions: 563606354 + instructions: 551938457 heap_increase: 0 stable_memory_increase: 28 scopes: {} btreemap_v2_insert_blob_32_16: total: - start_instructions: 30061361 + start_instructions: 30061378 calls: 1 - instructions: 539351331 + instructions: 526875649 heap_increase: 0 stable_memory_increase: 11 scopes: {} btreemap_v2_insert_blob_32_256: total: - start_instructions: 143910761 + start_instructions: 143910778 calls: 1 - instructions: 593020647 + instructions: 580539758 heap_increase: 0 stable_memory_increase: 49 scopes: {} btreemap_v2_insert_blob_32_32: total: - start_instructions: 40587614 + start_instructions: 40587631 calls: 1 - instructions: 550133225 + instructions: 536926292 heap_increase: 0 stable_memory_increase: 13 scopes: {} btreemap_v2_insert_blob_32_4: total: - start_instructions: 23796426 + start_instructions: 23796443 calls: 1 - instructions: 529987583 + instructions: 517265000 heap_increase: 0 stable_memory_increase: 8 scopes: {} btreemap_v2_insert_blob_32_512: total: - start_instructions: 256737407 + start_instructions: 256737424 calls: 1 - instructions: 631431009 + instructions: 619389442 heap_increase: 0 stable_memory_increase: 91 scopes: {} btreemap_v2_insert_blob_32_64: total: - start_instructions: 57727518 + start_instructions: 57727535 calls: 1 - instructions: 556368028 + instructions: 543098855 heap_increase: 0 stable_memory_increase: 18 scopes: {} btreemap_v2_insert_blob_32_8: total: - start_instructions: 25614610 + start_instructions: 25614627 calls: 1 - instructions: 538624096 + instructions: 525592615 heap_increase: 0 stable_memory_increase: 9 scopes: {} btreemap_v2_insert_blob_4_128: total: - start_instructions: 74069325 + start_instructions: 74069342 calls: 1 - instructions: 421116046 + instructions: 416771302 heap_increase: 0 stable_memory_increase: 13 scopes: {} btreemap_v2_insert_blob_512_128: total: - start_instructions: 305481815 + start_instructions: 305481832 calls: 1 - instructions: 3070380493 + instructions: 3047890479 heap_increase: 0 stable_memory_increase: 111 scopes: {} btreemap_v2_insert_blob_64_128: total: - start_instructions: 105964306 + start_instructions: 105964323 calls: 1 - instructions: 687117865 + instructions: 670229454 heap_increase: 0 stable_memory_increase: 34 scopes: {} btreemap_v2_insert_blob_8_128: total: - start_instructions: 75793633 + start_instructions: 75793650 calls: 1 - instructions: 473584626 + instructions: 468148407 heap_increase: 0 stable_memory_increase: 20 scopes: {} btreemap_v2_insert_u64_blob8: total: - start_instructions: 7129069 + start_instructions: 7129086 calls: 1 - instructions: 424856499 + instructions: 419629594 heap_increase: 0 stable_memory_increase: 5 scopes: {} btreemap_v2_insert_u64_u64: total: - start_instructions: 829613 + start_instructions: 829630 calls: 1 - instructions: 433078331 + instructions: 427776801 heap_increase: 0 stable_memory_increase: 6 scopes: {} btreemap_v2_insert_u64_vec8: total: - start_instructions: 9522886 + start_instructions: 9522903 calls: 1 - instructions: 433606283 + instructions: 426996021 heap_increase: 0 stable_memory_increase: 21 scopes: {} btreemap_v2_insert_vec8_u64: total: - start_instructions: 9562943 + start_instructions: 9562960 calls: 1 - instructions: 596587028 + instructions: 600791438 heap_increase: 0 stable_memory_increase: 16 scopes: {} btreemap_v2_insert_vec_1024_128: total: - start_instructions: 379511514 + start_instructions: 379511531 calls: 1 - instructions: 2791397144 + instructions: 2736605218 heap_increase: 0 stable_memory_increase: 193 scopes: {} btreemap_v2_insert_vec_128_128: total: - start_instructions: 95272673 + start_instructions: 95272690 calls: 1 - instructions: 1043221381 + instructions: 1014513313 heap_increase: 0 stable_memory_increase: 51 scopes: {} btreemap_v2_insert_vec_16_128: total: - start_instructions: 60116338 + start_instructions: 60116355 calls: 1 - instructions: 719642459 + instructions: 723411193 heap_increase: 0 stable_memory_increase: 31 scopes: {} btreemap_v2_insert_vec_256_128: total: - start_instructions: 136230866 + start_instructions: 136230883 calls: 1 - instructions: 1425377808 + instructions: 1398080888 heap_increase: 0 stable_memory_increase: 71 scopes: {} btreemap_v2_insert_vec_32_1024: total: - start_instructions: 350270983 + start_instructions: 350271000 calls: 1 - instructions: 1245277354 + instructions: 1222003721 heap_increase: 0 stable_memory_increase: 171 scopes: {} btreemap_v2_insert_vec_32_128: total: - start_instructions: 65011644 + start_instructions: 65011661 calls: 1 - instructions: 783718795 + instructions: 768255876 heap_increase: 0 stable_memory_increase: 33 scopes: {} btreemap_v2_insert_vec_32_16: total: - start_instructions: 29511099 + start_instructions: 29511116 calls: 1 - instructions: 688803553 + instructions: 677660006 heap_increase: 0 stable_memory_increase: 20 scopes: {} btreemap_v2_insert_vec_32_256: total: - start_instructions: 105678341 + start_instructions: 105678358 calls: 1 - instructions: 908178268 + instructions: 884422721 heap_increase: 0 stable_memory_increase: 54 scopes: {} btreemap_v2_insert_vec_32_32: total: - start_instructions: 34810511 + start_instructions: 34810528 calls: 1 - instructions: 684535944 + instructions: 673498279 heap_increase: 0 stable_memory_increase: 20 scopes: {} btreemap_v2_insert_vec_32_4: total: - start_instructions: 24405775 + start_instructions: 24405792 calls: 1 - instructions: 683481507 + instructions: 673498951 heap_increase: 0 stable_memory_increase: 20 scopes: {} btreemap_v2_insert_vec_32_512: total: - start_instructions: 187810073 + start_instructions: 187810090 calls: 1 - instructions: 1026516421 + instructions: 998460442 heap_increase: 0 stable_memory_increase: 91 scopes: {} btreemap_v2_insert_vec_32_64: total: - start_instructions: 45127718 + start_instructions: 45127735 calls: 1 - instructions: 717228200 + instructions: 706175746 heap_increase: 0 stable_memory_increase: 24 scopes: {} btreemap_v2_insert_vec_32_8: total: - start_instructions: 26556733 + start_instructions: 26556750 calls: 1 - instructions: 682794357 + instructions: 672527457 heap_increase: 0 stable_memory_increase: 20 scopes: {} btreemap_v2_insert_vec_4_128: total: - start_instructions: 55036634 + start_instructions: 55036651 calls: 1 - instructions: 620372828 + instructions: 619760403 heap_increase: 0 stable_memory_increase: 16 scopes: {} btreemap_v2_insert_vec_512_128: total: - start_instructions: 218009758 + start_instructions: 218009775 calls: 1 - instructions: 1903055435 + instructions: 1852718375 heap_increase: 0 stable_memory_increase: 112 scopes: {} btreemap_v2_insert_vec_64_128: total: - start_instructions: 75683463 + start_instructions: 75683480 calls: 1 - instructions: 874551603 + instructions: 855970283 heap_increase: 0 stable_memory_increase: 41 scopes: {} btreemap_v2_insert_vec_8_128: total: - start_instructions: 56821869 + start_instructions: 56821886 calls: 1 - instructions: 680032261 + instructions: 680099401 heap_increase: 0 stable_memory_increase: 23 scopes: {} btreemap_v2_mem_manager_contains_blob512_u64: total: - start_instructions: 3469743467 + start_instructions: 3425972505 calls: 1 - instructions: 2393561734 + instructions: 2376508249 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_mem_manager_contains_u64_blob512: total: - start_instructions: 906214177 + start_instructions: 893434231 calls: 1 - instructions: 301490933 + instructions: 304790874 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_mem_manager_contains_u64_u64: total: - start_instructions: 562145728 + start_instructions: 549286638 calls: 1 - instructions: 306627819 + instructions: 309491912 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_mem_manager_contains_u64_vec512: total: - start_instructions: 1133468498 + start_instructions: 1103884834 calls: 1 - instructions: 389757741 + instructions: 393000500 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_mem_manager_contains_vec512_u64: total: - start_instructions: 2269022769 + start_instructions: 2193954962 calls: 1 - instructions: 1263289439 + instructions: 1228107788 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_mem_manager_get_blob512_u64: total: - start_instructions: 3469743467 + start_instructions: 3425972505 calls: 1 - instructions: 2480010680 + instructions: 2461116385 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_mem_manager_get_u64_blob512: total: - start_instructions: 906214177 + start_instructions: 893434231 calls: 1 - instructions: 318984425 + instructions: 320423970 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_mem_manager_get_u64_u64: total: - start_instructions: 562145728 + start_instructions: 549286638 calls: 1 - instructions: 319753696 + instructions: 320421256 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_mem_manager_get_u64_vec512: total: - start_instructions: 1133468498 + start_instructions: 1103884834 calls: 1 - instructions: 416829260 + instructions: 416742623 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_mem_manager_get_vec512_u64: total: - start_instructions: 2269022769 + start_instructions: 2193954962 calls: 1 - instructions: 1307093932 + instructions: 1268826318 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_mem_manager_insert_blob512_u64: total: - start_instructions: 237916525 + start_instructions: 237916537 calls: 1 - instructions: 3189112354 + instructions: 3145341380 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_mem_manager_insert_u64_blob512: total: - start_instructions: 237807828 + start_instructions: 237807840 calls: 1 - instructions: 647090919 + instructions: 634310961 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_mem_manager_insert_u64_u64: total: - start_instructions: 924281 + start_instructions: 924293 calls: 1 - instructions: 560416021 + instructions: 547556919 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_mem_manager_insert_u64_vec512: total: - start_instructions: 172593854 + start_instructions: 172593866 calls: 1 - instructions: 900560616 + instructions: 875570980 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_mem_manager_insert_vec512_u64: total: - start_instructions: 172504187 + start_instructions: 172504199 calls: 1 - instructions: 2032279621 + instructions: 1961516482 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_mem_manager_remove_blob512_u64: total: - start_instructions: 3469743467 + start_instructions: 3425972505 calls: 1 - instructions: 4412188238 + instructions: 4345562795 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_mem_manager_remove_u64_blob512: total: - start_instructions: 906214177 + start_instructions: 893434231 calls: 1 - instructions: 950509468 + instructions: 927125026 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_mem_manager_remove_u64_u64: total: - start_instructions: 562145728 + start_instructions: 549286638 calls: 1 - instructions: 808272560 + instructions: 783432094 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_mem_manager_remove_u64_vec512: total: - start_instructions: 1133468498 + start_instructions: 1103884834 calls: 1 - instructions: 1289646678 + instructions: 1245826755 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_mem_manager_remove_vec512_u64: total: - start_instructions: 2269022769 + start_instructions: 2193954962 calls: 1 - instructions: 3183910606 + instructions: 3075940124 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_blob8_u64: total: - start_instructions: 458470554 + start_instructions: 452714120 calls: 1 - instructions: 622200618 + instructions: 617552323 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_blob_1024_128: total: - start_instructions: 6043414642 + start_instructions: 6018085082 calls: 1 - instructions: 8431485313 + instructions: 8407393950 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_blob_128_128: total: - start_instructions: 1345539135 + start_instructions: 1326342116 calls: 1 - instructions: 1868788900 + instructions: 1847105512 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_blob_16_128: total: - start_instructions: 581469562 + start_instructions: 576531262 calls: 1 - instructions: 765976336 + instructions: 759917153 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_blob_256_128: total: - start_instructions: 2009670699 + start_instructions: 1989162222 calls: 1 - instructions: 2807125764 + instructions: 2784099869 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_blob_32_1024: total: - start_instructions: 1195159861 + start_instructions: 1182067113 calls: 1 - instructions: 1151786007 + instructions: 1137118059 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_blob_32_128: total: - start_instructions: 652093660 + start_instructions: 640425760 calls: 1 - instructions: 895271317 + instructions: 881420618 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_blob_32_16: total: - start_instructions: 569412448 + start_instructions: 556936763 calls: 1 - instructions: 830179008 + instructions: 816200950 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_blob_32_256: total: - start_instructions: 737031164 + start_instructions: 724550272 calls: 1 - instructions: 924008116 + instructions: 909758918 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_blob_32_32: total: - start_instructions: 590720595 + start_instructions: 577513659 calls: 1 - instructions: 844939944 + instructions: 830061314 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_blob_32_4: total: - start_instructions: 553883767 + start_instructions: 541161181 calls: 1 - instructions: 813445765 + instructions: 799101496 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_blob_32_512: total: - start_instructions: 888268172 + start_instructions: 876226602 calls: 1 - instructions: 988660811 + instructions: 974145443 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_blob_32_64: total: - start_instructions: 614195302 + start_instructions: 600926126 calls: 1 - instructions: 853670235 + instructions: 839453950 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_blob_32_8: total: - start_instructions: 564238462 + start_instructions: 551206978 calls: 1 - instructions: 831827211 + instructions: 817715657 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_blob_4_128: total: - start_instructions: 495185127 + start_instructions: 490840380 calls: 1 - instructions: 382997171 + instructions: 381495140 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_blob_512_128: total: - start_instructions: 3375912066 + start_instructions: 3353422049 calls: 1 - instructions: 4656589104 + instructions: 4633015950 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_blob_64_128: total: - start_instructions: 793131927 + start_instructions: 776243513 calls: 1 - instructions: 1070297885 + instructions: 1051383957 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_blob_8_128: total: - start_instructions: 549378015 + start_instructions: 543941793 calls: 1 - instructions: 626229711 + instructions: 621633420 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_u64_blob8: total: - start_instructions: 431985324 + start_instructions: 426758416 calls: 1 - instructions: 704655935 + instructions: 699801824 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_u64_u64: total: - start_instructions: 433927702 + start_instructions: 428626169 calls: 1 - instructions: 716277150 + instructions: 711281843 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_u64_vec8: total: - start_instructions: 443148927 + start_instructions: 436538662 calls: 1 - instructions: 707209321 + instructions: 702348004 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_vec8_u64: total: - start_instructions: 606169729 + start_instructions: 610374136 calls: 1 - instructions: 798415681 + instructions: 799659346 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_vec_1024_128: total: - start_instructions: 3170928416 + start_instructions: 3116136487 calls: 1 - instructions: 4088132409 + instructions: 4021467872 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_vec_128_128: total: - start_instructions: 1138513812 + start_instructions: 1109805741 calls: 1 - instructions: 1540235596 + instructions: 1503839970 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_vec_16_128: total: - start_instructions: 779778555 + start_instructions: 783547286 calls: 1 - instructions: 1038779445 + instructions: 1041501412 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_vec_256_128: total: - start_instructions: 1561628432 + start_instructions: 1534331509 calls: 1 - instructions: 2058259565 + instructions: 2004716789 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_vec_32_1024: total: - start_instructions: 1595568095 + start_instructions: 1572294459 calls: 1 - instructions: 1720412117 + instructions: 1686400511 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_vec_32_128: total: - start_instructions: 848750197 + start_instructions: 833287275 calls: 1 - instructions: 1121742441 + instructions: 1103728682 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_vec_32_16: total: - start_instructions: 718334410 + start_instructions: 707190860 calls: 1 - instructions: 965011202 + instructions: 952540614 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_vec_32_256: total: - start_instructions: 1013876367 + start_instructions: 990120817 calls: 1 - instructions: 1248136182 + instructions: 1223270589 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_vec_32_32: total: - start_instructions: 719366213 + start_instructions: 708328545 calls: 1 - instructions: 961152873 + instructions: 948692304 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_vec_32_4: total: - start_instructions: 707907040 + start_instructions: 697924481 calls: 1 - instructions: 954455313 + instructions: 940976424 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_vec_32_512: total: - start_instructions: 1214346252 + start_instructions: 1186290270 calls: 1 - instructions: 1404132609 + instructions: 1373219640 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_vec_32_64: total: - start_instructions: 762375676 + start_instructions: 751323219 calls: 1 - instructions: 1005109169 + instructions: 989996561 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_vec_32_8: total: - start_instructions: 709370848 + start_instructions: 699103945 calls: 1 - instructions: 965763857 + instructions: 951913482 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_vec_4_128: total: - start_instructions: 675429220 + start_instructions: 674816792 calls: 1 - instructions: 546598476 + instructions: 548663812 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_vec_512_128: total: - start_instructions: 2121084951 + start_instructions: 2070747888 calls: 1 - instructions: 2756486262 + instructions: 2693639900 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_vec_64_128: total: - start_instructions: 950254824 + start_instructions: 931673501 calls: 1 - instructions: 1266073867 + instructions: 1242491831 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_first_vec_8_128: total: - start_instructions: 736873888 + start_instructions: 736941025 calls: 1 - instructions: 859841371 + instructions: 862886022 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_blob8_u64: total: - start_instructions: 458470554 + start_instructions: 452714120 calls: 1 - instructions: 602347046 + instructions: 595853650 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_blob_1024_128: total: - start_instructions: 6043414642 + start_instructions: 6018085082 calls: 1 - instructions: 8114668996 + instructions: 8074544989 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_blob_128_128: total: - start_instructions: 1345539135 + start_instructions: 1326342116 calls: 1 - instructions: 1802553215 + instructions: 1777146016 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_blob_16_128: total: - start_instructions: 581469562 + start_instructions: 576531262 calls: 1 - instructions: 742006774 + instructions: 733631612 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_blob_256_128: total: - start_instructions: 2009670699 + start_instructions: 1989162222 calls: 1 - instructions: 2718413557 + instructions: 2689902063 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_blob_32_1024: total: - start_instructions: 1195159861 + start_instructions: 1182067113 calls: 1 - instructions: 1117676362 + instructions: 1101403637 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_blob_32_128: total: - start_instructions: 652093660 + start_instructions: 640425760 calls: 1 - instructions: 862736785 + instructions: 846620593 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_blob_32_16: total: - start_instructions: 569412448 + start_instructions: 556936763 calls: 1 - instructions: 805611952 + instructions: 789994077 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_blob_32_256: total: - start_instructions: 737031164 + start_instructions: 724550272 calls: 1 - instructions: 895496996 + instructions: 878909767 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_blob_32_32: total: - start_instructions: 590720595 + start_instructions: 577513659 calls: 1 - instructions: 815542521 + instructions: 798906060 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_blob_32_4: total: - start_instructions: 553883767 + start_instructions: 541161181 calls: 1 - instructions: 793647237 + instructions: 776952625 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_blob_32_512: total: - start_instructions: 888268172 + start_instructions: 876226602 calls: 1 - instructions: 965231969 + instructions: 948839218 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_blob_32_64: total: - start_instructions: 614195302 + start_instructions: 600926126 calls: 1 - instructions: 829955000 + instructions: 813853999 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_blob_32_8: total: - start_instructions: 564238462 + start_instructions: 551206978 calls: 1 - instructions: 807341795 + instructions: 790946612 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_blob_4_128: total: - start_instructions: 495185127 + start_instructions: 490840380 calls: 1 - instructions: 371628600 + instructions: 367470487 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_blob_512_128: total: - start_instructions: 3375912066 + start_instructions: 3353422049 calls: 1 - instructions: 4497163456 + instructions: 4464466766 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_blob_64_128: total: - start_instructions: 793131927 + start_instructions: 776243513 calls: 1 - instructions: 1041943730 + instructions: 1019568181 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_blob_8_128: total: - start_instructions: 549378015 + start_instructions: 543941793 calls: 1 - instructions: 622232889 + instructions: 615779072 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_u64_blob8: total: - start_instructions: 431985324 + start_instructions: 426758416 calls: 1 - instructions: 685762805 + instructions: 678338311 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_u64_u64: total: - start_instructions: 433927702 + start_instructions: 428626169 calls: 1 - instructions: 697134667 + instructions: 689260406 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_u64_vec8: total: - start_instructions: 443148927 + start_instructions: 436538662 calls: 1 - instructions: 688048696 + instructions: 680731670 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_vec8_u64: total: - start_instructions: 606169729 + start_instructions: 610374136 calls: 1 - instructions: 775814598 + instructions: 774006744 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_vec_1024_128: total: - start_instructions: 3170928416 + start_instructions: 3116136487 calls: 1 - instructions: 4314793486 + instructions: 4239103678 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_vec_128_128: total: - start_instructions: 1138513812 + start_instructions: 1109805741 calls: 1 - instructions: 1554207926 + instructions: 1509202441 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_vec_16_128: total: - start_instructions: 779778555 + start_instructions: 783547286 calls: 1 - instructions: 1026108710 + instructions: 1022271784 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_vec_256_128: total: - start_instructions: 1561628432 + start_instructions: 1534331509 calls: 1 - instructions: 2131957978 + instructions: 2065405266 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_vec_32_1024: total: - start_instructions: 1595568095 + start_instructions: 1572294459 calls: 1 - instructions: 1703124981 + instructions: 1660630531 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_vec_32_128: total: - start_instructions: 848750197 + start_instructions: 833287275 calls: 1 - instructions: 1102777842 + instructions: 1078545812 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_vec_32_16: total: - start_instructions: 718334410 + start_instructions: 707190860 calls: 1 - instructions: 944211583 + instructions: 925174032 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_vec_32_256: total: - start_instructions: 1013876367 + start_instructions: 990120817 calls: 1 - instructions: 1231083618 + instructions: 1199037864 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_vec_32_32: total: - start_instructions: 719366213 + start_instructions: 708328545 calls: 1 - instructions: 943092702 + instructions: 925759644 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_vec_32_4: total: - start_instructions: 707907040 + start_instructions: 697924481 calls: 1 - instructions: 940356602 + instructions: 921398030 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_vec_32_512: total: - start_instructions: 1214346252 + start_instructions: 1186290270 calls: 1 - instructions: 1394468408 + instructions: 1357630038 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_vec_32_64: total: - start_instructions: 762375676 + start_instructions: 751323219 calls: 1 - instructions: 986545825 + instructions: 968549933 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_vec_32_8: total: - start_instructions: 709370848 + start_instructions: 699103945 calls: 1 - instructions: 943858689 + instructions: 925007422 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_vec_4_128: total: - start_instructions: 675429220 + start_instructions: 674816792 calls: 1 - instructions: 536437381 + instructions: 534270275 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_vec_512_128: total: - start_instructions: 2121084951 + start_instructions: 2070747888 calls: 1 - instructions: 2876049571 + instructions: 2793078250 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_vec_64_128: total: - start_instructions: 950254824 + start_instructions: 931673501 calls: 1 - instructions: 1258690707 + instructions: 1230553236 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_pop_last_vec_8_128: total: - start_instructions: 736873888 + start_instructions: 736941025 calls: 1 - instructions: 865694098 + instructions: 862573318 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_range_count_1k_0b: total: - start_instructions: 35917797 + start_instructions: 35147069 calls: 1 - instructions: 16748 + instructions: 17325 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_range_count_1k_10kib: total: - start_instructions: 891302430 + start_instructions: 889241453 calls: 1 - instructions: 2599674 + instructions: 2651810 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_range_count_20_10mib: total: - start_instructions: 14479293737 + start_instructions: 14485967462 calls: 1 - instructions: 20576288 + instructions: 20577329 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_range_key_sum_1k_0b: total: - start_instructions: 35917894 + start_instructions: 35147166 calls: 1 - instructions: 17104 + instructions: 17568 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_range_key_sum_1k_10kib: total: - start_instructions: 891302527 + start_instructions: 889241550 calls: 1 - instructions: 57215658 + instructions: 57016599 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_range_key_sum_20_10mib: total: - start_instructions: 14479293834 + start_instructions: 14485967559 calls: 1 - instructions: 1105826200 + instructions: 1105821929 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_range_value_sum_1k_0b: total: - start_instructions: 35917894 + start_instructions: 35147166 calls: 1 - instructions: 17118 + instructions: 17582 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_range_value_sum_1k_10kib: total: - start_instructions: 891302527 + start_instructions: 889241550 calls: 1 - instructions: 57227654 + instructions: 57028595 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_range_value_sum_20_10mib: total: - start_instructions: 14479293834 + start_instructions: 14485967559 calls: 1 - instructions: 1105826436 + instructions: 1105822165 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_10mib_values: total: - start_instructions: 14479293363 + start_instructions: 14485967088 calls: 1 - instructions: 4737371953 + instructions: 4745601915 heap_increase: 0 stable_memory_increase: 657 scopes: {} btreemap_v2_remove_blob8_u64: total: - start_instructions: 459630211 + start_instructions: 453873913 calls: 1 - instructions: 606056713 + instructions: 596923489 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_blob_1024_128: total: - start_instructions: 6131895381 + start_instructions: 6106585973 calls: 1 - instructions: 7421888866 + instructions: 7379667533 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_blob_128_128: total: - start_instructions: 1362339662 + start_instructions: 1343142775 calls: 1 - instructions: 1635342147 + instructions: 1607396974 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_blob_16_128: total: - start_instructions: 587875096 + start_instructions: 582936916 calls: 1 - instructions: 690775090 + instructions: 680207079 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_blob_256_128: total: - start_instructions: 2036711438 + start_instructions: 2016223113 calls: 1 - instructions: 2469317749 + instructions: 2438118148 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_blob_32_1024: total: - start_instructions: 1238245580 + start_instructions: 1225152952 calls: 1 - instructions: 1018120608 + instructions: 998591487 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_blob_32_128: total: - start_instructions: 659339379 + start_instructions: 647671599 calls: 1 - instructions: 782398058 + instructions: 762964209 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_blob_32_16: total: - start_instructions: 572198169 + start_instructions: 559722634 calls: 1 - instructions: 735719722 + instructions: 716725409 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_blob_32_256: total: - start_instructions: 749396807 + start_instructions: 736916035 calls: 1 - instructions: 818891034 + instructions: 799332932 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_blob_32_32: total: - start_instructions: 594146104 + start_instructions: 580919298 calls: 1 - instructions: 747183767 + instructions: 727478442 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_blob_32_4: total: - start_instructions: 556169406 + start_instructions: 543466976 calls: 1 - instructions: 732221314 + instructions: 712636348 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_blob_32_512: total: - start_instructions: 910873891 + start_instructions: 898832441 calls: 1 - instructions: 891432153 + instructions: 872035087 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_blob_32_64: total: - start_instructions: 618881021 + start_instructions: 605611965 calls: 1 - instructions: 774120265 + instructions: 754165218 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_blob_32_8: total: - start_instructions: 566704183 + start_instructions: 553652829 calls: 1 - instructions: 732105858 + instructions: 712282515 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_blob_4_128: total: - start_instructions: 500930654 + start_instructions: 496586041 calls: 1 - instructions: 468000929 + instructions: 464428206 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_blob_512_128: total: - start_instructions: 3423432805 + start_instructions: 3400962940 calls: 1 - instructions: 4122884700 + instructions: 4087442000 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_blob_64_128: total: - start_instructions: 804812720 + start_instructions: 787924438 calls: 1 - instructions: 950218279 + instructions: 925857474 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_blob_8_128: total: - start_instructions: 555383524 + start_instructions: 549947436 calls: 1 - instructions: 623528286 + instructions: 614717488 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_u64_blob8: total: - start_instructions: 433090833 + start_instructions: 427844055 calls: 1 - instructions: 601729366 + instructions: 591289239 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_u64_u64: total: - start_instructions: 434693266 + start_instructions: 429391869 calls: 1 - instructions: 623942725 + instructions: 612365815 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_u64_vec8: total: - start_instructions: 442791595 + start_instructions: 437943978 calls: 1 - instructions: 607719710 + instructions: 596864262 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_vec8_u64: total: - start_instructions: 606342608 + start_instructions: 609571867 calls: 1 - instructions: 767231408 + instructions: 768226682 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_vec_1024_128: total: - start_instructions: 3192363458 + start_instructions: 3139139615 calls: 1 - instructions: 4558259614 + instructions: 4442411301 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_vec_128_128: total: - start_instructions: 1152132995 + start_instructions: 1122931818 calls: 1 - instructions: 1461626998 + instructions: 1419451891 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_vec_16_128: total: - start_instructions: 788123774 + start_instructions: 789675873 calls: 1 - instructions: 929190133 + instructions: 926959674 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_vec_256_128: total: - start_instructions: 1570435457 + start_instructions: 1532479798 calls: 1 - instructions: 2290487526 + instructions: 2218247229 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_vec_32_1024: total: - start_instructions: 1628350867 + start_instructions: 1602777496 calls: 1 - instructions: 1731690542 + instructions: 1693369366 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_vec_32_128: total: - start_instructions: 857561793 + start_instructions: 841581401 calls: 1 - instructions: 1068571020 + instructions: 1039023877 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_vec_32_16: total: - start_instructions: 722884550 + start_instructions: 711050685 calls: 1 - instructions: 891426404 + instructions: 885753205 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_vec_32_256: total: - start_instructions: 1007673020 + start_instructions: 987481510 calls: 1 - instructions: 1279117443 + instructions: 1244959919 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_vec_32_32: total: - start_instructions: 725399616 + start_instructions: 713894096 calls: 1 - instructions: 898887525 + instructions: 879000017 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_vec_32_4: total: - start_instructions: 711759047 + start_instructions: 700624986 calls: 1 - instructions: 897962104 + instructions: 875841946 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_vec_32_512: total: - start_instructions: 1225599518 + start_instructions: 1199394096 calls: 1 - instructions: 1443964176 + instructions: 1402127540 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_vec_32_64: total: - start_instructions: 769411650 + start_instructions: 757545427 calls: 1 - instructions: 979405973 + instructions: 981819352 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_vec_32_8: total: - start_instructions: 711554910 + start_instructions: 700422898 calls: 1 - instructions: 892013376 + instructions: 869697896 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_vec_4_128: total: - start_instructions: 683578434 + start_instructions: 683425633 calls: 1 - instructions: 669117022 + instructions: 668639448 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_vec_512_128: total: - start_instructions: 2134044956 + start_instructions: 2081367474 calls: 1 - instructions: 3127395742 + instructions: 3050432567 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_vec_64_128: total: - start_instructions: 961598179 + start_instructions: 942322408 calls: 1 - instructions: 1188794441 + instructions: 1191118695 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_remove_vec_8_128: total: - start_instructions: 746474463 + start_instructions: 746800143 calls: 1 - instructions: 837942736 + instructions: 831170274 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_scan_iter_1k_0b: total: - start_instructions: 35812492 + start_instructions: 35039744 calls: 1 - instructions: 1539251 + instructions: 1456527 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_scan_iter_1k_10kib: total: - start_instructions: 468774582 + start_instructions: 466615217 calls: 1 - instructions: 57053253 + instructions: 56819350 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_scan_iter_20_10mib: total: - start_instructions: 5833732430 + start_instructions: 5840407332 calls: 1 - instructions: 1103719341 + instructions: 1103714527 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_scan_iter_rev_1k_0b: total: - start_instructions: 35812492 + start_instructions: 35039744 calls: 1 - instructions: 1540246 + instructions: 1457035 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_scan_iter_rev_1k_10kib: total: - start_instructions: 468774582 + start_instructions: 466615217 calls: 1 - instructions: 57034272 + instructions: 56796290 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_scan_iter_rev_20_10mib: total: - start_instructions: 5833732430 + start_instructions: 5840407332 calls: 1 - instructions: 1103718906 + instructions: 1103714086 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_scan_keys_1k_0b: total: - start_instructions: 35812479 + start_instructions: 35039731 calls: 1 - instructions: 1179999 + instructions: 1193507 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_scan_keys_1k_10kib: total: - start_instructions: 468774569 + start_instructions: 466615204 calls: 1 - instructions: 2586986 + instructions: 2603081 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_scan_keys_20_10mib: total: - start_instructions: 5833732417 + start_instructions: 5840407319 calls: 1 - instructions: 18469915 + instructions: 18470081 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_scan_keys_rev_1k_0b: total: - start_instructions: 35812479 + start_instructions: 35039731 calls: 1 - instructions: 1179914 + instructions: 1193329 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_scan_keys_rev_1k_10kib: total: - start_instructions: 468774569 + start_instructions: 466615204 calls: 1 - instructions: 2568041 + instructions: 2581341 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_scan_keys_rev_20_10mib: total: - start_instructions: 5833732417 + start_instructions: 5840407319 calls: 1 - instructions: 18469901 + instructions: 18470067 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_scan_values_1k_0b: total: - start_instructions: 35812494 + start_instructions: 35039746 calls: 1 - instructions: 1515589 + instructions: 1433865 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_scan_values_1k_10kib: total: - start_instructions: 468774584 + start_instructions: 466615219 calls: 1 - instructions: 57029591 + instructions: 56796688 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_scan_values_20_10mib: total: - start_instructions: 5833732432 + start_instructions: 5840407334 calls: 1 - instructions: 1103718871 + instructions: 1103714077 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_scan_values_rev_1k_0b: total: - start_instructions: 35812492 + start_instructions: 35039744 calls: 1 - instructions: 1517248 + instructions: 1435037 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_scan_values_rev_1k_10kib: total: - start_instructions: 468774582 + start_instructions: 466615217 calls: 1 - instructions: 57011274 + instructions: 56774292 heap_increase: 0 stable_memory_increase: 0 scopes: {} btreemap_v2_scan_values_rev_20_10mib: total: - start_instructions: 5833732430 + start_instructions: 5840407332 calls: 1 - instructions: 1103718448 + instructions: 1103713648 heap_increase: 0 stable_memory_increase: 0 scopes: {} diff --git a/benchmarks/compare/canbench_results.yml b/benchmarks/compare/canbench_results.yml index 2fca330d..372290c0 100644 --- a/benchmarks/compare/canbench_results.yml +++ b/benchmarks/compare/canbench_results.yml @@ -3,7 +3,7 @@ benches: total: start_instructions: 17235 calls: 1 - instructions: 1219162271 + instructions: 1222164385 heap_increase: 3233 stable_memory_increase: 1665 scopes: {} @@ -11,7 +11,7 @@ benches: total: start_instructions: 17235 calls: 1 - instructions: 5414899705 + instructions: 5422715344 heap_increase: 1604 stable_memory_increase: 1665 scopes: {} @@ -19,7 +19,7 @@ benches: total: start_instructions: 17235 calls: 1 - instructions: 133641869551 + instructions: 134635899996 heap_increase: 1892 stable_memory_increase: 3201 scopes: {} @@ -75,7 +75,7 @@ benches: total: start_instructions: 17235 calls: 1 - instructions: 1069802821 + instructions: 1072804865 heap_increase: 3233 stable_memory_increase: 1665 scopes: {} @@ -83,7 +83,7 @@ benches: total: start_instructions: 17235 calls: 1 - instructions: 4914910816 + instructions: 4922635433 heap_increase: 1604 stable_memory_increase: 1665 scopes: {} @@ -91,7 +91,7 @@ benches: total: start_instructions: 17235 calls: 1 - instructions: 89875477354 + instructions: 90689822199 heap_increase: 1892 stable_memory_increase: 3201 scopes: {} From 20c359ff8ee4a5bff83d98ca88709e29f2b99bff Mon Sep 17 00:00:00 2001 From: Maksym Arutyunyan Date: Fri, 6 Jun 2025 13:09:32 +0200 Subject: [PATCH 12/13] fix up-to-date check --- scripts/ci_run_benchmark.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/ci_run_benchmark.sh b/scripts/ci_run_benchmark.sh index b07b251c..13109a1b 100644 --- a/scripts/ci_run_benchmark.sh +++ b/scripts/ci_run_benchmark.sh @@ -34,7 +34,7 @@ fi # Check if the canbench results file is up to date. pushd "$CANISTER_PATH" -canbench --less-verbose --hide-results --show-summary --csv > "$CANBENCH_OUTPUT" +canbench --less-verbose --show-summary --csv > "$CANBENCH_OUTPUT" cp "./canbench_results.csv" "$CANBENCH_RESULTS_CSV_FILE" if grep -q "(regress\|(improved by \|(new)" "$CANBENCH_OUTPUT"; then UPDATED_MSG="**❌ \`$CANBENCH_RESULTS_FILE\` is not up to date** From 7338b42829261ac7eae50459031267dee370b29f Mon Sep 17 00:00:00 2001 From: Maksym Arutyunyan Date: Fri, 6 Jun 2025 13:11:29 +0200 Subject: [PATCH 13/13] . --- scripts/ci_run_benchmark.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/ci_run_benchmark.sh b/scripts/ci_run_benchmark.sh index 13109a1b..0afab45f 100644 --- a/scripts/ci_run_benchmark.sh +++ b/scripts/ci_run_benchmark.sh @@ -34,6 +34,7 @@ fi # Check if the canbench results file is up to date. pushd "$CANISTER_PATH" +# (!) Do not use `--hide-results` here, as it breaks the up-to-date check. canbench --less-verbose --show-summary --csv > "$CANBENCH_OUTPUT" cp "./canbench_results.csv" "$CANBENCH_RESULTS_CSV_FILE" if grep -q "(regress\|(improved by \|(new)" "$CANBENCH_OUTPUT"; then