mirror of https://github.com/ByConity/ByConity
Merge pull request #14710 from ClickHouse/aku/faster-perf
Do less runs in perf test
This commit is contained in:
commit
9e3797b252
|
@ -8,7 +8,7 @@ select
|
||||||
from
|
from
|
||||||
(
|
(
|
||||||
-- quantiles of randomization distributions
|
-- quantiles of randomization distributions
|
||||||
select quantileExactForEach(0.999)(
|
select quantileExactForEach(0.99)(
|
||||||
arrayMap(x, y -> abs(x - y), metrics_by_label[1], metrics_by_label[2]) as d
|
arrayMap(x, y -> abs(x - y), metrics_by_label[1], metrics_by_label[2]) as d
|
||||||
) threshold
|
) threshold
|
||||||
---- uncomment to see what the distribution is really like
|
---- uncomment to see what the distribution is really like
|
||||||
|
@ -33,7 +33,7 @@ from
|
||||||
-- strip the query away before the join -- it might be several kB long;
|
-- strip the query away before the join -- it might be several kB long;
|
||||||
(select metrics, run, version from table) no_query,
|
(select metrics, run, version from table) no_query,
|
||||||
-- duplicate input measurements into many virtual runs
|
-- duplicate input measurements into many virtual runs
|
||||||
numbers(1, 100000) nn
|
numbers(1, 10000) nn
|
||||||
-- for each virtual run, randomly reorder measurements
|
-- for each virtual run, randomly reorder measurements
|
||||||
order by virtual_run, rand()
|
order by virtual_run, rand()
|
||||||
) virtual_runs
|
) virtual_runs
|
||||||
|
|
|
@ -20,7 +20,7 @@ parser = argparse.ArgumentParser(description='Run performance test.')
|
||||||
parser.add_argument('file', metavar='FILE', type=argparse.FileType('r', encoding='utf-8'), nargs=1, help='test description file')
|
parser.add_argument('file', metavar='FILE', type=argparse.FileType('r', encoding='utf-8'), nargs=1, help='test description file')
|
||||||
parser.add_argument('--host', nargs='*', default=['localhost'], help="Server hostname(s). Corresponds to '--port' options.")
|
parser.add_argument('--host', nargs='*', default=['localhost'], help="Server hostname(s). Corresponds to '--port' options.")
|
||||||
parser.add_argument('--port', nargs='*', default=[9000], help="Server port(s). Corresponds to '--host' options.")
|
parser.add_argument('--port', nargs='*', default=[9000], help="Server port(s). Corresponds to '--host' options.")
|
||||||
parser.add_argument('--runs', type=int, default=int(os.environ.get('CHPC_RUNS', 13)), help='Number of query runs per server. Defaults to CHPC_RUNS environment variable.')
|
parser.add_argument('--runs', type=int, default=int(os.environ.get('CHPC_RUNS', 7)), help='Number of query runs per server. Defaults to CHPC_RUNS environment variable.')
|
||||||
parser.add_argument('--long', action='store_true', help='Do not skip the tests tagged as long.')
|
parser.add_argument('--long', action='store_true', help='Do not skip the tests tagged as long.')
|
||||||
parser.add_argument('--print-queries', action='store_true', help='Print test queries and exit.')
|
parser.add_argument('--print-queries', action='store_true', help='Print test queries and exit.')
|
||||||
parser.add_argument('--print-settings', action='store_true', help='Print test settings and exit.')
|
parser.add_argument('--print-settings', action='store_true', help='Print test settings and exit.')
|
||||||
|
|
|
@ -372,7 +372,7 @@ if args.report == 'main':
|
||||||
'New, s', # 1
|
'New, s', # 1
|
||||||
'Ratio of speedup (-) or slowdown (+)', # 2
|
'Ratio of speedup (-) or slowdown (+)', # 2
|
||||||
'Relative difference (new − old) / old', # 3
|
'Relative difference (new − old) / old', # 3
|
||||||
'p < 0.001 threshold', # 4
|
'p < 0.01 threshold', # 4
|
||||||
# Failed # 5
|
# Failed # 5
|
||||||
'Test', # 6
|
'Test', # 6
|
||||||
'#', # 7
|
'#', # 7
|
||||||
|
@ -416,7 +416,7 @@ if args.report == 'main':
|
||||||
'Old, s', #0
|
'Old, s', #0
|
||||||
'New, s', #1
|
'New, s', #1
|
||||||
'Relative difference (new - old)/old', #2
|
'Relative difference (new - old)/old', #2
|
||||||
'p < 0.001 threshold', #3
|
'p < 0.01 threshold', #3
|
||||||
# Failed #4
|
# Failed #4
|
||||||
'Test', #5
|
'Test', #5
|
||||||
'#', #6
|
'#', #6
|
||||||
|
@ -470,12 +470,13 @@ if args.report == 'main':
|
||||||
text = tableStart('Test times')
|
text = tableStart('Test times')
|
||||||
text += tableHeader(columns)
|
text += tableHeader(columns)
|
||||||
|
|
||||||
nominal_runs = 13 # FIXME pass this as an argument
|
nominal_runs = 7 # FIXME pass this as an argument
|
||||||
total_runs = (nominal_runs + 1) * 2 # one prewarm run, two servers
|
total_runs = (nominal_runs + 1) * 2 # one prewarm run, two servers
|
||||||
|
allowed_average_run_time = allowed_single_run_time + 60 / total_runs; # some allowance for fill/create queries
|
||||||
attrs = ['' for c in columns]
|
attrs = ['' for c in columns]
|
||||||
for r in rows:
|
for r in rows:
|
||||||
anchor = f'{currentTableAnchor()}.{r[0]}'
|
anchor = f'{currentTableAnchor()}.{r[0]}'
|
||||||
if float(r[6]) > 1.5 * total_runs:
|
if float(r[6]) > allowed_average_run_time * total_runs:
|
||||||
# FIXME should be 15s max -- investigate parallel_insert
|
# FIXME should be 15s max -- investigate parallel_insert
|
||||||
slow_average_tests += 1
|
slow_average_tests += 1
|
||||||
attrs[6] = f'style="background: {color_bad}"'
|
attrs[6] = f'style="background: {color_bad}"'
|
||||||
|
@ -649,7 +650,7 @@ elif args.report == 'all-queries':
|
||||||
'New, s', #3
|
'New, s', #3
|
||||||
'Ratio of speedup (-) or slowdown (+)', #4
|
'Ratio of speedup (-) or slowdown (+)', #4
|
||||||
'Relative difference (new − old) / old', #5
|
'Relative difference (new − old) / old', #5
|
||||||
'p < 0.001 threshold', #6
|
'p < 0.01 threshold', #6
|
||||||
'Test', #7
|
'Test', #7
|
||||||
'#', #8
|
'#', #8
|
||||||
'Query', #9
|
'Query', #9
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
<test max_ignored_relative_change="0.2">
|
<test max_ignored_relative_change="1.0">
|
||||||
<create_query>CREATE TABLE ints (i64 Int64, i32 Int32, i16 Int16, i8 Int8) ENGINE = Memory</create_query>
|
<create_query>CREATE TABLE ints (i64 Int64, i32 Int32, i16 Int16, i8 Int8) ENGINE = Memory</create_query>
|
||||||
<create_query>SET join_algorithm = 'partial_merge'</create_query>
|
<create_query>SET join_algorithm = 'partial_merge'</create_query>
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue