From 84bf7a6701d5f51a8307736d310d4049c9158921 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Thu, 6 Feb 2025 17:35:27 -0800 Subject: [PATCH] std.heap.SmpAllocator: 256K slab_len and no need for special handling of wasi and windows since we don't ask for anything more than page-aligned. --- lib/std/heap/SmpAllocator.zig | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/lib/std/heap/SmpAllocator.zig b/lib/std/heap/SmpAllocator.zig index b1f2b14d0a..1a7eab2153 100644 --- a/lib/std/heap/SmpAllocator.zig +++ b/lib/std/heap/SmpAllocator.zig @@ -30,7 +30,6 @@ //! through the full set of freelists. const builtin = @import("builtin"); -const native_os = builtin.os.tag; const std = @import("../std.zig"); const assert = std.debug.assert; @@ -56,11 +55,7 @@ var global: SmpAllocator = .{ threadlocal var thread_id: Thread.Id = .none; const max_thread_count = 128; -const slab_len: usize = @max(std.heap.page_size_max, switch (builtin.os.tag) { - .windows => 64 * 1024, // Makes `std.heap.PageAllocator` take the happy path. - .wasi => 64 * 1024, // Max alignment supported by `std.heap.WasmAllocator`. - else => 256 * 1024, // Avoids too many active mappings when `page_size_max` is low. -}); +const slab_len: usize = @max(std.heap.page_size_max, 256 * 1024); /// Because of storing free list pointers, the minimum size class is 3. const min_class = math.log2(math.ceilPowerOfTwoAssert(usize, 1 + @sizeOf(usize))); const size_class_count = math.log2(slab_len) - min_class;