diff --git a/build.sh b/build.sh index ed5f9b99..9cb07950 100755 --- a/build.sh +++ b/build.sh @@ -102,8 +102,17 @@ echo "=========================================" make clean >/dev/null 2>&1 || true # Phase 7 + Pool TLS defaults (pinned) + user extras -# Default: Pool TLSはOFF(必要時のみ明示ON)。短時間ベンチでのmutexとpage faultコストを避ける。 -POOL_TLS_PHASE1_DEFAULT=${POOL_TLS_PHASE1:-0} +# Default: Target-specific Pool TLS settings +# - Mid-Large targets (8-34KB workloads) → Pool TLS ON (critical for performance) +# - Tiny targets (≤1KB workloads) → Pool TLS OFF (avoid TLS overhead for short benchmarks) +case "${TARGET}" in + bench_mid_large_mt_hakmem|bench_pool_tls_hakmem|bench_mid_large_mt_system|bench_pool_tls_system) + POOL_TLS_PHASE1_DEFAULT=${POOL_TLS_PHASE1:-1} # ON for Mid-Large workloads + ;; + *) + POOL_TLS_PHASE1_DEFAULT=${POOL_TLS_PHASE1:-0} # OFF for Tiny-focused benchmarks + ;; +esac POOL_TLS_PREWARM_DEFAULT=${POOL_TLS_PREWARM:-0} POOL_TLS_BIND_BOX_DEFAULT=${POOL_TLS_BIND_BOX:-0} DISABLE_MINCORE_DEFAULT=${DISABLE_MINCORE:-0}