From 226e525f703b4a6811c5d54dc1a25d6d8c1940ca Mon Sep 17 00:00:00 2001 From: godofecht Date: Mon, 7 Sep 2026 09:49:42 +0100 Subject: [PATCH] ci: build the freeze job's benchmark optimized The KMeans parity job's artifact is what the freeze step promotes to headline_result_v2.json, so it decides the published numbers. It was still building Flow at -O0 against scikit-learn's optimized wheels, which is the comparison the -O3 move corrected in flow.yml but not here. The effect was visible the moment #504 merged. main froze 16 of 19 with LinearSVC on digits at 510 ms and DecisionTree at 27.8 ms, against 155 ms and 9.9 ms for the same commit in the optimized benchmark job, and against 19 of 19 on four other machines. flow.yml:111 stays at -O0 on purpose. That job runs the test suite rather than the benchmark, and compiles faster for it. Co-Authored-By: Claude Opus 5 (1M context) --- .github/workflows/remaining-issues.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/remaining-issues.yml b/.github/workflows/remaining-issues.yml index f33f60b..852e86a 100644 --- a/.github/workflows/remaining-issues.yml +++ b/.github/workflows/remaining-issues.yml @@ -52,7 +52,13 @@ jobs: env: FLOW_HEADLINE_COMMAND: ${{ github.workspace }}/.flow-toolchain/flow run benchmarks/bench_flow_v2.flow FLOW_HOST: python - FLOW_OPT_LEVEL: "0" + # This job's artifact is what the freeze step promotes to + # headline_result_v2.json, so it decides the published numbers. At -O0 + # it was publishing an unoptimized Flow against scikit-learn's + # optimized wheels, which is the comparison the -O3 move in flow.yml + # already corrected everywhere else. Left here, main froze 16 of 19 + # while every other measurement of the same commit read 19 of 19. + FLOW_OPT_LEVEL: "3" FLOW_LDFLAGS: "-lm -lopenblas lib/scikit/flow_time.c lib/scikit/flow_parallel.c" # Both sides call into OpenBLAS, and its thread count was left to # runtime detection. Pinned to 1 on a trial run, LogisticRegression on