build(x86): Default-BACKENDS auf "cpu_x86 cpu_scalar" — Opt-in-Phase beendet (#108) - #109
Merged
Merged
Conversation
The opt-in gate ('until the Phase-2 win criteria are measured', pointing at
a spec doc that no longer exists) is long met: matches-to-beats llama.cpp on
Gemma/Llama, beats bitnet.cpp +61%/+90% on BitNet (benchmark/BENCHMARK_X86.md),
all AVX-512 kernels runtime-gated behind hw_probe/cpuid (#96, x86-64-v3 stays
the only hardware floor), CI x86 int/e2e strand required incl. the
GEIST_FORCE_ISA=avx2 portability gate. A plain 'make' on x86 shipped the
~200x slower scalar path - the same trap #102 fixed in bench_perf_sweep.
- mk/target-linux.mk: flip + rewrite the stale header ('x86_64 not supported
yet') and section comment
- benchmark/BENCHMARK_X86.md: reproduce recipe no longer needs BACKENDS=
- CI/release unaffected (all x86 jobs set BACKENDS explicitly; the
cpu_scalar reference job keeps forcing cpu_scalar)
Verified: make clean && make TARGET=linux (defaults) -> registry auto-picks
cpu_x86, test-unit 40 passed; BACKENDS=cpu_scalar counter-build green
(28 passed, x86 kernel tests correctly filtered out).
Closes #108
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Setzt #108 um: Wer auf x86 schlicht
maketippt, bekommt jetzt den nativen cpu_x86-Pfad statt des ~200× langsameren Scalar-Pfads.Begründung (die alten Flip-Kriterien sind übererfüllt)
benchmark/BENCHMARK_X86.md)CFLAGS_TARGETwar auf x86 ohnehin-march=x86-64-v3; alle AVX-512-Tiers sind laufzeit-gegated (cpu_x86: SIGILL auf x86-64-v3-CPUs ohne AVX-512 — alle AVX-512-Kernel im Forward-Pass laufzeit-gaten #96) mit permanentemGEIST_FORCE_ISA=avx2-CI-Gatedocs/LINUX_X86_SPEC.md) existiert nicht mehr — Kommentar war doppelt veraltet (Header behauptete sogar „x86_64 not supported yet")Änderungen
mk/target-linux.mk:BACKENDS ?= cpu_x86 cpu_scalarauf x86_64; Header + Sektions-Kommentar neu geschriebenbenchmark/BENCHMARK_X86.md: Reproduce-Rezept braucht keinBACKENDS=mehrNicht betroffen
CI- und Release-Jobs setzen
BACKENDSalle explizit (inkl. des cpu_scalar-Referenz-Jobs, der weiterhin explizit Scalar forciert) — für sie ändert sich nichts.Verifikation
make clean && make TARGET=linux(Defaults): Registry auto-picktcpu_x86,test-unit40 passed / 0 failedBACKENDS=cpu_scalar: Build +test-unitgrün (28 passed; x86-Kernel-Tests korrekt ausgefiltert)Closes #108
🤖 Generated with Claude Code