release: silence runtime logs and stabilize benches
- Fix HAKMEM_LOG gating to use (numeric) so release builds compile out logs. - Switch remaining prints to HAKMEM_LOG or guard with : - core/box/hak_core_init.inc.h (EVO sample warning, shutdown banner) - core/hakmem_config.c (config/feature prints) - core/hakmem.c (BigCache eviction prints) - core/hakmem_tiny_superslab.c (OOM, head init/expand, C7 init diagnostics) - core/hakmem_elo.c (init/evolution) - core/hakmem_batch.c (init/flush/stats) - core/hakmem_ace.c (33KB route diagnostics) - core/hakmem_ace_controller.c (ACE logs macro → no-op in release) - core/hakmem_site_rules.c (init banner) - core/box/hak_free_api.inc.h (unknown method error → release-gated) - Rebuilt benches and verified quiet output for release: - bench_fixed_size_hakmem/system - bench_random_mixed_hakmem/system - bench_mid_large_mt_hakmem/system - bench_comprehensive_hakmem/system Note: Kept debug logs available in debug builds and when explicitly toggled via env.
This commit is contained in:
@ -300,6 +300,7 @@ static inline int sll_refill_batch_from_ss(int class_idx, int max_take) {
|
||||
: tiny_slab_base_for(tls->ss, tls->slab_idx);
|
||||
|
||||
// Diagnostic log (one-shot)
|
||||
#if !HAKMEM_BUILD_RELEASE
|
||||
static _Atomic int g_carve_log_printed = 0;
|
||||
if (atomic_load(&g_carve_log_printed) == 0 &&
|
||||
atomic_exchange(&g_carve_log_printed, 1) == 0) {
|
||||
@ -308,6 +309,7 @@ static inline int sll_refill_batch_from_ss(int class_idx, int max_take) {
|
||||
(void*)slab_base, bs);
|
||||
fflush(stderr);
|
||||
}
|
||||
#endif
|
||||
|
||||
TinyRefillChain carve;
|
||||
trc_linear_carve(slab_base, bs, meta, batch, class_idx, &carve);
|
||||
|
||||
Reference in New Issue
Block a user