Commit Graph

717 Commits

Author SHA1 Message Date
Maksim Kita
2ad29a541a Updated interfaces 2021-04-01 00:12:21 +03:00
Alexander Kuzmenkov
73e72018fd fixes 2021-03-31 16:04:55 +03:00
Maksim Kita
55984e849c
Merge branch 'master' into hierarchy-dictionaries-updated 2021-03-31 15:55:07 +03:00
Alexey Milovidov
64bfdb69d0 Adjust perf test 2021-03-30 15:24:22 +03:00
Alexander Kuzmenkov
54495136d4 more 2021-03-29 23:26:06 +03:00
Alexander Kuzmenkov
e5c48d5d4e more 2021-03-29 23:12:54 +03:00
Alexander Kuzmenkov
3a4ac94901 make some perf test queries more stable 2021-03-29 22:43:34 +03:00
Maksim Kita
3071d45ade Fixed tests 2021-03-29 16:41:03 +03:00
Maksim Kita
2e55d47bab Updated benchmarks 2021-03-28 13:35:26 +03:00
Alexey Milovidov
699af9d034 Add perf test 2021-03-28 04:29:55 +03:00
Maksim Kita
4f298d54b9 Added perf tests 2021-03-27 17:00:00 +03:00
Alexey Milovidov
c7d2671f32 Merge branch 'speedup-none' into mmap-cache 2021-03-27 02:42:44 +03:00
Alexey Milovidov
1e08304fb1 Add performance test 2021-03-26 22:12:56 +03:00
Alexander Kuzmenkov
a5fb5a7183
Merge pull request #22148 from ClickHouse/aku/perf-thresholds
adjust perf test thresholds
2021-03-26 12:59:20 +03:00
Alexander Kuzmenkov
f3ca9db832 forgot abs() 2021-03-26 01:00:06 +03:00
Alexander Kuzmenkov
a12cc5f559 adjust perf test thresholds 2021-03-26 00:00:18 +03:00
Alexander Kuzmenkov
8ea697b7df use camelCase 2021-03-25 18:49:45 +03:00
Alexander Kuzmenkov
b0284f20c3
Merge branch 'master' into aku/laglead 2021-03-22 21:16:27 +03:00
Nikolai Kochetov
bc63d4244b
Merge pull request #21856 from ClickHouse/aggregator-no-more-keys-batch
Batch aggregation for overflow rows.
2021-03-19 11:52:55 +03:00
Alexander Kuzmenkov
b5e344bf49
Update date_time_long.xml 2021-03-19 02:19:58 +03:00
Alexander Kuzmenkov
1beba597ca Merge remote-tracking branch 'origin/master' into HEAD 2021-03-19 02:11:08 +03:00
Alexander Kuzmenkov
6aa9039f7d float frames and lag/lead_in_frame 2021-03-19 02:05:43 +03:00
Nikolai Kochetov
b957162ca5 Add perftest. 2021-03-18 12:38:37 +03:00
Alexey Milovidov
1dd730d2d6 Fix perf test 2021-03-16 15:59:14 +03:00
Alexander Kuzmenkov
6fe1570ad8
Update fuse_sumcount.xml 2021-03-15 17:11:17 +03:00
Alexander Kuzmenkov
a7a79cae8b
Update fuse_sumcount.xml 2021-03-15 16:57:09 +03:00
alexey-milovidov
53e21443eb
Merge branch 'master' into DateTime64_extended_range 2021-03-14 12:27:17 +03:00
hexiaoting
ab2aaa7fe7 Rewriter visitor and add performance test 2021-03-12 15:29:38 +08:00
Maksim Kita
12083d0fa1 Fixed tests 2021-03-09 23:50:36 +03:00
Maksim Kita
69f8fb8c9a Added dict has in benchmark 2021-03-09 23:50:36 +03:00
Maksim Kita
5e03418651 Added performance tests 2021-03-09 23:50:36 +03:00
Nikolai Kochetov
2a56697f6c Update prewhere_with_row_level_filter.xml 2021-03-09 11:15:03 +03:00
Alexey Milovidov
0cdad60419 Try to enable long performance test 2021-03-08 03:28:25 +03:00
Denis Glazachev
6f4e883d8d Factor out settings
Enable parallel insert select
Reduce the amount of data to process
2021-03-06 15:09:45 +04:00
Nikolai Kochetov
a195e783d2 Try fix perftests. 2021-03-04 13:25:49 +03:00
Alexander Kuzmenkov
f169be740a
Merge pull request #21381 from ClickHouse/aku/perf-negative
fix a rare false negative in perf tests
2021-03-03 15:55:14 +03:00
Alexander Kuzmenkov
08148e062f Fix a rare false negative in perf tests 2021-03-02 19:21:30 +03:00
Nikolai Kochetov
ffbea93b10
Merge pull request #19576 from traceon/row-policy-with-prewhere
Allow row policies with PREWHERE
2021-03-02 13:51:37 +03:00
Denis Glazachev
14513e520e Fix privileges 2021-03-01 18:03:29 +04:00
Denis Glazachev
eb80c189e4 Merge branch 'master' into row-policy-with-prewhere 2021-02-28 20:14:31 +04:00
Nikolai Kochetov
f63d7b45ce Merge branch 'master' into fix-number-of-threads-in-subqueries 2021-02-26 11:15:03 +03:00
Alexey Milovidov
00e6b6232f Revert "optimize aggfunc column data copy (#19407)"
This reverts commit 7e3186c826.
2021-02-21 12:49:50 +03:00
Denis Glazachev
2ab643170d Add 'SETTINGS optimize_move_to_prewhere = 0' in WHERE-only SELECTs 2021-02-20 00:45:19 +04:00
Denis Glazachev
8cc72b8fe0 Merge branch 'master' into row-policy-with-prewhere
* master: (160 commits)
  Make Poco HTTP Server zero-copy again (#19516)
  Fixed documentation
  ccache 4.2+ does not requires any quirks for SOURCE_DATE_EPOCH
  Add a function `htmlOrXmlCoarseParse` to extract content from html or xml format string. (#19600)
  Reinterpret function added Decimal, DateTim64 support
  Add test
  Update InterpreterSelectQuery.cpp
  Improved serialization for data types combined of Arrays and Tuples. Improved matching enum data types to protobuf enum type. Fixed serialization of the Map data type. Omitted values are now set by default.
  Log stdout and stderr when failed to start docker in integration tests.
  Added comment
  Don't backport base commit of branch in the same branch (#20628)
  Fix fasttest retry for failed tests
  Dictionary create source with functions crash fix
  Added error reinterpretation tests
  Update run.sh
  Updated documentation
  fix subquery with limit
  Rename untyped function reinterpretAs into reinterpret
  ignore data store files
  Support vhost
  ...
2021-02-19 19:49:37 +04:00
Denis Glazachev
879d9206c1 Add tests for row-level security with prewhere 2021-02-19 02:47:28 +04:00
Anton Popov
e5cef576e5
Update subqueries.xml 2021-02-17 12:39:40 +03:00
Nikolai Kochetov
0b315fccc2 Merge branch 'master' into fix-number-of-threads-in-subqueries 2021-02-16 16:29:30 +03:00
Nikolai Kochetov
10f1432c5c Added perftest. 2021-02-16 11:31:17 +03:00
Alexey Milovidov
5bdc570046 Improve performance of GROUP BY multiple fixed size keys 2021-02-14 01:56:04 +03:00
Alexander Kuzmenkov
716a3df6eb
Merge pull request #20337 from ClickHouse/aku/window-prototype
window function rank() and friends
2021-02-13 03:03:49 +03:00
alexey-milovidov
d15d340691
Merge pull request #20301 from azat/numbers-numeric-limit
Accept arbitrary numeric types for numbers() arguments (for scientific notation)
2021-02-11 20:41:15 +03:00
Alexander Kuzmenkov
1275be58bf Merge remote-tracking branch 'origin/master' into HEAD 2021-02-11 19:49:37 +03:00
Alexander Kuzmenkov
62b3bf7b57 some tests and speedup 2021-02-11 19:20:57 +03:00
alexey-milovidov
263d751d64
Merge pull request #20169 from ClickHouse/no-excessive-squash-memory
Disable excessive squashing of blocks for StorageMemory #13052
2021-02-11 16:38:24 +03:00
Alexey Milovidov
c32ed77976 Some queries become too fast 2021-02-11 16:37:46 +03:00
Alexander Kuzmenkov
2571dac984
Merge pull request #20111 from ClickHouse/aku/window-prototype
RANGE OFFSET window frame
2021-02-11 10:39:21 +03:00
Alexey Milovidov
d3dba0e52a Merge branch 'master' into no-excessive-squash-memory 2021-02-10 23:45:12 +03:00
Azat Khuzhin
b6dc721e33 Update tests for new numbers(limit) syntax
$ gg -e 'numbers(toUInt64' -e 'numbers_mt(toUInt64' | cut -d: -f1 | sort -u | xargs sed -i -E 's#numbers(_mt|)\(toUInt64\(([^()]*)\)\)#numbers\1(\2)#'
2021-02-10 22:32:32 +03:00
Alexander Kuzmenkov
c18749a704 fix a bug and add some tests 2021-02-09 17:44:04 +03:00
Alexander Kuzmenkov
e703390fce
Update reinterpret_as.xml 2021-02-09 00:31:30 +03:00
templarzq
7e3186c826
optimize aggfunc column data copy (#19407)
* optimize agg column data copy

* add aggfunc col data copy test

* fix null warning

* fix style

* fix style

* fix style

* fix style

* fix copy same dat to same pos bug

* fix style

* fix style

* Update ColumnAggregateFunction.cpp

fix type check

* control record buf size

* fix performance

* fix performance

* fix destroy data speed

* decrease run time.

* fix warning

* decrease test run time

* Update aggfunc_col_data_copy.xml

* replace unordered_map with HashMap

* fix compile err

* fix compile err

* fix compile err

* fix compile err

* fix compile err

* fix compile err

* fix compile err

* fix compile err

* fix compile err

* fix hash map compile err

* fix compile err

* fix compile err

* fix format

* faster test

Co-authored-by: centos7 <templarzq@localhost.localdomain>
2021-02-08 16:18:48 +03:00
Alexey Milovidov
e4b3ae34f1 Add perf test 2021-02-07 05:42:43 +03:00
Alexander Kuzmenkov
02ca7386b1
Merge pull request #19951 from ClickHouse/aku/window-prototype-3
CURRENT ROW and offset for start of ROWS frame
2021-02-04 14:33:13 +03:00
Alexey Milovidov
ab30c95b41 Adjust perf test 2021-02-04 10:35:30 +03:00
Alexander Kuzmenkov
d8a9d347fe
Merge pull request #20000 from ClickHouse/aku/perf
update perf tests
2021-02-03 16:06:58 +03:00
Alexander Kuzmenkov
53052f7040
Update group_by_sundy_li.xml 2021-02-03 12:22:02 +03:00
Alexander Kuzmenkov
bb45c5a8ff Merge remote-tracking branch 'origin/master' into HEAD 2021-02-03 12:13:23 +03:00
Maksim Kita
ba45cf32ab
Merge pull request #19858 from kitaisreal/reinterpret-as-updated-to-big-integers
Function reinterpretAs updated to support big integers
2021-02-03 12:12:13 +03:00
Alexander Kuzmenkov
7e945bab03 fix the calculation for moving frame start 2021-02-03 08:53:21 +03:00
alexey-milovidov
a4d86c43e9
Merge pull request #19946 from ClickHouse/improve-performance-of-aggregate-functions
Improve performance of aggregate functions
2021-02-03 08:46:51 +03:00
Alexander Kuzmenkov
85f8918753 fix the row order to be like in the original test 2021-02-03 07:47:53 +03:00
Alexander Kuzmenkov
6317208add
Merge branch 'master' into aku/perf 2021-02-02 17:24:17 +03:00
Alexey Milovidov
b9647e5326 Fix double whitespace 2021-02-02 17:22:03 +03:00
Alexander Kuzmenkov
b4afc49d3c update perf tests
sed -i s'/^<test.*$/<test>/g' tests/performance/*.xml

WITH ceil(max(q[3]), 1) AS h
SELECT concat('sed -i s\'/^<test.*$/<test max_ignored_relative_change="', toString(h), '">/g\' tests/performance/', test, '.xml') AS s
FROM
(
    SELECT
        test,
        query_index,
        count(*),
        min(event_time),
        max(event_time) AS t,
        arrayMap(x -> floor(x, 3), quantiles(0, 0.5, 0.95, 1)(stat_threshold)) AS q,
        median(stat_threshold) AS m
    FROM perftest.query_metrics_v2
    WHERE ((pr_number != 0) AND (event_date > '2021-01-01')) AND (metric = 'client_time') AND (abs(diff) < 0.05) AND (old_value > 0.1)
    GROUP BY
        test,
        query_index,
        query_display_name
    HAVING (t > '2021-01-01 00:00:00') AND ((q[3]) > 0.1)
    ORDER BY test DESC
)
GROUP BY test
ORDER BY h DESC
FORMAT PrettySpace
2021-02-02 17:21:43 +03:00
Maksim Kita
c889f51e9e Updated performance benchmark 2021-02-02 12:50:58 +03:00
Alexey Milovidov
0b166e1cbd Add performance test 2021-02-02 12:11:20 +03:00
Maksim Kita
9a1e52a80d Added performance test 2021-02-01 12:25:52 +03:00
Pavel Kruglov
71f4acd48b Use one pool for lonely parts, update tests 2021-01-29 17:30:14 +03:00
Pavel Kruglov
a437ee4e31 Merge branch 'master' of github.com:ClickHouse/ClickHouse into select-final 2021-01-29 14:25:47 +03:00
Nikolai Kochetov
a6f787faea
Merge pull request #19253 from ClickHouse/split-actions-dag
Split actions dag
2021-01-25 18:13:42 +03:00
Alexey Milovidov
ea26e5e784 Remove unneeded case 2021-01-23 22:04:45 +03:00
Pavel Kruglov
39379bcd5c Update performance test 2021-01-23 19:55:29 +03:00
Maksim Kita
f5deb6d523
Merge pull request #19354 from kitaisreal/accurate-cast-or-null-fixed-unitialized-values
Function accurateCastOrNull fixed unitialized values for numeric cast
2021-01-23 10:58:52 +03:00
Nikolai Kochetov
290eadc121
Merge branch 'master' into split-actions-dag 2021-01-22 18:09:34 +03:00
Pavel Kruglov
6d2b9ebbb2 Update performance test 2021-01-22 17:16:22 +03:00
Nikolai Kochetov
d683bf42ce Review fixes. 2021-01-22 16:46:56 +03:00
Maksim Kita
d712748304 Function accurateCastOrNull fixed unitialized values for numeric cast 2021-01-22 16:24:51 +03:00
Pavel Kruglov
900580af02 Add parallel select when there is one part with level>0 in select final 2021-01-21 20:34:50 +03:00
flynn
e75b116466
Rewrite sum(if()) and sumIf to countIf in special cases (#17041)
Co-authored-by: vdimir <vdimir@yandex-team.ru>
2021-01-21 12:01:35 +03:00
Nikolai Kochetov
af7dca7bb7 Update perftest. 2021-01-21 11:54:56 +03:00
Nikolai Kochetov
0246e3eace Added perftest. 2021-01-19 15:51:53 +03:00
Alexander Kuzmenkov
cafc6a492d
Update jit_large_requests.xml 2021-01-18 14:00:24 +03:00
alexey-milovidov
ecf9b9c392
Merge pull request #19154 from ClickHouse/aku/faster-perf
speed up some perf tests (for other machines)
2021-01-16 12:22:46 +03:00
Alexander Kuzmenkov
979d23208e speed up some perf tests (for other machines) 2021-01-16 00:15:06 +03:00
Alexey Milovidov
aa51463c93 Adjust perf test 2021-01-15 13:22:51 +03:00
Alexey Milovidov
f6f7ef65a2 Add perf test 2021-01-15 00:34:53 +03:00
alexey-milovidov
9049599e36
Update optimize_window_funnel.xml 2021-01-09 05:15:40 +03:00
feng lv
04c07d59bf add performance test 2021-01-08 15:43:49 +00:00
Alexey Milovidov
35255aecb3 Merge branch 'master' into fix-perf-test-2 2021-01-03 02:45:23 +03:00
alexey-milovidov
8b98465f10
Merge pull request #17043 from amosbird/countoptimization
Devirtualize -If and vectorize count
2020-12-31 03:34:16 +03:00
Alexey Milovidov
efa494b5e4 Fix too long perf test 2020-12-30 16:53:30 +03:00
Alexander Kuzmenkov
1c52fdb265 cleanup 2020-12-28 13:08:38 +03:00
Alexander Kuzmenkov
a38787553c perf test fix 2020-12-25 06:15:36 +03:00
Alexander Kuzmenkov
912995cbae some provision for aggregate fns as window fn args
(doesn't work yet)

also a perf test w/LIMIT BY
2020-12-24 11:49:55 +03:00
Alexander Kuzmenkov
e3fb30b9f7
Merge pull request #18386 from ClickHouse/aku/faster-perf
Make some perf tests faster on slower machines
2020-12-24 03:47:18 +03:00
Nikolai Kochetov
af7f5c9518
Merge pull request #17868 from ClickHouse/async-read-from-socket
Async read from socket
2020-12-23 12:20:42 +03:00
Alexander Kuzmenkov
d9180f1e3e Make some perf tests faster on slower machines 2020-12-23 05:40:55 +03:00
alexey-milovidov
ea1b62cdc5
Merge pull request #18317 from Enmk/CoulmnMap_perf_test
Perf test for ColumnMap
2020-12-22 09:33:16 +03:00
alexey-milovidov
fbcea6d933
Update ColumnMap.xml 2020-12-22 01:16:51 +03:00
Vasily Nemkov
b93a2cfa25 Perf test for ColumnMap 2020-12-21 16:02:58 +02:00
Amos Bird
9348526078
Devirtualize -If and vectorize count 2020-12-21 11:35:38 +08:00
Alexey Milovidov
37fb7e707c Queries are too fast 2020-12-20 12:01:51 +03:00
Alexey Milovidov
7340839d6d Update performance tests after speedup 2020-12-20 07:04:29 +03:00
Alexey Milovidov
6e0bb11fe2 Tests become too fast 2020-12-17 22:11:03 +03:00
Alexey Milovidov
0e0a66b03b Remove unsupported ciphers 2020-12-17 22:09:27 +03:00
Nikolai Kochetov
8de5cd5bc7 Merge branch 'master' into async-read-from-socket 2020-12-14 17:45:38 +03:00
Alexey Milovidov
ef064696e7 Add perf test 2020-12-13 00:17:37 +03:00
Azat Khuzhin
9b6b2b175f perf: merge custom_tld.xml/first_significant_subdomain.xml into url_hits.xml
v2: smaller table for *firstSignificantSubdomain* (max_threads=1)
2020-12-09 21:08:30 +03:00
Azat Khuzhin
8b6256dc4b Add performance test for custom TLD
And seems works with the same speed as default (that uses gperf):

- cutToFirstSignificantSubdomain

    SELECT cutToFirstSignificantSubdomain(URL)
    FROM datasets.hits
    SETTINGS max_threads = 1
    FORMAT Null
    SETTINGS max_threads = 1

    0 rows in set. Elapsed: 0.904 sec. Processed 8.87 million rows, 762.68 MB (9.82 million rows/s., 843.61 MB/s.)

- cutToFirstSignificantSubdomainCustom

    SELECT cutToFirstSignificantSubdomainCustom(URL, 'public_suffix_list')
    FROM datasets.hits
    SETTINGS max_threads = 1
    FORMAT Null
    SETTINGS max_threads = 1

    0 rows in set. Elapsed: 0.909 sec. Processed 8.87 million rows, 762.68 MB (9.76 million rows/s., 838.83 MB/s.)
2020-12-09 21:08:30 +03:00
Nikolai Kochetov
32b38f389e Merge branch 'master' into async-read-from-socket 2020-12-09 17:15:36 +03:00
Nikolai Kochetov
effc94daaf Added perftest. 2020-12-09 17:11:20 +03:00
Azat Khuzhin
68c4da1203 Use max_threads=2 for countMatches to keep it under 2 seconds
Although I don't like this idea.
2020-12-04 07:54:34 +03:00
Azat Khuzhin
cb68d5b5e7 Add performance test for countMatches() function 2020-12-01 22:26:07 +03:00
Alexander Kuzmenkov
5ad15e2018
Merge pull request #17109 from azat/perf-AggregatingMergeTree-INSERT
Improve performance of AggregatingMergeTree w/ SimpleAggregateFunction(String) in PK
2020-12-01 16:27:36 +03:00
Alexander Kuzmenkov
8fd0810142
Update aggregating_merge_tree_simple_aggregate_function_string.xml
`system stop merges` w/o table name has global effect, so the rest of the tests is affected. Also `optimize` is more suitable here so that the end result is the same every time.
2020-11-30 12:31:30 +03:00
Alexander Kuzmenkov
a3277b183d Adjust perf test thresholds 2020-11-27 15:08:42 +03:00
Nikolai Kochetov
9291bbb04b
Merge pull request #16804 from vdimir/ip-dict-no-trie
sorted-array based ip_dict
2020-11-26 19:26:06 +03:00
Alexander Kuzmenkov
15a0f14445
Merge pull request #15419 from myrrc/improvement/diff-types-in-avg-weighted
Allow different types in avgWeighted. Allow avg and avgWeighed to operate on extended integral types.
2020-11-26 17:16:48 +03:00
Nikolai Kochetov
729272391f
Merge branch 'master' into ip-dict-no-trie 2020-11-25 23:07:19 +03:00
Azat Khuzhin
688cb6b4d9 Update date_time_short perf test for toUnixTimestamp(Date()) 2020-11-25 21:17:11 +03:00
myrrc
420f2489a7 fixed decimal scales calc, updated the tests 2020-11-24 17:07:59 +03:00
myrrc
fbb0e6e6aa Merge remote-tracking branch 'upstream/master' into improvement/diff-types-in-avg-weighted 2020-11-24 16:04:17 +03:00
vdimir
52bc290616
Regenerate ya.make, add format null to ip_trie.xml 2020-11-24 11:20:11 +03:00
Azat Khuzhin
8931d3eb6f Do not use SET via <full_query> in perf tests
Since if the connection will be closed (by some reason), then the
setting will not be applied after transparent reconnect (since only
native clickhouse-client can do this, since it parses the query, but
perf tests uses python driver).

Just use inplace SETTINGS clause or <settings>.
2020-11-21 14:02:21 +03:00
Azat Khuzhin
a3116d5614 Tune aggregating_merge_tree_simple_aggregate_function_string to make it faster 2020-11-21 12:08:59 +03:00
Azat Khuzhin
35231662b3 Improve performance of AggregatingMergeTree w/ SimpleAggregateFunction(String)
While reading from AggregatingMergeTree with
SimpleAggregateFunction(String) in primary key and
optimize_aggregation_in_order perf top shows:

    Samples: 1M of event 'cycles', 4000 Hz, Event count (approx.): 287759760270 lost: 0/0 drop: 0/0
      Children      Self  Shared Object         Symbol
    +   12.64%    11.39%  clickhouse            [.] memcpy
    +    9.08%     0.23%  [unknown]             [.] 0000000000000000
    +    8.45%     8.40%  clickhouse            [.] ProfileEvents::increment    # <-- this, and in debug it has not 0.08x overhead, but 5.8x overhead
    +    7.68%     7.67%  clickhouse            [.] LZ4_compress_fast_extState
    +    5.29%     5.22%  clickhouse            [.] DB::IAggregateFunctionHelper<DB::AggregateFunctionNullUnary<true, true> >::addFree

The reason is obvious, ProfileEvents is atomic counters (and also they
are nested):

<details>

```
    Samples: 7M of event 'cycles', 4000 Hz, Event count (approx.): 450726149337
    ProfileEvents::increment  /usr/bin/clickhouse [Percent: local period]
    Percent│
           │
           │
           │    Disassembly of section .text:
           │
           │    00000000078d8900 <ProfileEvents::increment(unsigned long, unsigned long)@@Base>:
           │    ProfileEvents::increment(unsigned long, unsigned long):
      0.17 │      push  %rbp
      0.00 │      mov   %rsi,%rbp
      0.04 │      push  %rbx
      0.20 │      mov   %rdi,%rbx
      0.17 │      sub   $0x8,%rsp
      0.26 │    → callq DB::CurrentThread::getProfileEvents
           │    ProfileEvents::Counters::increment(unsigned long, unsigned long):
      0.00 │      lea   0x0(,%rbx,8),%rdi
      0.05 │      nop
           │    unsigned long std::__1::__cxx_atomic_fetch_add<unsigned long, unsigned long>(std::__1::__cxx_atomic_base_impl<unsigned long>*, unsigned long, std::__1::memory_order):
      1.02 │      mov   (%rax),%rdx
     97.04 │      lock  add   %rbp,(%rdx,%rdi,1)
           │    ProfileEvents::Counters::increment(unsigned long, unsigned long):
      0.21 │      mov   0x10(%rax),%rax
      0.04 │      test  %rax,%rax
      0.00 │    → jne   78d8920 <ProfileEvents::increment(unsigned long, unsigned long)@@Base+0x20>
           │    ProfileEvents::increment(unsigned long, unsigned long):
      0.38 │      add   $0x8,%rsp
      0.00 │      pop   %rbx
      0.04 │      pop   %rbp
      0.38 │    ← retq
```

</details>

These ProfileEvents was ArenaAllocChunks (it shows ~1.5M events per
second), and the reason is that the table has
SimpleAggregateFunction(String) in PK, which requires Arena.
But most of the time there Arena wasn't even used, so avoid this cost by
re-creating Arena only if it was "used" (i.e. has new chunks).

Another possibility is to avoid populating Arena::head in ctor, but this
will make the Arena code more complex, so for now this was preferred.

Also as a long-term solution it worth looking at implementing them via
RCU (to move the extra overhead out from the write code path into read
side).
2020-11-19 23:06:12 +03:00
vdimir
36544a45b7
Merge remote-tracking branch 'upstream/master' into ip-dict-no-trie 2020-11-19 18:56:24 +03:00
alesapin
cdceafdd89 Trying to make read_in_order_many_parts more stable 2020-11-19 13:25:39 +03:00
myrrc
dbc5284b73 replaced Memory by MergeTree in the test to get perftests 2020-11-18 12:51:02 +03:00
vdimir
6dcb38db3f
Minor changes in IP dictionary 2020-11-16 21:08:31 +03:00
Alexander Kuzmenkov
b0e660651a cleanup 2020-11-16 19:09:58 +03:00
vdimir
5e0e22301b
Slightly improve ip_dict loading performance, handle v4 to v6 masks in prepossessing, add more tests 2020-11-15 18:55:34 +03:00
vdimir
ca8e4b1607
Minor fixes of ip dict 2020-11-14 20:03:13 +03:00
myrrc
b1c0089b78 Merge remote-tracking branch 'upstream/master' into improvement/diff-types-in-avg-weighted 2020-11-14 16:50:04 +03:00
Alexander Kuzmenkov
e4dd68039e fix 2020-11-13 08:00:43 +03:00
myrrc
a8d8dd7d3e Merge remote-tracking branch 'upstream/master' into improvement/diff-types-in-avg-weighted 2020-11-12 14:50:59 +03:00
Alexander Kuzmenkov
0d10a4990e fix 2020-11-12 11:27:33 +03:00
Alexander Kuzmenkov
91f88c79f9 Merge remote-tracking branch 'origin/master' into HEAD 2020-11-12 11:20:09 +03:00
Alexey Milovidov
f1d721fa74 Marked some perf test queries as short 2020-11-11 19:58:31 +03:00
Alexander Kuzmenkov
f31d7869ac Merge remote-tracking branch 'origin/master' into HEAD 2020-11-11 14:51:35 +03:00
Alexander Kuzmenkov
906b338a1d fixes 2020-11-11 14:51:21 +03:00
Danila Kutenin
c36e6fe378 Fix tests finally 2020-11-10 18:22:59 +03:00
Danila Kutenin
c0308a5d85 Fix tests, I cannot count number of zeros sometimes 2020-11-10 18:21:39 +03:00
Danila Kutenin
847fa9ca3c Merge 2020-11-10 18:15:26 +03:00
Danila Kutenin
8504efde77 Merge 2020-11-10 18:12:49 +03:00
Danila Kutenin
2057198779 Fix performance tests that became very fast 2020-11-10 17:58:05 +03:00
myrrc
e460248624 Merge remote-tracking branch 'upstream/master' into improvement/diff-types-in-avg-weighted 2020-11-10 14:54:24 +03:00
Alexander Kuzmenkov
84fb76bad4 fixes 2020-11-10 07:19:43 +03:00
Alexander Kuzmenkov
030419db90 Try 12 threads max in perf test.
This will allow us to use more machines, not only Gold 6320.
2020-11-09 19:14:05 +03:00
alexey-milovidov
e47ed55d32
Merge pull request #14977 from achimbab/indexOf_bloomfilter
Fix indexOf() to use BloomFilter
2020-11-09 17:58:42 +03:00
alexey-milovidov
2994499680
Update bloom_filter_select.xml 2020-11-09 17:58:27 +03:00
Alexey Milovidov
ff906369ea Adjust time for perf test 2020-11-08 23:22:50 +03:00
vdimir
81671ceb39
Add tests/performance/ip_trie.xml [wip] 2020-11-08 21:32:22 +03:00
Alexey Milovidov
f07988eec7 Remove perf test of sumbur hash, because we do not care 2020-11-08 21:17:30 +03:00
Alexey Milovidov
7257a5c3d2 Fix perf tests 2020-11-08 16:55:36 +03:00
Alexey Milovidov
f4178dd91f Fix perf tests 2020-11-08 16:55:26 +03:00
alexey-milovidov
c7aa0c851a
Update bloom_filter.xml 2020-11-08 16:51:45 +03:00
alexey-milovidov
d96914b044
Update bloom_filter.xml 2020-11-08 16:51:03 +03:00
Alexey Milovidov
cc012e2cc7 Merge branch 'master' into achimbab-indexOf_bloomfilter 2020-11-08 14:42:03 +03:00
Alexey Milovidov
990f8a23ab Translate comments to english 2020-11-05 21:51:36 +03:00
alexey-milovidov
ee3e289ec2
Merge pull request #15983 from ClickHouse/no_background_pool_no_more
Replace BackgroundProcessingPool with SchedulePool task and ThreadPool.
2020-11-05 21:38:22 +03:00
myrrc
ddd40fc4ce fixed the perf test 2020-11-05 12:20:05 +03:00
myrrc
9788065786 Merge remote-tracking branch 'upstream/master' into improvement/diff-types-in-avg-weighted 2020-11-05 08:44:37 +03:00
alexey-milovidov
dbdff0d779
Merge pull request #16661 from ClickHouse/optimize-or-fill
Optimize -OrNull and -OrDefault aggregate functions by providing specializations
2020-11-04 23:37:11 +03:00
alexey-milovidov
ca0037d18b
Update group_by_sundy_li.xml 2020-11-04 18:07:18 +03:00
myrrc
43b2d20314 updated the decimal template magic 2020-11-04 16:14:07 +03:00
myrrc
3d70ab7f3b Merge remote-tracking branch 'upstream/master' into improvement/diff-types-in-avg-weighted 2020-11-04 14:29:59 +03:00
Alexey Milovidov
e0d962a3cf Add a test for #8772 2020-11-04 14:22:02 +03:00
Alexey Milovidov
938ef62532 Add a test 2020-11-04 14:00:43 +03:00
Alexey Milovidov
fdd7f31cf7 Add a test 2020-11-03 23:28:23 +03:00
myrrc
5c6bd218ad adjusted the perftest 2020-11-03 18:01:29 +03:00
myrrc
fcbc0fb91e added specialized performance test 2020-11-03 16:12:27 +03:00
Anton Popov
a3a8e18637
Merge branch 'master' into select_final 2020-11-03 00:00:43 +03:00
alesapin
101aa9e931 Merge branch 'master' into no_background_pool_no_more 2020-11-02 10:49:19 +03:00
Alexander Kuzmenkov
e15a8d5ac0 fixup 2020-10-30 21:03:07 +03:00
Alexander Kuzmenkov
7e76b7b510 more fixes 2020-10-30 18:54:38 +03:00
Alexander Kuzmenkov
38726847fc make the test longer 2020-10-30 18:16:30 +03:00
Alexander Kuzmenkov
3529100da9 Adjust ignored perf test changes after NUMA binding 2020-10-30 18:12:15 +03:00
Anton Popov
48185d437a
Update optimized_select_final.xml 2020-10-30 17:48:59 +03:00
Anton Popov
9f0f981642
Update optimized_select_final.xml 2020-10-29 14:03:50 +03:00
Pavel Kruglov
4592c5e59b Add OPTIMIZE in perf test 2020-10-27 14:42:26 +03:00
alesapin
d5d0819698 Merge branch 'master' into no_background_pool_no_more 2020-10-26 12:58:51 +03:00
alesapin
84dbbdb312 Rename test 2020-10-23 13:42:15 +03:00
alesapin
166b3de466 Make insert test faster 2020-10-23 13:31:33 +03:00
Pavel Kruglov
0274c9e9eb Add perf test 2020-10-23 12:05:57 +03:00
alesapin
7a63b373f9 Merge branch 'blind_fix_of_read_in_order' into no_background_pool_no_more 2020-10-22 15:47:11 +03:00
Alexander Kuzmenkov
6293d1dbbe Merge remote-tracking branch 'origin/master' into HEAD 2020-10-21 18:39:59 +03:00
Alexander Kuzmenkov
242ec7e56c make some tests faster 2020-10-20 15:12:06 +03:00
Vasily Nemkov
1cf9781d4e AES: Attempt to make performance tests faster and more stable. 2020-10-20 08:05:39 +03:00
Vasily Nemkov
4124538b56 Merge remote-tracking branch 'upstream/master' into AES_encrypt_decrypt 2020-10-18 00:00:13 +03:00
alesapin
60d14352f8 Merge branch 'master' into no_background_pool_no_more 2020-10-15 16:34:14 +03:00
alexey-milovidov
1d309c34c8
Merge pull request #15497 from filipecaixeta/master
Add an SQL function formatReadableTimeDelta to format time delta
2020-10-14 22:36:57 +03:00
Alexander Kuzmenkov
cb15e72229 make some perf tests slower 2020-10-14 18:39:27 +03:00
Vasily Nemkov
a6f36fc53b Performance tests for encrypt and decrypt functions 2020-10-14 16:33:07 +03:00
alesapin
163d33fd21 Add perftest for merges
(cherry picked from commit e655f009d2)
2020-10-13 15:12:28 +03:00
Alexey Milovidov
905bb859a5 Add performance test 2020-10-11 18:25:29 +03:00
Artem Zuikov
4fd1db73a1
Faster 256-bit multiplication (#15418) 2020-09-29 20:52:34 +03:00
Alexander Kuzmenkov
8cbfd69adf
Update decimal_casts.xml 2020-09-24 11:35:35 +03:00
Alexander Kuzmenkov
9b29e31d64 Merge remote-tracking branch 'origin/master' into HEAD 2020-09-23 23:58:43 +03:00
alexey-milovidov
3bc09bb867
Merge pull request #15178 from amosbird/dtcf
Fix performance issue when doing datetime comparison
2020-09-23 20:33:23 +03:00
Alexander Kuzmenkov
9f137e77e7
Update decimal_casts.xml 2020-09-23 18:41:52 +03:00
Alexander Kuzmenkov
d2427a121f
Update decimal_casts.xml 2020-09-23 10:15:51 +03:00
Amos Bird
ee45395942
Fix datetime comparison 2020-09-23 10:29:55 +08:00
Artem Zuikov
f80ffc4dce restore decimal_casts perf test 2020-09-22 18:56:24 +03:00
Alexander Kuzmenkov
4937159f85
Merge pull request #14990 from ClickHouse/aku/longer-perf
If perf test definition changed, run everything + longer (as in master)
2020-09-22 13:25:49 +03:00
Alexander Kuzmenkov
e646aa306f
Update columns_hashing.xml 2020-09-22 13:25:16 +03:00
Alexander Kuzmenkov
ba12e68d70
Update insert_values_with_expressions.xml 2020-09-22 13:23:10 +03:00
Alexander Kuzmenkov
4dae587e2d fix test 2020-09-21 15:02:34 +03:00
Alexander Kuzmenkov
85be1f1685 Merge remote-tracking branch 'origin/master' into HEAD 2020-09-21 14:57:25 +03:00
alexey-milovidov
a4337635cc
Update single_fixed_string_groupby.xml 2020-09-20 19:42:11 +03:00
philip.han
2045bc9f8c Fix performance_test for bloom_filter 2020-09-20 19:06:46 +09:00
Amos Bird
8ca4d6634e
better fixed string group by support 2020-09-20 15:20:09 +08:00
Alexander Kuzmenkov
e7b9319e12 If perf test definition changed, run everything + longer (as in master)
Also some other perf test fixes
2020-09-18 16:28:46 +03:00
philip.han
cbedd44a60 Fix indexOf() to use BloomFilter 2020-09-18 17:43:07 +09:00
Alexander Kuzmenkov
36538ce08f Don't account for short queries, we'll deal with them separately.
New query:

```
WITH ceil(max(q[3]), 1) AS h
SELECT concat('sed -i s\'/^<test.*$/<test max_ignored_relative_change="', toString(h), '">/g\' tests/performance/', test, '.xml') AS s
FROM
(
    SELECT
        test,
        query_index,
        count(*),
        min(event_time),
        max(event_time) AS t,
        arrayMap(x -> floor(x, 3), quantiles(0, 0.5, 0.95, 1)(stat_threshold)) AS q,
        median(stat_threshold) AS m
    FROM perftest.query_metrics
    WHERE (metric = 'client_time') AND (abs(diff) < 0.05) AND (old > 0.2)
    GROUP BY
        test,
        query_index,
        query_display_name
    HAVING (t > '2020-09-01 00:00:00') AND (m > 0.1)
    ORDER BY test DESC
)
GROUP BY test
ORDER BY h DESC
FORMAT PrettySpace
```
2020-09-17 13:00:51 +03:00
Alexander Kuzmenkov
0f8aec59a3 Adjust ignore thresholds for unstable perf tests
Based on historical data.

```
SELECT
    test,
    ceil(max(q[3]), 1) AS h
FROM
(
    SELECT
        test,
        query_index,
        count(*),
        min(event_time),
        max(event_time) AS t,
        arrayMap(x -> floor(x, 3), quantiles(0, 0.5, 0.95, 1)(stat_threshold)) AS q,
        median(stat_threshold) AS m
    FROM perftest.query_metrics
    WHERE (metric = 'client_time') AND (abs(diff) < 0.05)
    GROUP BY
        test,
        query_index,
        query_display_name
    HAVING (t > '2020-09-01 00:00:00') AND (m > 0.1)
    ORDER BY m DESC
)
GROUP BY test
ORDER BY h DESC
FORMAT TSV

cryptographic_hashes	1.3
collations	0.8
joins_in_memory_pmj	0.8
joins_in_memory	0.7
merge_tree_simple_select	0.7
set_index	0.7
decimal_casts	0.7
website	0.6
logical_functions_medium	0.5
count	0.5
merge_tree_many_partitions	0.5
decimal_aggregates	0.5
codecs_int_insert	0.5
column_column_comparison	0.5
insert_parallel	0.4
parse_engine_file	0.4
read_in_order_many_parts	0.4
logical_functions_small	0.4
parallel_insert	0.3
parallel_index	0.3
push_down_limit	0.3
jit_large_requests	0.3
select_format	0.3
arithmetic	0.3
merge_tree_huge_pk	0.3
materialized_view_parallel_insert	0.3
columns_hashing	0.3
if_array_string	0.3
random_string	0.2
random_printable_ascii	0.2
set	0.2
empty_string_serialization	0.2
```

To apply:
```
sed 's/^\(.*\)        \(.*\)$/sed -i "s\/^<test.*$\/<test max_ignored_relative_change="'"'"\2">\/g" tests\/performance\/\1.xml/g' ../bad.tsv | bash
```
2020-09-16 18:27:51 +03:00
Alexander Kuzmenkov
9e3797b252
Merge pull request #14710 from ClickHouse/aku/faster-perf
Do less runs in perf test
2020-09-14 19:17:34 +03:00
Alexander Kuzmenkov
3113aa6cfe Avoid extra error in perf report on broken queries 2020-09-14 10:59:45 +03:00
Alexander Kuzmenkov
c701a15271 fixup 2020-09-14 10:27:46 +03:00
Nikolai Kochetov
c3eeb8f71e
Merge pull request #14412 from ClickHouse/pipes-and-creating-sets
Pipes and creating sets
2020-09-08 10:47:56 +03:00
Alexander Kuzmenkov
0904433c87 Temporarily remove UInt256 perf test broken in https://github.com/ClickHouse/ClickHouse/pull/14229
Also add one more timeout to perf test runner.
2020-09-07 09:33:57 +03:00
Nikolai Kochetov
7a03dbaa2f Added test. 2020-09-04 12:11:37 +03:00
Alexander Kuzmenkov
134aae89f3
Merge pull request #14110 from 4ertus2/decimal
Fix Decimal to Float conversion and toDecimal256() function
2020-08-31 17:08:49 +03:00
Artem Zuikov
13113dafdc
Update decimal_casts.xml 2020-08-27 16:53:16 +03:00
Alexey Milovidov
dc889b5c42 Fixup #14120 2020-08-27 15:17:51 +03:00
alexey-milovidov
ea0122de7e
Merge pull request #14120 from ClickHouse/parallel-insert-more-storages
Support parallel INSERT for more table engines
2020-08-27 15:08:56 +03:00
alexey-milovidov
0f706c01ca
Merge pull request #13888 from vladimir-golovchenko/add-date-trunc-function
Added date_trunc function
2020-08-27 02:12:27 +03:00
Alexey Milovidov
83fa57a346 Update instruction for perf tests 2020-08-26 20:34:05 +03:00
Alexey Milovidov
9a4e7cc492 Add perf test 2020-08-26 20:33:14 +03:00
Artem Zuikov
7e984f877b better test 2020-08-26 19:21:26 +03:00
Artem Zuikov
fe5db661ce fix decimal to float conversion and toDecimal256() 2020-08-26 15:26:12 +03:00
vladimir golovchenko
fb06f59ceb Added tests for date_trunc function. 2020-08-25 16:41:23 -07:00
alexey-milovidov
00c697df06
Merge pull request #14005 from ClickHouse/ucasFL-new-branch
Merging #12195
2020-08-26 01:33:54 +03:00
Alexey Milovidov
86d99f7c7f Disable "optimize_trivial_insert_select" for one perf test 2020-08-26 01:33:31 +03:00
alexey-milovidov
6a164634d7
Merge pull request #12550 from myrrc/bug/low-cardinality-arrays-optimisations
Optimising has(), indexOf(), and countEqual() for Array(LowCardinality(T)) and constant right arguments
2020-08-24 22:31:29 +03:00
Alexander Kazakov
d99ddb9ca9 In perf test array_index_lc: adjusted iterations count 2020-08-24 12:02:48 +03:00
Alexey Milovidov
d44982072c More robust 2020-08-24 03:14:24 +03:00
Alexander Kazakov
48333b29f6 Minior rename 2020-08-24 00:42:00 +03:00
Alexander Kazakov
eac2c59055 Fix up 2020-08-24 00:16:16 +03:00
Alexander Kazakov
ce0ab0e28b Split array_index_low_cardinality performance test: numbers/strings 2020-08-24 00:13:57 +03:00