Skip to content

Commit

Permalink
Merge branch 'deephaven:main' into handle-per-operation-logging
Browse files Browse the repository at this point in the history
  • Loading branch information
stanbrub authored Dec 5, 2023
2 parents 9b7108c + 507b80f commit f4cab79
Show file tree
Hide file tree
Showing 4 changed files with 18 additions and 34 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -136,17 +136,17 @@ def add_platform_value(pname, new_pname):
add_metric_value_diff('GarbageCollectorExtImpl', 'G1 Old Generation', 'CollectionTime', 'g1_old_collect_time')

import statistics
def rstd(rates):
def rstd(rates) -> float:
rates = [i for i in rates if i >= 0]
mean = statistics.mean(rates)
return (statistics.pstdev(rates) * 100.0 / mean) if mean != 0 else 0.0

def zscore(rate, rates):
def zscore(rate, rates) -> float:
rates = [i for i in rates if i >= 0]
std = statistics.pstdev(rates)
return ((rate - statistics.mean(rates)) / std) if std != 0 else 0.0

def zprob(zscore):
def zprob(zscore) -> float:
lower = -abs(zscore)
upper = abs(zscore)
return 1 - (statistics.NormalDist().cdf(upper) - statistics.NormalDist().cdf(lower))
Expand All @@ -158,7 +158,7 @@ def rchange(rates) -> float:
m = statistics.mean(rates[:-1])
return (rates[-1] - m) / m * 100.0

def gain(start:float, end:float) -> float:
def gain(start, end) -> float:
return (end - start) / start * 100.0

def format_rates(rates):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,11 +31,11 @@ def op_by_date_range(begin_millis, end_millis, op_prefix):
]).view([
'Benchmark=benchmark_name', 'Start=timestamp[0]', 'End=timestamp[len(timestamp)-1]',
'Start_Rate=op_rate[0]', 'End_Rate=op_rate[len(op_rate)-1]',
'Rate_Change=(float)gain(Start_Rate, End_Rate)',
'Rate_Change=gain(Start_Rate, End_Rate)',
'Start_Heap_Used=(long)heap_used[0]', 'End_Heap_Used=(long)heap_used[len(heap_used)-1]',
'Heap_Used_Change=(float)gain(Start_Heap_Used, End_Heap_Used)',
'Heap_Used_Change=gain(Start_Heap_Used, End_Heap_Used)',
'Start_NonHeap_Used=(long)non_heap_used[0]', 'End_NonHeap_Used=(long)non_heap_used[len(non_heap_used)-1]',
'NonHeap_Used_Change=(float)gain(Start_NonHeap_Used, End_NonHeap_Used)'
'NonHeap_Used_Change=gain(Start_NonHeap_Used, End_NonHeap_Used)'
]).where([
'!Benchmark.contains(`Rows Per`)'
])
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,22 +12,6 @@
benchmark_max_runs_arg = 45 # Latest X runs to include
exec(r.read().decode(), globals(), locals())

import statistics
def rstd(rates):
rates = [i for i in rates if i >= 0]
mean = statistics.mean(rates)
return (statistics.pstdev(rates) * 100.0 / mean) if mean != 0 else 0.0

def zscore(rate, rates):
rates = [i for i in rates if i >= 0]
std = statistics.pstdev(rates)
return ((rate - statistics.mean(rates)) / std) if std != 0 else 0.0

def zprob(zscore):
lower = -abs(zscore)
upper = abs(zscore)
return 1 - (statistics.NormalDist().cdf(upper) - statistics.NormalDist().cdf(lower))

# Used to provide platform (e.g. hardware, jvm version) for SVG footer during publish
platform_details = bench_platforms.sort_descending(['run_id']).group_by(['run_id']).first_by().ungroup()

Expand Down Expand Up @@ -67,18 +51,18 @@ def zprob(zscore):
'all_past_rates=all_rates.subVector(1,len(all_rates))',
'past_5_rates=all_past_rates.subVector(0,6)',
'last_5_prev_vers_rates=ifelseObj(op_rate[1]!=null,op_rate[1],op_rate[0]).subVector(0,6)',
'op_rate=all_rates[0]','var_rate=(float)rstd(past_5_rates)',
'op_rate=all_rates[0]','var_rate=rstd(past_5_rates)',
'avg_rate=avg(past_5_rates)','prev_vers_avg_rate=avg(last_5_prev_vers_rates)',
'score=(float)zscore(op_rate,past_5_rates)',
'prev_vers_score=(float)zscore(op_rate,last_5_prev_vers_rates)',
'prob=(float)zprob(score)'
'score=zscore(op_rate,past_5_rates)',
'prev_vers_score=zscore(op_rate,last_5_prev_vers_rates)',
'prob=zprob(score)'
])

nightly_worst_score_large = nightly_score.view([
'Static_Benchmark=benchmark_name.replace(` -Static`,``)',
'Variability=(float)var_rate/100','Rate=op_rate',
'Change=(float)gain(avg_rate,op_rate)/100',
'Since_Release=(float)gain(prev_vers_avg_rate,op_rate)/100',
'Variability=var_rate/100','Rate=op_rate',
'Change=gain(avg_rate,op_rate)/100',
'Since_Release=gain(prev_vers_avg_rate,op_rate)/100',
'Score=score','Score_Prob=prob'
]).sort(['Score']).head_by(20).format_columns([
'Variability=Decimal(`0.0%`)','Rate=Decimal(`###,##0`)',
Expand All @@ -96,9 +80,9 @@ def zprob(zscore):

nightly_best_score_large = nightly_score.view([
'Static_Benchmark=benchmark_name.replace(` -Static`,``)',
'Variability=(float)var_rate/100','Rate=op_rate',
'Change=(float)gain(avg_rate,op_rate)/100',
'Since_Release=(float)gain(prev_vers_avg_rate,op_rate)/100',
'Variability=var_rate/100','Rate=op_rate',
'Change=gain(avg_rate,op_rate)/100',
'Since_Release=gain(prev_vers_avg_rate,op_rate)/100',
'Score=score','Score_Prob=prob'
]).sort_descending(['Score']).head_by(20).format_columns([
'Variability=Decimal(`0.0%`)','Rate=Decimal(`###,##0`)',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ def latest_comparable_benchmarks(results_tbl):
]).update([
'op_group_rates=vec(reverse(op_group_rates)).subVector(0, versLen)',
'op_group_versions=vecObj(reverseObj(op_group_versions)).subVector(0, versLen)',
'Change=(float)gain(op_group_rates[1], op_group_rates[0])'
'Change=gain(op_group_rates[1], op_group_rates[0])'
]).update([
(vers[i] + "=op_group_rates[" + str(i) + "]") for i in range(versLen)
]).view([
Expand Down

0 comments on commit f4cab79

Please sign in to comment.