pub mod aligned;
pub mod aligned_helpers;
pub mod arena;
pub mod benchmarking;
pub mod cache_optimization;
pub mod enhanced_traits;
pub mod large_scale;
pub mod monitored_allocator;
pub mod out_of_core;
pub mod performance_tuning;
pub mod pool;
pub mod strategy;
pub use aligned::{AlignedAllocator, AlignmentConfig};
pub use aligned_helpers::{
aligned_alloc, aligned_alloc_zeroed, aligned_dealloc, cache_line_size, is_aligned,
optimal_simd_alignment, AlignedBox, AlignedVec,
};
pub use arena::{ArenaAllocator, ArenaConfig};
pub use benchmarking::{benchmark_configs, AllocatorBenchmark, BenchmarkConfig, BenchmarkResults};
pub use cache_optimization::{
cache_constants, CacheConfig, CacheLevel, CacheMetrics, CacheOptimizationRecommendation,
CacheOptimizationType, CacheOptimizedAllocator,
};
pub use enhanced_traits::{
EnhancedAllocatorBridge, IntelligentAllocationStrategy, NumericalArrayAllocator,
};
pub use large_scale::{
get_global_memory_stats, get_global_spill_stats, init_global_manager,
load_spilled_data_globally, should_spill_globally, spill_data_globally, with_global_manager,
with_global_manager_mut, ChunkIterator, LargeScaleConfig, LargeScaleManager, MemoryStats,
MemoryTracker, SpillStats,
};
pub use monitored_allocator::{
presets, MonitoredAllocator, MonitoredAllocatorFactory, MonitoringConfig,
};
pub use out_of_core::{CacheStats, CacheStrategy, OutOfCoreArray, OutOfCoreConfig};
pub use performance_tuning::{
init_global_tuner, with_global_tuner, with_global_tuner_mut, OptimizationRecommendation,
OptimizationType, PerformanceMetrics, PerformanceTuner, TuningConfig,
};
pub use pool::{PoolAllocator, PoolConfig};
pub use strategy::{get_default_allocator, AllocStrategy, MemoryAllocator};
pub fn init_global_allocator(strategy: AllocStrategy) {
strategy::set_global_allocator(strategy);
}
pub fn get_global_allocator_strategy() -> AllocStrategy {
strategy::get_global_allocator_strategy()
}
pub fn reset_global_allocator() {
strategy::reset_global_allocator();
}