Files
Raúl Marín 064130bb36 Reduce JIT-induced noise in performance tests
Most performance tests already disable JIT via `compile_expressions=0`,
`compile_aggregate_expressions=0` and `compile_sort_description=0` in
`perf-comparison-tweaks-users.xml`. Tests that explicitly opt back into JIT
were still bimodal: the JIT cache is global and shared across queries, so
whether the first measured runs hit it or not depends on what ran before.

Set `min_count_to_compile_expression`, `min_count_to_compile_aggregate_expression`
and `min_count_to_compile_sort_description` to 0 in the same profile so that
when a test does enable JIT, compilation happens on the very first call and
the existing prewarm run populates the cache before measurements start.

Drop now-redundant per-test overrides of the same settings.
2026-05-08 11:49:12 +02:00

56 lines
1.2 KiB
XML

<test>
<create_query>
CREATE TABLE jit_test (
a UInt64,
b UInt64,
c UInt64,
d UInt64,
e UInt64,
f UInt64,
g UInt64,
h UInt64,
i UInt64,
j UInt64
) Engine = Memory
</create_query>
<fill_query>
INSERT INTO jit_test
SELECT
number,
number,
number,
number,
number,
number,
number,
number,
number,
number
FROM
system.numbers_mt
LIMIT 200000000
</fill_query>
<query>
SELECT
COUNT()
FROM
jit_test
WHERE
NOT ignore(a / b + c / d + e / f + g / h + i / j)
SETTINGS
compile_expressions = 0;
</query>
<query>
SELECT
COUNT()
FROM
jit_test
WHERE
NOT ignore(a / b + c / d + e / f + g / h + i / j)
SETTINGS
compile_expressions = 1
</query>
<drop_query>DROP TABLE IF EXISTS jit_test</drop_query>
</test>