d5327e2252
The hot-thread tuning sets OMP_WAIT_POLICY=active and caps libgomp's spin with GOMP_SPINCOUNT=200000. LLVM libomp reads NEITHER: under active policy it sets KMP_BLOCKTIME=infinite, so once the answer ends and the engine parks on stdin, the whole OMP team spins forever — ~100% per thread, the 3000% figure reported on FreeBSD 15.1 in #341 (clang/libomp is the default toolchain neighborhood there; the same applies to macOS builds). KMP_BLOCKTIME=200 keeps the team hot for 200 ms after each parallel region — plenty to bridge back-to-back per-expert matmuls — and then sleeps it. setenv with overwrite=0, so a user-provided KMP_BLOCKTIME still wins, and libgomp builds ignore the variable entirely: on GCC toolchains this commit is a no-op by construction. Not reproduced locally (this box is gcc/libgomp and idles clean); shipped as the mechanism-matching candidate fix with a request on the issue for the reporter to verify on dev and to name their OpenMP runtime (ldd | grep omp). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>