From 14ee7aa84c7fc82e6475f551b1fc9d2b4f8aaff2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Renault?= Date: Thu, 28 Nov 2024 18:02:48 +0100 Subject: [PATCH] Make sure the BBQueue is at least 50 MiB --- crates/milli/src/update/new/indexer/mod.rs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/crates/milli/src/update/new/indexer/mod.rs b/crates/milli/src/update/new/indexer/mod.rs index 19f1bca3e..e0450ff7d 100644 --- a/crates/milli/src/update/new/indexer/mod.rs +++ b/crates/milli/src/update/new/indexer/mod.rs @@ -81,10 +81,12 @@ where let finished_extraction = AtomicBool::new(false); // We compute and remove the allocated BBQueues buffers capacity from the indexing memory. + let minimum_capacity = 50 * 1024 * 1024 * pool.current_num_threads(); // 50 MiB let (grenad_parameters, total_bbbuffer_capacity) = grenad_parameters.max_memory.map_or( - (grenad_parameters, 100 * 1024 * 1024 * pool.current_num_threads()), // 100 MiB by thread by default + (grenad_parameters, 2 * minimum_capacity), // 100 MiB by thread by default |max_memory| { - let total_bbbuffer_capacity = max_memory / (100 / 2); // 2% of the indexing memory + // 2% of the indexing memory + let total_bbbuffer_capacity = (max_memory / 100 / 2).min(minimum_capacity); let new_grenad_parameters = GrenadParameters { max_memory: Some(max_memory - total_bbbuffer_capacity), ..grenad_parameters