From c8bbd4d52c4ab6c9fcd93915cb3fe23fb63e8279 Mon Sep 17 00:00:00 2001 From: jacqueline Date: Thu, 1 Feb 2024 11:15:25 +1100 Subject: [PATCH] Reduce leveldb cache sizes and worker stacks, increase number of workers --- src/database/database.cpp | 4 ++-- src/tasks/tasks.cpp | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/database/database.cpp b/src/database/database.cpp index 6b879710..141482ed 100644 --- a/src/database/database.cpp +++ b/src/database/database.cpp @@ -141,11 +141,11 @@ auto Database::Open(IFileGatherer& gatherer, [&]() -> cpp::result { leveldb::DB* db; std::unique_ptr cache{ - leveldb::NewLRUCache(24 * 1024)}; + leveldb::NewLRUCache(4 * 1024)}; leveldb::Options options; options.env = sEnv.env(); - options.write_buffer_size = 48 * 1024; + options.write_buffer_size = 4 * 1024; options.max_file_size = 32; options.block_cache = cache.get(); options.block_size = 512; diff --git a/src/tasks/tasks.cpp b/src/tasks/tasks.cpp index ea174039..d53eface 100644 --- a/src/tasks/tasks.cpp +++ b/src/tasks/tasks.cpp @@ -66,7 +66,7 @@ auto AllocateStack() -> cpp::span { // an eye-wateringly large amount of stack. template <> auto AllocateStack() -> cpp::span { - std::size_t size = 256 * 1024; + std::size_t size = 64 * 1024; return {static_cast(heap_caps_malloc(size, MALLOC_CAP_SPIRAM)), size}; } @@ -125,7 +125,7 @@ auto WorkerPool::Main(void* q) { } } -static constexpr size_t kNumWorkers = 3; +static constexpr size_t kNumWorkers = 4; static constexpr size_t kMaxPendingItems = 8; WorkerPool::WorkerPool()