Commit Graph

577 Commits

Author SHA1 Message Date
Azat Khuzhin
5871ca0836 Fix performance tests due to warnings from jemalloc about Per-CPU arena disabled
jemalloc can show the following warning:

    Number of CPUs detected is not deterministic. Per-CPU arena disabled

It will be shown if one of the following returns different number of
CPUs:
- _SC_NPROCESSORS_ONLN
- _SC_NPROCESSORS_CONF
- sched_getaffinity()

And actually for my CPU linux returns different numbers, because there
are more possible CPUs then online, from dmesg:

    smpboot: Allowing 128 CPUs, 64 hotplug CPUs

And from sysfs:

    # grep . /sys/devices/system/cpu/{possible,online,offline}
    /sys/devices/system/cpu/possible:0-127
    /sys/devices/system/cpu/online:0-63
    /sys/devices/system/cpu/offline:64-127

From ACPI:

    # acpidump -o acpi
    # acpixtract -a acpi
    # iasl -d *.dat
    # grep -e 'Processor Enabled' apic.dsl | sort | uniq -c
        64                            Processor Enabled : 0
        64                            Processor Enabled : 1

So I guess this is the same as what happened in this perf run [1].

  [1]: https://s3.amazonaws.com/clickhouse-test-reports/51360/5d43a64112711b339b82b1c0e8df7882546a1a3c/performance_comparison_[4_4]/report.html

