From 3ac28df7182159aec370a06cd8ce379ab63c294b Mon Sep 17 00:00:00 2001 From: stanbrub Date: Wed, 4 Oct 2023 17:22:30 -0600 Subject: [PATCH] Reworked the publish query based on feedback --- .../benchmark/run/PublishNotification.java | 2 +- .../benchmark/run/profile/queries/publish.py | 17 +++++++++++------ .../benchmark/run/PublishNotificationTest.java | 4 ++-- 3 files changed, 14 insertions(+), 9 deletions(-) diff --git a/src/main/java/io/deephaven/benchmark/run/PublishNotification.java b/src/main/java/io/deephaven/benchmark/run/PublishNotification.java index 7bd05dcc..10751328 100644 --- a/src/main/java/io/deephaven/benchmark/run/PublishNotification.java +++ b/src/main/java/io/deephaven/benchmark/run/PublishNotification.java @@ -19,7 +19,7 @@ */ public class PublishNotification { static final String rowIndent = " ".repeat(10); - final String[] tables = {"worst_since_last_version"}; + final String[] tables = {"nightly_worst_rate_change"}; final URL queryFile; final URL svgTemplate; final Path outputDir; diff --git a/src/main/resources/io/deephaven/benchmark/run/profile/queries/publish.py b/src/main/resources/io/deephaven/benchmark/run/profile/queries/publish.py index 44aea0ee..02689461 100644 --- a/src/main/resources/io/deephaven/benchmark/run/profile/queries/publish.py +++ b/src/main/resources/io/deephaven/benchmark/run/profile/queries/publish.py @@ -8,7 +8,7 @@ platform_details = bench_platforms.sort_descending(['run_id']).group_by(['run_id']).first_by().ungroup() -worst_since_last_version = bench_results.where([ +nightly_worst_rate_change = bench_results.where([ 'benchmark_name.endsWith(`-Static`)' ]).exact_join( bench_platforms.where(['name=`deephaven.version`']), @@ -20,15 +20,20 @@ ]).head_by(2, [ 'benchmark_name','origin' ]).update([ - 'timestamp=timestamp[0]','Variability=(float)rstd(op_rate)','op_rate=op_rate[0]' + 'past_5_rates_ex=op_rate_[i].subVector(1,6)','past_5_rates_in=op_rate','op_rate=op_rate[0]', + 'avg_rate_ex=avg(past_5_rates_ex)','var_rate_ex=rstd(past_5_rates_ex)', + 'avg_rate_in=avg(past_5_rates_in)' ]).group_by([ 'benchmark_name','origin' ]).view([ 'Static_Benchmark=benchmark_name.replace(`-Static`,``)', - 'Days=round(diffDays(epochMillisToInstant(timestamp[1]),epochMillisToInstant(timestamp[0])))', - 'Variability=Variability[0]/100','Rate=op_rate[0]','Change=(float)gain(op_rate[1],op_rate[0])/100' + 'Variability=(float)var_rate_ex[0]/100', + 'Rate=op_rate[0]', + 'Change=(float)gain(avg_rate_ex[0],op_rate[0])/100', + 'Since_Release=(float)gain(avg_rate_in[1],op_rate[0])/100' ]).sort([ 'Change' ]).head_by(20).format_columns([ - 'Variability=Decimal(`0.0%`)','Change=Decimal(`0.0%`)' -]) \ No newline at end of file + 'Variability=Decimal(`0.0%`)','Rate=Decimal(`###,##0`)', + 'Change=Decimal(`0.0%`)','Since_Release=Decimal(`0.0%`)' +]) diff --git a/src/test/java/io/deephaven/benchmark/run/PublishNotificationTest.java b/src/test/java/io/deephaven/benchmark/run/PublishNotificationTest.java index ab0e9128..a368d588 100644 --- a/src/test/java/io/deephaven/benchmark/run/PublishNotificationTest.java +++ b/src/test/java/io/deephaven/benchmark/run/PublishNotificationTest.java @@ -29,7 +29,7 @@ public class PublishNotificationTest { @Test public void generateSvg() throws Exception { URL svgTemplate = getClass().getResource("test-publish.template.svg"); - Path svgFile = Paths.get(svgTemplate.toURI()).getParent().resolveSibling("worst_since_last_version.svg"); + Path svgFile = Paths.get(svgTemplate.toURI()).getParent().resolveSibling("nightly_worst_rate_change.svg"); String svgTemp = Filer.getURLText(svgTemplate); var p = new PublishNotification(null, svgTemplate, svgFile.getParent()); var t = CachedResultTable.create(plat, "|"); @@ -70,7 +70,7 @@ public void generateSvg() throws Exception { @Test public void generateCsv() throws Exception { URL svgTemplate = getClass().getResource("test-publish.template.svg"); - Path csvFile = Paths.get(svgTemplate.toURI()).getParent().resolveSibling("worst_since_last_version.csv"); + Path csvFile = Paths.get(svgTemplate.toURI()).getParent().resolveSibling("nightly_worst_rate_change.csv"); var p = new PublishNotification(null, svgTemplate, csvFile.getParent()); var t = CachedResultTable.create(plat, "|"); t = CachedResultTable.create(csv, "|");