From b67666b97a4fff743d4ff2f1890f3c202056a65c Mon Sep 17 00:00:00 2001 From: Andrew Noyes Date: Fri, 15 Aug 2025 20:39:45 -0400 Subject: [PATCH] Update design.md --- design.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/design.md b/design.md index 07c1039..86f3dd6 100644 --- a/design.md +++ b/design.md @@ -83,14 +83,14 @@ The system implements a RESTful API with three core endpoints: #### Memory Allocation - **~1ns allocation time** vs standard allocators - **Bulk deallocation** eliminates individual free() calls -- **Geometric growth** minimizes allocation frequency +- **Optimized geometric growth** uses current block size for doubling strategy - **Alignment-aware** allocation prevents performance penalties #### JSON Parsing - **Streaming parser** handles large payloads efficiently - **Incremental processing** suitable for network protocols - **Arena storage** eliminates string allocation overhead -- **Base64 decoding** integrated into parsing pipeline +- **SIMD-accelerated base64 decoding** using simdutf for maximum performance ### Design Principles @@ -112,11 +112,13 @@ The project includes comprehensive testing infrastructure: Build targets: - `test_arena_allocator`: Arena allocator functionality tests - `test_commit_request`: JSON parsing and validation tests -- `bench_arena_allocator`: Performance benchmarking +- `weaseldb`: Main application demonstrating configuration and parsing +- Various benchmark executables for performance testing ### Dependencies - **weaseljson**: High-performance streaming JSON parser +- **simdutf**: SIMD-accelerated UTF-8 validation and base64 encoding/decoding - **toml11**: TOML configuration file parsing - **doctest**: Lightweight testing framework - **nanobench**: Micro-benchmarking library