P.S. personally I, just use cmdline=possible_cpus=64 to fix this for my
setup.

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2023-06-25 09:37:37 +02:00
Nikita Taranov
4506299d73 impl 2023-06-02 23:14:09 +02:00
robot-clickhouse
6ac86ed3e0
Merge pull request #47945 from ClickHouse/artifacts-s3-prefix
Artifacts s3 prefix
2023-03-26 00:15:50 +01:00
Mikhail f. Shiryaev
4f2c336cfc
Update black version, run it for the repository 2023-03-24 11:54:38 +01:00
Mikhail f. Shiryaev
3b9213fb5a
Use variables in URLs, migrate to RPs prefix 2023-03-24 00:01:03 +01:00
Mikhail f. Shiryaev
9a2a091c76
Get rid of temporary COMMON_BUILD_PREFIX 2023-03-23 16:39:16 +01:00
Azat Khuzhin
b8b6d597ae
Avoid OOM in perf tests (#46641)
* Avoid OOM in perf tests

At some point perf tests started to fail for one setup on CI [1]:

    /home/ubuntu/actions-runner/_work/_temp/f8fce7b1-8bc4-49c8-a203-c96867f4420a.sh: line 5: 1882659 Killed                  python3 performance_comparison_check.py "$CHECK_NAME"
    Error: Process completed with exit code 137.

  [1]: https://github.com/ClickHouse/ClickHouse/actions/runs/4230936986/jobs/7349818625

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>

* Switch perf tests to ubuntu 22.04 for parallel with --memsuspend

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>

---------

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2023-02-23 14:05:18 +01:00
Alexander Tokmakov
669c4e94d5
Update compare.sh 2023-02-20 17:35:30 +03:00
Azat Khuzhin
5a5f99a27e Add CPU flamegraphs for perf tests
In Real profiler there is too much noise (polling, cond vars, ...)

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2023-02-17 06:07:28 +01:00
Azat Khuzhin
dc5d7809b6 Do not continue perf tests in case of exception in create_query/fill_query
Previously due to using of threading.Thread, exception had been
ignored, and perf test simply continues, yes it will show some errors,
but it also may show that the test became faster, while it is because
the underlying table was empty.

Replace threading.Thread with a SafeThread (inline implementation) that
simply rethrow exception in join.

Here is an example of such report [1], look at the ip_trie test.

  [1]: https://s3.amazonaws.com/clickhouse-test-reports/45654/2101b66570cbb9eb9a492afa8ab82d562c34336b/performance_comparison_[3/4]/report.html

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2023-02-13 17:31:15 +01:00
Robert Schulze
40ced78a7e
Update report.py 2023-01-22 20:01:55 +01:00
Robert Schulze
de8fc04b03
Performance report: "Partial queries" --> "Backward-incompatible queries 2023-01-22 17:43:27 +00:00
Alexey Milovidov
0b5bb118d9 Fix bash 2023-01-09 07:01:20 +01:00
Alexey Milovidov
4b2f651f72 Fix bash 2023-01-09 04:34:30 +01:00
Alexey Milovidov
f374d3a44e Fix performance test 2023-01-09 01:59:48 +01:00
Alexey Milovidov
03ae644ea3 Fix performance test 2023-01-09 01:58:42 +01:00
Alexey Milovidov
9254c62281 Merge branch 'modern-tools' of github.com:ClickHouse/ClickHouse into modern-tools 2023-01-08 03:21:00 +01:00
Alexey Milovidov
e298035d08 Fix performance test 2023-01-08 03:20:42 +01:00
Alexey Milovidov
42f25cb6a6
Amend 2023-01-07 00:57:47 +03:00
Alexey Milovidov
22fcabd229
Remove expert-level grep usages. 2023-01-07 00:57:11 +03:00
Alexey Milovidov
e54d30a812
Merge branch 'master' into modern-tools 2023-01-05 21:24:47 +03:00
Alexey Milovidov
0b324ab836 Modern tools 2023-01-01 20:53:06 +01:00
Raúl Marín
91dea53dbe Perf test: Log the time spent waiting for file sync 2022-12-30 12:03:43 +01:00
Azat Khuzhin
4c1fb543e1
Sync everything to persistent storage to avoid writeback affects perf tests (#43530)
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2022-12-01 13:42:59 +01:00
BoloniniD
452ef4435b Merge branch 'master' of github.com:ClickHouse/ClickHouse into BLAKE3 2022-09-16 20:05:56 +03:00
Nikita Taranov
def4eeac70
Fix perf tests (#41332)
We run left server two times. If after the first run server will not be properly stopped, we will get `Address already in use: [::]:9001` exception on the second run.
2022-09-15 12:27:08 +02:00
BoloniniD
fe239e7ee9 Fix style + free err_msg before throwing exception 2022-09-12 18:46:54 +03:00
BoloniniD
e8bcbcd016
Merge branch 'master' into BLAKE3 2022-09-09 11:48:31 +03:00
Nikita Taranov
9f1ee52b00
Run all queries from changed perf tests (#40322)
* impl

* fix
2022-08-19 19:46:07 +02:00
Alexey Milovidov
f7d995681b
Merge branch 'master' into replace-yandex-to-noto 2022-08-09 22:43:52 +03:00
Alexander Tokmakov
3bc583c22b
Revert "copy self-extracting to output" 2022-08-08 20:13:40 +03:00
Alexey Milovidov
0349d9da96 Change font in CI reports just in case (might be worse) 2022-08-08 07:25:29 +02:00
Alexey Milovidov
36e6500e54
Merge branch 'master' into BLAKE3 2022-07-30 23:14:05 +03:00
Yakov Olkhovskiy
f5442cba86 clickhouse may be compressed - run once to decompress 2022-07-29 15:06:15 -04:00
Vladimir C
bfba67cf88
Update docker/test/performance-comparison/compare.sh 2022-07-08 17:13:20 +02:00
Vladimir C
9555d72dfc
Remove head ci-checks.tsv 2022-07-08 15:26:07 +02:00
vdimir
f701b58dd0
Update check_name in performance comparsion upload 2022-07-05 14:24:58 +02:00
vdimir
e4917914ae
Revert "show grants in compare.sh"
This reverts commit 4d3a64b318aa665bf1494cca6ae94e58dc8d361e.
2022-07-05 14:00:27 +02:00
vdimir
3731bd44c1
Revert "[testing] run only one perftest"
This reverts commit 3b079827b78e04ac20043346998ce9d546969746.
2022-07-05 14:00:26 +02:00
vdimir
051dd63a62
Fix types in ci-checks.tsv in compare.sh 2022-07-05 14:00:26 +02:00
vdimir
c1d44fee9f
upd compare.sh 2022-07-05 14:00:26 +02:00
vdimir
b1ee16ef77
show grants in compare.sh 2022-07-05 14:00:26 +02:00
vdimir
18dc718e4e
do not create tables for perf tests 2022-07-05 14:00:25 +02:00
vdimir
f8fa10578c
Use default database for perf tests 2022-07-05 14:00:25 +02:00
vdimir
7352c26e89
create tables for perf tests 2022-07-05 14:00:25 +02:00
vdimir
45b2b1ca8a
[wip] persist pertest results 2022-07-05 14:00:24 +02:00
vdimir
c2d774d598
[testing] run only one perftest 2022-07-05 14:00:24 +02:00
vdimir
aac2f8aefc
Rename envs for performance comparsion 2022-07-05 14:00:24 +02:00
Alexander Tokmakov
4bf1443dae
Update download.sh 2022-06-30 01:00:08 +03:00
Alexander Tokmakov
cd2cb10f60
another try to fix performance tests 2022-06-29 20:55:46 +03:00