0.1.0 (June 30, 2025)
This is the initial release of auto-allocator, a zero-configuration automatic memory allocator for Rust that intelligently selects the optimal allocator for your platform and hardware. Simply add one line of code and get up to 1.6x faster allocation performance across all platforms.
Added
- Zero-Configuration Automatic Allocator SelectionAutomatically chooses the best memory allocator based on compile-time
platform detection and runtime hardware analysis. No configuration required - just use auto_allocator; and get optimal
performance. - Cross-Platform IntelligenceSmart platform-specific selection:
- Windows/macOS/Linux: mimalloc for superior multi-threaded performance (1.6x faster)
- Android: Scudo allocator (respects Google's security policy)
- iOS: libmalloc (Apple's optimized system allocator)
- BSD/Solaris: Native platform allocators (already optimal)
- Embedded Systems: embedded-alloc for all no_std targets (ARM, RISC-V, AVR, MSP430, Xtensa, etc.)
- WASM: Browser-compatible system allocator
- Security-Hardened ModeOptional secure feature provides enhanced heap protection with mimalloc-secure, including guard
pages, encrypted free lists, and randomization (~10% performance overhead). - Comprehensive System IntrospectionRuntime APIs to inspect allocator selection, hardware detection results, and optimization
recommendations:- get_allocator_info() - Complete allocator and system information
- get_allocator_type() - Current allocator type
- get_recommended_allocator() - Platform-specific recommendations
- check_allocator_optimization() - Optimization validation
- Architecture-Specific Embedded SupportAutomatic heap sizing for embedded platforms:
- AVR (Arduino): 512B heap (Arduino Uno compatible)
- MSP430: 256B heap (low-power MCU optimized)
- RISC-V 32/64-bit: 2KB/4KB heaps respectively
- ARM Cortex-M: 1KB heap (16KB+ systems)
- Xtensa (ESP32): 4KB heap (256KB+ systems)
- Performance Benchmarking SuiteBuilt-in benchmarks to measure allocator performance across different workloads and validate
the selection logic. - Flexible Triple LicensingAvailable under MIT, Apache-2.0, or MPL-2.0 licenses for maximum compatibility with any project.
Features
- Hardware-Aware Selection: Runtime CPU core detection and memory analysis
- Zero Runtime Overhead: 90% of decisions made at compile-time
- Universal Compatibility: Works on every Rust platform from servers to microcontrollers
- Production Ready: Safe for use in high-performance production environments
- Memory Formatting Utilities: Human-readable memory size formatting with performance optimization
Examples
- simple_demo: Basic integration and system introspection
- web_server: High-throughput web application usage
- optimization_check: CI/CD performance validation
- embedded_system: Real no_std compilation for embedded targets