mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2026-10-28 16:18:23 +08:00
The performance harness runs every query on the reference server too, and allows any single run at most two seconds; a run over fifteen seconds aborts the whole test. The `Decimal256` queries were sized by how long they take with this change, not by how long they take without it, and the reference needs 7.5 to 25 us per row there against 0.26 us per row here. Query 7 of `decimal_to_string` therefore took over sixteen seconds on the reference and killed the test with `Timeout exceeded`, so the whole test reported no results at all. Bring the row counts down until the reference side fits the budget, and record what the counts are for so that they are not raised back. Every query in both tests now runs in at most 0.6 s on the reference. Report: https://s3.amazonaws.com/clickhouse-test-reports/json.html?PR=112457&sha=4405b5c2a3787dc0a7c65c81e926e8da0b293234&name_0=PR&name_1=Performance%20Comparison%20%28amd_release%2C%20master_head%2C%201%2F6%29 PR: https://github.com/ClickHouse/ClickHouse/pull/112457
18 lines
1.3 KiB
XML
18 lines
1.3 KiB
XML
<test>
|
|
<!-- Conversion of 64-bit integers to text, over the digit-count distributions that occur in
|
|
practice: identifiers and hashes over the whole range, timestamps, row numbers and small
|
|
enumeration-like values. -->
|
|
|
|
<query>SELECT count() FROM zeros(50000000) WHERE NOT ignore(toString(rand64())) SETTINGS max_threads = 1</query>
|
|
<query>SELECT count() FROM zeros(50000000) WHERE NOT ignore(toString(reinterpret(rand64(), 'Int64'))) SETTINGS max_threads = 1</query>
|
|
<query>SELECT count() FROM zeros(50000000) WHERE NOT ignore(toString(1700000000 + rand() % 100000000)) SETTINGS max_threads = 1</query>
|
|
<query>SELECT count() FROM numbers(50000000) WHERE NOT ignore(toString(number)) SETTINGS max_threads = 1</query>
|
|
<query>SELECT count() FROM zeros(50000000) WHERE NOT ignore(toString(rand64() % 1000)) SETTINGS max_threads = 1</query>
|
|
|
|
<!-- A value of a different length on every row, which defeats branch prediction -->
|
|
<query>SELECT count() FROM zeros(20000000) WHERE NOT ignore(toString(intDiv(rand64(), pow(10, rand() % 20)::UInt64 + 1))) SETTINGS max_threads = 1</query>
|
|
|
|
<!-- Through an output format rather than through toString -->
|
|
<query>SELECT count() FROM zeros(20000000) WHERE NOT ignore(formatRow('TSV', rand64())) SETTINGS max_threads = 1</query>
|
|
</test>
|