Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

opt: 20.2 release checklist #46599

Closed
8 tasks done
RaduBerinde opened this issue Mar 26, 2020 · 16 comments
Closed
8 tasks done

opt: 20.2 release checklist #46599

RaduBerinde opened this issue Mar 26, 2020 · 16 comments
Assignees

Comments

@RaduBerinde
Copy link
Member

RaduBerinde commented Mar 26, 2020

This issue captures a series of tests and steps that we need to run when 20.2 is getting close to being finalized.

  • check bug fixes that may need backport
  • check and update private opt tests repository
  • check regressions in microbenchmarks
  • run all tests with TAGS=fast_int_set_small and TAGS=fast_int_set_large
  • check that any new session settings have a cluster setting for the default (or a good justification for why not)
  • consider adding session+cluster settings for all new features
  • check TODOs in opt code (especially those added since the last release)
  • clone an instance of this issue for the next release
@RaduBerinde RaduBerinde self-assigned this Mar 30, 2020
@rytaft
Copy link
Collaborator

rytaft commented Sep 3, 2020

I guess we should leave "check bug fixes that may need backport" open for now since we haven't cut the branch yet. This will become relevant if we find any bugs after the branch is cut.

I'm working on "check and update private opt tests repository" now

@rytaft
Copy link
Collaborator

rytaft commented Sep 9, 2020

I ran the microbenchmarks, comparing a commit from the beginning of the release with master. Here are the results:

name                                      old time/op    new time/op    delta
IndexConstraints/single-jumbo-span-100-4    1.89ms ±25%    1.09ms ±21%   -42.32%  (p=0.000 n=9+9)
FKInsert/MultiRowMultiParent/FastPath-4     2.00ms ±43%    1.15ms ±33%   -42.25%  (p=0.000 n=10+10)
FKInsert/MultiRowSingleParent/FastPath-4    1.62ms ±51%    0.94ms ±26%   -42.06%  (p=0.000 n=10+10)
IndexConstraints/single-jumbo-span-10-4     27.4µs ±29%    19.0µs ±17%   -30.71%  (p=0.000 n=9+8)
FKInsert/SingleRow/FastPath-4                943µs ±21%     656µs ±29%   -30.44%  (p=0.000 n=10+10)
ColSet/colset-4                              209ns ±22%     151ns ± 6%   -27.81%  (p=0.000 n=9+9)
ColSet/fastintset-4                          190ns ±10%     148ns ± 9%   -22.45%  (p=0.000 n=9+10)
Phases/kv-read/Parse-4                      3.46ns ±22%    3.75ns ±19%      ~     (p=0.346 n=10+9)
Phases/kv-read/OptBuild-4                   9.14µs ±47%   11.02µs ±43%      ~     (p=0.143 n=10+10)
Phases/kv-read/Normalize-4                  8.72µs ±52%   10.06µs ±22%      ~     (p=0.156 n=10+9)
Phases/kv-read/Explore-4                    14.5µs ±23%    17.2µs ±18%      ~     (p=0.101 n=10+8)
Phases/kv-read/ExecBuild-4                  15.4µs ±23%    18.6µs ±26%      ~     (p=0.077 n=9+9)
Phases/kv-read-no-prep/Parse-4              17.9µs ±27%    17.6µs ±14%      ~     (p=0.968 n=10+9)
Phases/kv-read-no-prep/OptBuild-4           41.0µs ±54%    45.0µs ±33%      ~     (p=0.211 n=10+9)
Phases/kv-read-no-prep/Normalize-4          43.2µs ±48%    49.6µs ±28%      ~     (p=0.190 n=10+10)
Phases/kv-read-no-prep/Explore-4            48.5µs ±21%    59.3µs ±31%      ~     (p=0.053 n=10+9)
Phases/kv-read-no-prep/ExecBuild-4          49.8µs ±20%    59.2µs ±20%      ~     (p=0.052 n=10+10)
Phases/kv-read-const/Parse-4                3.36ns ±18%    3.34ns ±17%      ~     (p=0.986 n=10+9)
Phases/tpcc-new-order/Parse-4               3.69ns ±33%    3.40ns ±16%      ~     (p=0.579 n=10+10)
Phases/tpcc-new-order/OptBuild-4            18.1µs ±24%    18.8µs ±21%      ~     (p=0.579 n=10+10)
Phases/tpcc-new-order/Normalize-4           17.8µs ±37%    19.8µs ±23%      ~     (p=0.218 n=10+10)
Phases/tpcc-new-order/Explore-4             48.9µs ±19%    56.8µs ±54%      ~     (p=0.105 n=10+10)
Phases/tpcc-new-order/ExecBuild-4           51.4µs ±21%    58.8µs ±57%      ~     (p=0.182 n=9+10)
Phases/tpcc-delivery/Parse-4                3.37ns ±15%    3.53ns ±20%      ~     (p=0.434 n=9+10)
Phases/tpcc-delivery/ExecBuild-4            36.8µs ±28%    41.6µs ±21%      ~     (p=0.133 n=10+9)
Phases/tpcc-stock-level/Parse-4             3.52ns ±35%    3.38ns ±15%      ~     (p=0.535 n=10+9)
Phases/tpcc-stock-level/Normalize-4         71.9µs ±51%    82.7µs ±37%      ~     (p=0.165 n=10+10)
Phases/tpcc-stock-level/Explore-4            239µs ±30%     237µs ±58%      ~     (p=0.661 n=10+9)
Phases/tpcc-stock-level/ExecBuild-4          255µs ±33%     243µs ±24%      ~     (p=0.739 n=10+10)
EndToEnd/kv-read/EndToEnd-4                  279µs ±32%     308µs ±33%      ~     (p=0.356 n=9+10)
EndToEnd/kv-read-no-prep/EndToEnd-4          457µs ±37%     490µs ±30%      ~     (p=0.579 n=10+10)
EndToEnd/kv-read-const/EndToEnd-4            229µs ±38%     235µs ±23%      ~     (p=0.853 n=10+10)
EndToEnd/tpcc-new-order/EndToEnd-4           418µs ±38%     396µs ±24%      ~     (p=0.699 n=10+10)
EndToEnd/tpcc-delivery/EndToEnd-4            367µs ±56%     353µs ±26%      ~     (p=0.971 n=10+10)
EndToEnd/tpcc-stock-level/EndToEnd-4         897µs ±36%     869µs ±22%      ~     (p=0.842 n=10+9)
Chain/chain-1/Explore-4                     21.3µs ±52%    19.6µs ±20%      ~     (p=0.912 n=10+10)
Chain/chain-3/Explore-4                      213µs ±44%     239µs ±23%      ~     (p=0.211 n=10+9)
Chain/chain-4/Explore-4                      292µs ±28%     357µs ±31%      ~     (p=0.089 n=10+10)
Chain/chain-5/Explore-4                      423µs ±56%     477µs ±24%      ~     (p=0.280 n=10+10)
FKInsert/SingleRow/None-4                    777µs ±21%     892µs ±63%      ~     (p=0.579 n=10+10)
FKInsert/MultiRowSingleParent/None-4        1.34ms ±62%    1.22ms ±27%      ~     (p=0.356 n=10+9)
FKInsert/MultiRowMultiParent/None-4         1.46ms ±54%    1.41ms ±26%      ~     (p=0.853 n=10+10)
IndexConstraints/point-lookup-4              615ns ±17%     596ns ±25%      ~     (p=0.268 n=9+9)
IndexConstraints/no-constraints-4            568ns ± 6%     564ns ±33%      ~     (p=0.258 n=9+9)
IndexConstraints/range-4                    1.11µs ±11%    1.10µs ± 8%      ~     (p=0.869 n=9+8)
IndexConstraints/range-2d-4                 6.29µs ± 7%    6.54µs ±19%      ~     (p=0.382 n=8+8)
IndexConstraints/many-columns-4             14.2µs ±12%    13.9µs ±26%      ~     (p=0.370 n=8+9)
Phases/tpcc-delivery/Explore-4              33.0µs ±21%    38.7µs ±26%   +17.52%  (p=0.043 n=10+9)
Chain/chain-2/Explore-4                     97.8µs ±29%   121.9µs ±21%   +24.56%  (p=0.017 n=9+10)
Phases/tpcc-stock-level/OptBuild-4          63.5µs ±25%    79.7µs ±32%   +25.57%  (p=0.019 n=9+9)
Phases/tpcc-delivery/Normalize-4            14.8µs ±25%    18.7µs ±28%   +26.72%  (p=0.017 n=10+9)
Chain/chain-6/Explore-4                      475µs ±37%     611µs ±25%   +28.72%  (p=0.015 n=10+10)
Phases/tpcc-delivery/OptBuild-4             14.5µs ±37%    18.7µs ±27%   +28.78%  (p=0.009 n=10+10)
Phases/kv-read-const/ExecBuild-4             837ns ±32%    1103ns ±38%   +31.80%  (p=0.009 n=10+10)
Chain/chain-7/Explore-4                      568µs ±25%     753µs ±24%   +32.73%  (p=0.007 n=10+10)
Chain/chain-18/Explore-4                    2.62ms ±44%    3.49ms ±22%   +33.25%  (p=0.004 n=10+10)
Chain/chain-14/Explore-4                    1.68ms ±24%    2.25ms ±19%   +33.72%  (p=0.002 n=10+10)
Chain/chain-17/Explore-4                    2.29ms ±42%    3.07ms ±20%   +34.11%  (p=0.002 n=10+10)
Chain/chain-11/Explore-4                    1.12ms ±32%    1.51ms ±24%   +35.37%  (p=0.004 n=10+10)
Chain/chain-8/Explore-4                      679µs ±38%     925µs ±24%   +36.26%  (p=0.002 n=10+10)
Chain/chain-12/Explore-4                    1.25ms ±33%    1.71ms ±21%   +36.80%  (p=0.003 n=10+10)
Chain/chain-9/Explore-4                      800µs ±33%    1102µs ±22%   +37.77%  (p=0.001 n=10+10)
Chain/chain-16/Explore-4                    2.08ms ±24%    2.90ms ±38%   +39.49%  (p=0.002 n=9+10)
Chain/chain-13/Explore-4                    1.36ms ±29%    1.94ms ±24%   +42.85%  (p=0.000 n=10+10)
Chain/chain-10/Explore-4                     905µs ±39%    1301µs ±23%   +43.66%  (p=0.000 n=9+10)
Chain/chain-19/Explore-4                    2.78ms ±45%    4.22ms ±22%   +51.82%  (p=0.000 n=10+10)
Chain/chain-15/Explore-4                    1.82ms ±21%    2.82ms ±49%   +54.47%  (p=0.000 n=9+10)
Phases/kv-read-const/Explore-4               137ns ±23%     308ns ±25%  +124.16%  (p=0.000 n=10+9)
Phases/kv-read-const/OptBuild-4              122ns ±44%     283ns ±24%  +131.37%  (p=0.000 n=10+10)
Phases/kv-read-const/Normalize-4             121ns ±37%     284ns ±33%  +134.95%  (p=0.000 n=10+10)

name                                      old alloc/op   new alloc/op   delta
FKInsert/MultiRowSingleParent/FastPath-4     299kB ± 0%     123kB ± 0%   -58.95%  (p=0.000 n=10+9)
FKInsert/MultiRowMultiParent/FastPath-4      323kB ± 0%     145kB ± 2%   -55.06%  (p=0.000 n=9+9)
FKInsert/SingleRow/FastPath-4               70.6kB ± 1%    54.5kB ± 1%   -22.79%  (p=0.000 n=10+10)
EndToEnd/tpcc-new-order/EndToEnd-4          48.1kB ± 1%    37.8kB ± 1%   -21.52%  (p=0.000 n=10+9)
EndToEnd/tpcc-stock-level/EndToEnd-4         144kB ± 0%     122kB ± 1%   -15.33%  (p=0.000 n=8+10)
Phases/tpcc-stock-level/Explore-4           52.8kB ± 0%    45.2kB ± 0%   -14.46%  (p=0.000 n=10+9)
Phases/tpcc-stock-level/ExecBuild-4         53.7kB ± 0%    46.1kB ± 0%   -14.02%  (p=0.000 n=10+10)
ColSet/fastintset-4                          0.00B          0.00B           ~     (all equal)
ColSet/colset-4                              0.00B          0.00B           ~     (all equal)
Phases/kv-read/Parse-4                       0.00B          0.00B           ~     (all equal)
Phases/kv-read-no-prep/Parse-4              3.54kB ± 0%    3.54kB ± 0%      ~     (all equal)
Phases/kv-read-const/Parse-4                 0.00B          0.00B           ~     (all equal)
Phases/tpcc-new-order/Parse-4                0.00B          0.00B           ~     (all equal)
Phases/tpcc-delivery/Parse-4                 0.00B          0.00B           ~     (all equal)
Phases/tpcc-stock-level/Parse-4              0.00B          0.00B           ~     (all equal)
IndexConstraints/point-lookup-4               528B ± 0%      528B ± 0%      ~     (all equal)
IndexConstraints/no-constraints-4             528B ± 0%      528B ± 0%      ~     (all equal)
IndexConstraints/range-4                      528B ± 0%      528B ± 0%      ~     (all equal)
Phases/tpcc-new-order/ExecBuild-4           11.7kB ± 0%    11.8kB ± 0%    +0.54%  (p=0.000 n=9+10)
Phases/tpcc-new-order/Explore-4             11.4kB ± 0%    11.5kB ± 0%    +0.56%  (p=0.000 n=10+9)
EndToEnd/tpcc-delivery/EndToEnd-4           31.1kB ± 0%    31.4kB ± 1%    +0.99%  (p=0.000 n=9+10)
EndToEnd/kv-read-const/EndToEnd-4           19.9kB ± 1%    20.4kB ± 1%    +2.47%  (p=0.000 n=10+10)
EndToEnd/kv-read/EndToEnd-4                 24.4kB ± 1%    25.3kB ± 1%    +3.48%  (p=0.000 n=10+10)
EndToEnd/kv-read-no-prep/EndToEnd-4         30.1kB ± 0%    31.3kB ± 1%    +4.06%  (p=0.000 n=10+10)
Phases/tpcc-delivery/Explore-4              8.80kB ± 0%    9.28kB ± 0%    +5.45%  (p=0.000 n=10+10)
Phases/tpcc-delivery/ExecBuild-4            8.99kB ± 0%    9.49kB ± 0%    +5.51%  (p=0.000 n=9+8)
Phases/tpcc-new-order/OptBuild-4            4.82kB ± 0%    5.11kB ± 0%    +5.97%  (p=0.000 n=10+10)
Phases/tpcc-new-order/Normalize-4           4.82kB ± 0%    5.11kB ± 0%    +5.97%  (p=0.000 n=10+10)
Phases/kv-read/ExecBuild-4                  4.59kB ± 0%    4.93kB ± 0%    +7.32%  (p=0.000 n=10+9)
Phases/kv-read/Explore-4                    4.37kB ± 0%    4.69kB ± 0%    +7.33%  (p=0.000 n=10+10)
Phases/tpcc-delivery/Normalize-4            4.85kB ± 0%    5.23kB ± 0%    +7.92%  (p=0.000 n=10+10)
Phases/tpcc-delivery/OptBuild-4             4.82kB ± 0%    5.20kB ± 0%    +7.97%  (p=0.000 n=10+10)
Phases/tpcc-stock-level/OptBuild-4          16.1kB ± 0%    17.6kB ± 0%    +9.45%  (p=0.000 n=8+10)
Phases/tpcc-stock-level/Normalize-4         15.8kB ± 0%    17.3kB ± 0%    +9.60%  (p=0.000 n=10+10)
Phases/kv-read/OptBuild-4                   2.86kB ± 0%    3.15kB ± 0%   +10.06%  (p=0.000 n=10+10)
Phases/kv-read/Normalize-4                  2.86kB ± 0%    3.15kB ± 0%   +10.06%  (p=0.000 n=10+10)
IndexConstraints/many-columns-4             3.86kB ± 0%    4.44kB ± 0%   +14.91%  (p=0.000 n=10+10)
Phases/kv-read-no-prep/OptBuild-4           9.08kB ± 0%   10.58kB ± 0%   +16.47%  (p=0.000 n=10+10)
Chain/chain-2/Explore-4                     21.4kB ± 0%    26.2kB ± 0%   +22.10%  (p=0.000 n=9+10)
Chain/chain-3/Explore-4                     41.5kB ± 0%    51.0kB ± 0%   +22.88%  (p=0.000 n=10+10)
Chain/chain-4/Explore-4                     61.8kB ± 0%    76.5kB ± 0%   +23.85%  (p=0.000 n=9+10)
FKInsert/MultiRowMultiParent/None-4          286kB ± 0%     355kB ± 1%   +23.88%  (p=0.000 n=10+10)
FKInsert/MultiRowSingleParent/None-4         283kB ± 0%     352kB ± 1%   +24.37%  (p=0.000 n=10+10)
Chain/chain-5/Explore-4                     85.8kB ± 0%   107.5kB ± 0%   +25.37%  (p=0.000 n=10+10)
Chain/chain-1/Explore-4                     6.29kB ± 0%    7.89kB ± 0%   +25.45%  (p=0.000 n=10+10)
IndexConstraints/single-jumbo-span-100-4     171kB ± 0%     214kB ± 0%   +25.48%  (p=0.000 n=10+10)
Phases/kv-read-no-prep/ExecBuild-4          10.8kB ± 0%    13.6kB ± 0%   +26.20%  (p=0.000 n=10+9)
Phases/kv-read-no-prep/Explore-4            10.6kB ± 0%    13.4kB ± 0%   +26.56%  (p=0.000 n=10+8)
FKInsert/SingleRow/None-4                   56.1kB ± 0%    71.7kB ± 1%   +27.84%  (p=0.000 n=10+10)
Chain/chain-6/Explore-4                      113kB ± 0%     145kB ± 0%   +28.00%  (p=0.000 n=10+10)
Phases/kv-read-no-prep/Normalize-4          9.08kB ± 0%   11.86kB ± 0%   +30.58%  (p=0.000 n=10+10)
Chain/chain-7/Explore-4                      141kB ± 0%     185kB ± 0%   +31.17%  (p=0.000 n=10+10)
Chain/chain-9/Explore-4                      225kB ± 0%     298kB ± 0%   +32.73%  (p=0.000 n=10+10)
Chain/chain-10/Explore-4                     259kB ± 0%     347kB ± 0%   +34.00%  (p=0.000 n=10+10)
Chain/chain-14/Explore-4                     500kB ± 0%     672kB ± 0%   +34.37%  (p=0.000 n=10+9)
Chain/chain-8/Explore-4                      168kB ± 0%     226kB ± 0%   +34.49%  (p=0.000 n=10+10)
Chain/chain-16/Explore-4                     637kB ± 0%     860kB ± 0%   +34.85%  (p=0.000 n=10+10)
Chain/chain-17/Explore-4                     703kB ± 0%     952kB ± 0%   +35.44%  (p=0.000 n=10+10)
Chain/chain-15/Explore-4                     556kB ± 0%     753kB ± 0%   +35.44%  (p=0.000 n=10+10)
Chain/chain-12/Explore-4                     349kB ± 0%     473kB ± 0%   +35.71%  (p=0.000 n=9+10)
Chain/chain-11/Explore-4                     297kB ± 0%     403kB ± 0%   +35.72%  (p=0.000 n=10+10)
Chain/chain-18/Explore-4                     773kB ± 0%    1050kB ± 0%   +35.88%  (p=0.000 n=10+9)
Chain/chain-19/Explore-4                     845kB ± 0%    1149kB ± 0%   +36.07%  (p=0.000 n=10+10)
Chain/chain-13/Explore-4                     396kB ± 0%     542kB ± 0%   +37.07%  (p=0.000 n=10+10)
IndexConstraints/range-2d-4                 1.50kB ± 0%    2.08kB ± 0%   +38.30%  (p=0.000 n=10+10)
Phases/kv-read-const/ExecBuild-4              264B ± 0%      456B ± 0%   +72.73%  (p=0.000 n=10+10)
IndexConstraints/single-jumbo-span-10-4     2.34kB ± 0%    6.37kB ± 0%  +172.60%  (p=0.000 n=10+10)
Phases/kv-read-const/OptBuild-4              48.0B ± 0%    224.0B ± 0%  +366.67%  (p=0.000 n=10+10)
Phases/kv-read-const/Normalize-4             48.0B ± 0%    224.0B ± 0%  +366.67%  (p=0.000 n=10+10)
Phases/kv-read-const/Explore-4               48.0B ± 0%    224.0B ± 0%  +366.67%  (p=0.000 n=10+10)

name                                      old allocs/op  new allocs/op  delta
FKInsert/MultiRowSingleParent/FastPath-4     1.86k ± 0%     0.98k ± 0%   -47.04%  (p=0.000 n=9+9)
FKInsert/MultiRowMultiParent/FastPath-4      2.01k ± 0%     1.15k ± 0%   -42.80%  (p=0.000 n=10+8)
FKInsert/SingleRow/FastPath-4                  671 ± 0%       472 ± 0%   -29.61%  (p=0.000 n=10+10)
Phases/tpcc-stock-level/Explore-4              281 ± 0%       251 ± 0%   -10.68%  (p=0.000 n=10+10)
Phases/tpcc-stock-level/ExecBuild-4            293 ± 0%       263 ± 0%   -10.24%  (p=0.000 n=10+10)
Phases/tpcc-new-order/ExecBuild-4             67.0 ± 0%      66.0 ± 0%    -1.49%  (p=0.000 n=10+10)
FKInsert/MultiRowSingleParent/None-4         1.71k ± 1%     1.70k ± 1%    -0.72%  (p=0.000 n=10+10)
ColSet/fastintset-4                           0.00           0.00           ~     (all equal)
ColSet/colset-4                               0.00           0.00           ~     (all equal)
Phases/kv-read/Parse-4                        0.00           0.00           ~     (all equal)
Phases/kv-read-no-prep/Parse-4                28.0 ± 0%      28.0 ± 0%      ~     (all equal)
Phases/kv-read-const/Parse-4                  0.00           0.00           ~     (all equal)
Phases/tpcc-new-order/Parse-4                 0.00           0.00           ~     (all equal)
Phases/tpcc-new-order/Explore-4               62.0 ± 0%      62.0 ± 0%      ~     (all equal)
Phases/tpcc-delivery/Parse-4                  0.00           0.00           ~     (all equal)
Phases/tpcc-stock-level/Parse-4               0.00           0.00           ~     (all equal)
IndexConstraints/point-lookup-4               2.00 ± 0%      2.00 ± 0%      ~     (all equal)
IndexConstraints/no-constraints-4             2.00 ± 0%      2.00 ± 0%      ~     (all equal)
IndexConstraints/range-4                      2.00 ± 0%      2.00 ± 0%      ~     (all equal)
FKInsert/MultiRowMultiParent/None-4          1.68k ± 0%     1.69k ± 0%    +0.33%  (p=0.000 n=10+10)
IndexConstraints/many-columns-4               33.0 ± 0%      34.0 ± 0%    +3.03%  (p=0.000 n=10+10)
EndToEnd/tpcc-stock-level/EndToEnd-4           741 ± 0%       781 ± 0%    +5.44%  (p=0.000 n=8+10)
Chain/chain-3/Explore-4                        298 ± 0%       324 ± 0%    +8.72%  (p=0.000 n=10+10)
Chain/chain-4/Explore-4                        427 ± 0%       465 ± 0%    +8.90%  (p=0.000 n=8+10)
Chain/chain-2/Explore-4                        157 ± 0%       171 ± 0%    +8.92%  (p=0.000 n=10+10)
Phases/tpcc-stock-level/OptBuild-4             100 ± 0%       109 ± 0%    +9.00%  (p=0.000 n=10+10)
IndexConstraints/single-jumbo-span-100-4       200 ± 0%       218 ± 0%    +9.00%  (p=0.000 n=10+10)
Phases/kv-read/ExecBuild-4                    33.0 ± 0%      36.0 ± 0%    +9.09%  (p=0.000 n=10+10)
Phases/tpcc-stock-level/Normalize-4           99.0 ± 0%     108.0 ± 0%    +9.09%  (p=0.000 n=10+10)
Chain/chain-5/Explore-4                        560 ± 0%       613 ± 0%    +9.46%  (p=0.000 n=10+10)
Phases/tpcc-delivery/ExecBuild-4              52.0 ± 0%      57.0 ± 0%    +9.62%  (p=0.000 n=10+10)
Phases/kv-read/Explore-4                      30.0 ± 0%      33.0 ± 0%   +10.00%  (p=0.000 n=10+10)
Phases/tpcc-new-order/OptBuild-4              30.0 ± 0%      33.0 ± 0%   +10.00%  (p=0.000 n=10+10)
Phases/tpcc-new-order/Normalize-4             30.0 ± 0%      33.0 ± 0%   +10.00%  (p=0.000 n=10+10)
IndexConstraints/range-2d-4                   10.0 ± 0%      11.0 ± 0%   +10.00%  (p=0.000 n=10+10)
Chain/chain-6/Explore-4                        694 ± 0%       766 ± 0%   +10.37%  (p=0.000 n=10+10)
Phases/tpcc-delivery/Explore-4                48.0 ± 0%      53.0 ± 0%   +10.42%  (p=0.000 n=10+10)
Chain/chain-7/Explore-4                        832 ± 0%       926 ± 0%   +11.25%  (p=0.000 n=10+10)
FKInsert/SingleRow/None-4                      545 ± 0%       607 ± 1%   +11.42%  (p=0.000 n=10+10)
Phases/kv-read-no-prep/OptBuild-4             70.0 ± 0%      78.0 ± 0%   +11.43%  (p=0.000 n=10+10)
EndToEnd/kv-read-no-prep/EndToEnd-4            295 ± 0%       330 ± 0%   +11.71%  (p=0.000 n=10+6)
EndToEnd/tpcc-new-order/EndToEnd-4             290 ± 0%       324 ± 0%   +11.72%  (p=0.000 n=8+7)
Chain/chain-8/Explore-4                        971 ± 0%      1088 ± 0%   +12.02%  (p=0.000 n=10+10)
EndToEnd/kv-read/EndToEnd-4                    230 ± 1%       259 ± 1%   +12.35%  (p=0.000 n=9+10)
Chain/chain-9/Explore-4                      1.13k ± 0%     1.27k ± 0%   +12.48%  (p=0.000 n=10+10)
Chain/chain-10/Explore-4                     1.27k ± 0%     1.44k ± 0%   +13.03%  (p=0.000 n=9+8)
Phases/kv-read/OptBuild-4                     23.0 ± 0%      26.0 ± 0%   +13.04%  (p=0.000 n=10+10)
Phases/kv-read/Normalize-4                    23.0 ± 0%      26.0 ± 0%   +13.04%  (p=0.000 n=10+10)
EndToEnd/kv-read-const/EndToEnd-4              193 ± 0%       218 ± 0%   +13.21%  (p=0.000 n=10+10)
EndToEnd/tpcc-delivery/EndToEnd-4              263 ± 0%       298 ± 0%   +13.46%  (p=0.000 n=10+10)
Chain/chain-11/Explore-4                     1.42k ± 0%     1.61k ± 0%   +13.47%  (p=0.000 n=9+10)
Chain/chain-12/Explore-4                     1.57k ± 0%     1.79k ± 0%   +13.93%  (p=0.000 n=10+8)
Chain/chain-13/Explore-4                     1.73k ± 0%     1.97k ± 0%   +14.37%  (p=0.000 n=8+9)
Chain/chain-14/Explore-4                     1.91k ± 0%     2.19k ± 0%   +14.65%  (p=0.000 n=9+10)
Phases/kv-read-no-prep/ExecBuild-4            80.0 ± 0%      92.0 ± 0%   +15.00%  (p=0.000 n=10+10)
IndexConstraints/single-jumbo-span-10-4       20.0 ± 0%      23.0 ± 0%   +15.00%  (p=0.000 n=10+10)
Chain/chain-15/Explore-4                     2.07k ± 0%     2.38k ± 0%   +15.04%  (p=0.000 n=10+10)
Chain/chain-16/Explore-4                     2.23k ± 0%     2.57k ± 0%   +15.22%  (p=0.000 n=10+10)
Chain/chain-17/Explore-4                     2.40k ± 0%     2.76k ± 0%   +15.40%  (p=0.000 n=10+10)
Chain/chain-18/Explore-4                     2.56k ± 0%     2.96k ± 0%   +15.52%  (p=0.000 n=10+10)
Phases/kv-read-no-prep/Explore-4              77.0 ± 0%      89.0 ± 0%   +15.58%  (p=0.000 n=10+10)
Chain/chain-19/Explore-4                     2.73k ± 0%     3.16k ± 0%   +15.64%  (p=0.002 n=6+6)
Phases/kv-read-no-prep/Normalize-4            70.0 ± 0%      82.0 ± 0%   +17.14%  (p=0.000 n=10+10)
Chain/chain-1/Explore-4                       38.0 ± 0%      45.0 ± 0%   +18.42%  (p=0.000 n=10+10)
Phases/tpcc-delivery/Normalize-4              26.0 ± 0%      31.0 ± 0%   +19.23%  (p=0.000 n=10+10)
Phases/tpcc-delivery/OptBuild-4               25.0 ± 0%      30.0 ± 0%   +20.00%  (p=0.000 n=10+10)
Phases/kv-read-const/ExecBuild-4              4.00 ± 0%      6.00 ± 0%   +50.00%  (p=0.000 n=10+10)
Phases/kv-read-const/OptBuild-4               1.00 ± 0%      3.00 ± 0%  +200.00%  (p=0.000 n=10+10)
Phases/kv-read-const/Normalize-4              1.00 ± 0%      3.00 ± 0%  +200.00%  (p=0.000 n=10+10)
Phases/kv-read-const/Explore-4                1.00 ± 0%      3.00 ± 0%  +200.00%  (p=0.000 n=10+10)

Might be worth looking into some of the Chain benchmark regressions as well as Phases/kv-read-const

@RaduBerinde
Copy link
Member Author

Thanks a lot @rytaft!

Looked at some profiles for kv-read-const; they suggest the Implicator is contributing:
mem profile:
image

cpu profile:
image

CC @mgartner

I think simply allocating that map is non-trivial for this very simple query. We should allocate it lazily. I don't think this explains all the delta though (commenting out that map initialization got from 200ns to 150ns on my machine; 20.1.5 shows 100ns).

@RaduBerinde
Copy link
Member Author

Oh, the other difference is the join order builder, we should embed it in the Optimizer struct instead of allocating it every time.

@mgartner
Copy link
Collaborator

I've made the making of the contraint cache map in Implicator lazy: #54159

Though it made some of the microbenchmarks slower by up to 17%. I'll rerun the benchmarks tomorrow, maybe my computer decided to do some funny business during part of the benchmark.

Tomorrow I can embed the join order builder in the Optimizer.

@mgartner
Copy link
Collaborator

Reran those benchmarks for the PR linked above and they look a bit better now.

@mgartner
Copy link
Collaborator

I reran the benchmarks to compare 20.1.5 (old) to #54159 (new) on a GCE worker.

name                                   old time/op  new time/op   delta
Phases/tpcc-stock-level/Explore-24      236µs ± 1%    233µs ± 1%   -1.28%  (p=0.000 n=10+10)
Phases/kv-read/Parse-24                4.15ns ± 1%   4.15ns ± 2%     ~     (p=0.335 n=8+10)
Phases/kv-read-const/Parse-24          4.16ns ± 2%   4.13ns ± 0%     ~     (p=0.925 n=10+10)
Phases/tpcc-new-order/Parse-24         4.12ns ± 0%   4.13ns ± 0%     ~     (p=0.066 n=9+8)
Phases/tpcc-delivery/Parse-24          4.16ns ± 2%   4.16ns ± 2%     ~     (p=0.459 n=10+10)
Phases/tpcc-stock-level/Parse-24       4.15ns ± 1%   4.13ns ± 0%     ~     (p=0.276 n=10+10)
Phases/tpcc-stock-level/ExecBuild-24    248µs ± 1%    247µs ± 1%     ~     (p=0.633 n=10+8)
EndToEnd/tpcc-stock-level/EndToEnd-24   986µs ± 0%    982µs ± 1%     ~     (p=0.142 n=7+9)
Phases/kv-read-no-prep/Parse-24        16.0µs ± 0%   16.6µs ± 1%   +4.35%  (p=0.000 n=8+10)
Phases/tpcc-new-order/Explore-24       48.8µs ± 1%   52.4µs ± 1%   +7.43%  (p=0.000 n=10+9)
Phases/tpcc-new-order/ExecBuild-24     51.1µs ± 1%   55.0µs ± 1%   +7.74%  (p=0.000 n=9+10)
Phases/kv-read-const/ExecBuild-24       886ns ± 1%    962ns ± 0%   +8.50%  (p=0.000 n=10+10)
Phases/kv-read-const/Explore-24         142ns ± 1%    156ns ± 0%   +9.55%  (p=0.000 n=10+8)
Phases/kv-read-const/Normalize-24       120ns ± 2%    135ns ± 2%  +12.57%  (p=0.000 n=10+10)
Phases/kv-read-const/OptBuild-24        129ns ± 1%    145ns ± 2%  +12.64%  (p=0.000 n=9+10)
Chain/chain-1/Explore-24               16.0µs ± 2%   18.0µs ± 2%  +12.70%  (p=0.000 n=10+10)
Phases/tpcc-delivery/ExecBuild-24      35.5µs ± 1%   40.3µs ± 1%  +13.50%  (p=0.000 n=10+10)
EndToEnd/tpcc-new-order/EndToEnd-24     402µs ± 1%    459µs ± 1%  +14.14%  (p=0.000 n=9+9)
Phases/tpcc-new-order/Normalize-24     16.9µs ± 1%   19.3µs ± 1%  +14.20%  (p=0.000 n=10+10)
EndToEnd/tpcc-delivery/EndToEnd-24      371µs ± 5%    423µs ± 1%  +14.22%  (p=0.000 n=8+8)
Phases/tpcc-new-order/OptBuild-24      17.0µs ± 1%   19.4µs ± 1%  +14.53%  (p=0.000 n=10+10)
Phases/tpcc-delivery/Explore-24        33.4µs ± 1%   38.4µs ± 2%  +14.86%  (p=0.000 n=10+10)
EndToEnd/kv-read/EndToEnd-24            315µs ± 1%    364µs ± 2%  +15.71%  (p=0.000 n=8+8)
Phases/kv-read-no-prep/OptBuild-24     35.3µs ± 1%   41.2µs ± 1%  +16.86%  (p=0.000 n=10+10)
Phases/kv-read/Explore-24              14.0µs ± 1%   16.8µs ± 1%  +20.60%  (p=0.000 n=10+10)
Phases/kv-read/ExecBuild-24            15.4µs ± 0%   18.6µs ± 1%  +20.74%  (p=0.000 n=10+10)
Phases/tpcc-stock-level/OptBuild-24    63.6µs ± 1%   77.0µs ± 1%  +21.07%  (p=0.000 n=10+10)
Phases/kv-read/Normalize-24            8.00µs ± 1%   9.71µs ± 1%  +21.49%  (p=0.000 n=10+9)
Phases/kv-read/OptBuild-24             8.00µs ± 1%   9.72µs ± 1%  +21.50%  (p=0.000 n=10+10)
Phases/tpcc-stock-level/Normalize-24   63.9µs ± 1%   77.7µs ± 0%  +21.58%  (p=0.000 n=10+7)
Phases/tpcc-delivery/Normalize-24      14.9µs ± 1%   18.3µs ± 1%  +22.74%  (p=0.000 n=10+10)
Phases/tpcc-delivery/OptBuild-24       14.6µs ± 1%   18.0µs ± 1%  +23.41%  (p=0.000 n=10+10)
EndToEnd/kv-read-no-prep/EndToEnd-24    432µs ± 7%    534µs ±12%  +23.67%  (p=0.000 n=9+8)
Phases/kv-read-no-prep/ExecBuild-24    44.6µs ± 0%   56.5µs ± 1%  +26.78%  (p=0.000 n=10+10)
Phases/kv-read-no-prep/Explore-24      42.8µs ± 0%   54.9µs ± 1%  +28.15%  (p=0.000 n=9+10)
EndToEnd/kv-read-const/EndToEnd-24      245µs ± 4%    319µs ±12%  +30.17%  (p=0.000 n=8+9)
Phases/kv-read-no-prep/Normalize-24    35.1µs ± 1%   45.8µs ± 1%  +30.25%  (p=0.000 n=10+10)
Chain/chain-2/Explore-24               90.5µs ± 1%  118.8µs ± 1%  +31.19%  (p=0.000 n=9+10)
Chain/chain-3/Explore-24                182µs ± 1%    241µs ± 1%  +32.46%  (p=0.000 n=10+10)
Chain/chain-4/Explore-24                270µs ± 1%    365µs ± 1%  +34.87%  (p=0.000 n=10+10)
Chain/chain-5/Explore-24                363µs ± 1%    499µs ± 1%  +37.33%  (p=0.000 n=10+10)
Chain/chain-6/Explore-24                462µs ± 0%    636µs ± 0%  +37.74%  (p=0.000 n=10+9)
Chain/chain-7/Explore-24                570µs ± 1%    799µs ± 0%  +40.08%  (p=0.000 n=10+10)
Chain/chain-9/Explore-24                839µs ± 1%   1181µs ± 1%  +40.77%  (p=0.000 n=10+10)
Chain/chain-10/Explore-24               975µs ± 1%   1375µs ± 1%  +41.06%  (p=0.000 n=10+10)
Chain/chain-8/Explore-24                679µs ± 1%    961µs ± 1%  +41.65%  (p=0.000 n=10+9)
Chain/chain-16/Explore-24              2.12ms ± 1%   3.01ms ± 1%  +41.66%  (p=0.000 n=10+10)
Chain/chain-17/Explore-24              2.36ms ± 1%   3.34ms ± 0%  +41.77%  (p=0.000 n=10+10)
Chain/chain-14/Explore-24              1.69ms ± 1%   2.39ms ± 1%  +42.03%  (p=0.000 n=10+10)
Chain/chain-11/Explore-24              1.11ms ± 1%   1.58ms ± 1%  +42.65%  (p=0.000 n=10+10)
Chain/chain-18/Explore-24              2.58ms ± 1%   3.68ms ± 1%  +42.91%  (p=0.000 n=9+10)
Chain/chain-15/Explore-24              1.88ms ± 1%   2.69ms ± 0%  +42.97%  (p=0.000 n=10+8)
Chain/chain-13/Explore-24              1.43ms ± 0%   2.05ms ± 0%  +43.25%  (p=0.000 n=9+9)
Chain/chain-12/Explore-24              1.27ms ± 1%   1.83ms ± 1%  +43.39%  (p=0.000 n=10+10)
Chain/chain-19/Explore-24              2.83ms ± 1%   4.08ms ± 2%  +44.08%  (p=0.000 n=10+10)

@RaduBerinde
Copy link
Member Author

I looked at kv-read-no-prep some more. A big part of the remaining overhead is that now we have to construct a Project, I'm assuming because of the system columns. Not sure what can be done about that..

@RaduBerinde
Copy link
Member Author

Same cause for Chain - here we are doing an N-way join and each instance of the table now needs a Project.

@RaduBerinde
Copy link
Member Author

I also looked at tpcc-delivery/OptBuild. Part of the overhead is more work when copying FDs in buildScanProps. I think this is also due to the system columns.

I think there is a possible improvement here though - when we create a basic Scan for all the columns (which appens during optbuild, even when we don't need all columns), we don't need to make a copy of the table FDs (since we don't need to modify them).

In any case, if we would analyze the AST beforehand and know when we will never need any system columns, we could do a lot better. I believe that doing a traversal and looking for system column names in all column references should work.

@RaduBerinde
Copy link
Member Author

Tried to skip the system columns when creating table FDs, there is a small benefit to tpcc-delivery but not for others.

Anotger idea would be to move the FDs in the catalog, where they can be calculated once. We'd need a CopyFrom function that shifts all column IDs. This seems like it would save about 3-4%.

I'm not thrilled by some of these, 15% in the end-to-end time for kv-read is not nothing..

CC @andy-kimball

@RaduBerinde
Copy link
Member Author

15% in the end-to-end time for kv-read is not nothing..

I looked into this more closely. I see about 5% regression on my system (with and without GOMAXPROCS=1). There are about 10% more allocations; half of them appear to come from resolving table descriptors. I did not see any noticeable differences in the opt part.

@RaduBerinde
Copy link
Member Author

I can't reproduce the regressions above, eg Phases/kv-read/Explore is the same for me. @mgartner the times you pasted, are those with both commits from #54159 or just the implicator fix?

@mgartner
Copy link
Collaborator

@RaduBerinde it was both commits, unless I did something wrong. I can re-run to be sure.

@mgartner
Copy link
Collaborator

mgartner commented Sep 14, 2020

Here are the results of v20.1.5 tag (old) vs master @ f73ecd62fc8d7479841322587ac19ad1fbe5c182 (new) running GOMAXPROCS=1 make bench PKG='./pkg/sql/opt/bench' TESTFLAGS='-count=5 -logtostderr=false' TESTTIMEOUT='9999s' on a GCE instance:

name                                    old time/op  new time/op   delta
FKInsert/MultiRowSingleParent/FastPath  2.74ms ± 5%   1.07ms ± 3%  -61.03%  (p=0.008 n=5+5)
FKInsert/MultiRowMultiParent/FastPath   3.05ms ± 2%   1.28ms ± 9%  -57.88%  (p=0.008 n=5+5)
FKInsert/SingleRow/FastPath             1.42ms ± 3%   0.65ms ± 8%  -53.97%  (p=0.008 n=5+5)
Phases/tpcc-stock-level/Explore          334µs ± 1%    299µs ± 1%  -10.53%  (p=0.008 n=5+5)
Phases/tpcc-stock-level/ExecBuild        347µs ± 1%    316µs ± 1%   -8.92%  (p=0.008 n=5+5)
Phases/tpcc-new-order/ExecBuild         72.4µs ± 1%   69.0µs ± 1%   -4.77%  (p=0.008 n=5+5)
EndToEnd/tpcc-stock-level/EndToEnd       926µs ± 1%    890µs ± 1%   -3.86%  (p=0.008 n=5+5)
Phases/tpcc-new-order/Explore           69.0µs ± 1%   66.4µs ± 1%   -3.73%  (p=0.008 n=5+5)
Chain/chain-1/Explore                   27.2µs ± 1%   26.8µs ± 1%   -1.55%  (p=0.008 n=5+5)
Phases/kv-read/Parse                    4.13ns ± 0%   4.12ns ± 0%     ~     (p=0.095 n=5+4)
Phases/kv-read-const/Parse              4.13ns ± 0%   4.13ns ± 0%     ~     (p=0.444 n=5+5)
Phases/tpcc-new-order/Parse             4.13ns ± 1%   4.16ns ± 1%     ~     (p=0.143 n=5+5)
Phases/tpcc-delivery/Parse              4.14ns ± 1%   4.14ns ± 0%     ~     (p=0.833 n=5+5)
Phases/tpcc-stock-level/Parse           4.13ns ± 0%   4.13ns ± 0%     ~     (p=0.643 n=5+5)
EndToEnd/tpcc-new-order/EndToEnd         384µs ± 0%    387µs ± 4%     ~     (p=0.841 n=5+5)
FKInsert/SingleRow/None                 1.19ms ± 5%   1.19ms ± 4%     ~     (p=1.000 n=5+5)
FKInsert/MultiRowSingleParent/None      2.49ms ± 4%   2.51ms ± 3%     ~     (p=0.841 n=5+5)
FKInsert/MultiRowMultiParent/None       2.68ms ± 4%   2.65ms ± 7%     ~     (p=0.690 n=5+5)
EndToEnd/kv-read-const/EndToEnd          202µs ± 2%    207µs ± 1%   +2.27%  (p=0.016 n=5+5)
Phases/tpcc-new-order/Normalize         24.3µs ± 1%   25.3µs ± 1%   +3.83%  (p=0.008 n=5+5)
Phases/tpcc-delivery/ExecBuild          50.3µs ± 2%   52.3µs ± 1%   +3.95%  (p=0.008 n=5+5)
EndToEnd/kv-read/EndToEnd                267µs ± 1%    279µs ± 4%   +4.44%  (p=0.008 n=5+5)
Phases/kv-read/Normalize                12.7µs ± 1%   13.3µs ± 1%   +4.94%  (p=0.008 n=5+5)
Phases/tpcc-delivery/Explore            47.7µs ± 2%   50.2µs ± 1%   +5.32%  (p=0.008 n=5+5)
Phases/tpcc-new-order/OptBuild          24.3µs ± 2%   25.6µs ± 0%   +5.47%  (p=0.008 n=5+5)
EndToEnd/tpcc-delivery/EndToEnd          325µs ± 2%    343µs ± 3%   +5.63%  (p=0.008 n=5+5)
Phases/kv-read/OptBuild                 12.6µs ± 1%   13.4µs ± 1%   +6.74%  (p=0.008 n=5+5)
EndToEnd/kv-read-no-prep/EndToEnd        395µs ± 2%    422µs ± 3%   +6.95%  (p=0.008 n=5+5)
Phases/tpcc-delivery/Normalize          22.3µs ± 2%   24.0µs ± 1%   +7.60%  (p=0.008 n=5+5)
Phases/tpcc-delivery/OptBuild           21.9µs ± 1%   23.5µs ± 1%   +7.64%  (p=0.008 n=5+5)
Phases/kv-read/Explore                  20.9µs ± 0%   22.5µs ± 1%   +7.70%  (p=0.008 n=5+5)
Phases/kv-read/ExecBuild                22.5µs ± 2%   24.6µs ± 1%   +9.14%  (p=0.008 n=5+5)
Phases/kv-read-const/ExecBuild          1.33µs ± 1%   1.46µs ± 0%   +9.43%  (p=0.008 n=5+5)
Phases/tpcc-stock-level/OptBuild        90.4µs ± 1%  100.7µs ± 1%  +11.35%  (p=0.008 n=5+5)
Phases/tpcc-stock-level/Normalize       90.1µs ± 1%  100.7µs ± 1%  +11.80%  (p=0.008 n=5+5)
Chain/chain-2/Explore                    134µs ± 1%    152µs ± 1%  +13.25%  (p=0.008 n=5+5)
Chain/chain-3/Explore                    266µs ± 1%    304µs ± 1%  +14.56%  (p=0.008 n=5+5)
Phases/kv-read-const/Explore             236ns ± 2%    270ns ± 0%  +14.60%  (p=0.016 n=5+4)
Chain/chain-5/Explore                    526µs ± 1%    620µs ± 0%  +17.88%  (p=0.008 n=5+5)
Chain/chain-4/Explore                    386µs ± 0%    457µs ± 1%  +18.28%  (p=0.008 n=5+5)
Phases/kv-read-const/OptBuild            225ns ± 1%    266ns ± 0%  +18.43%  (p=0.016 n=5+4)
Phases/kv-read-const/Normalize           221ns ± 0%    264ns ± 0%  +19.46%  (p=0.008 n=5+5)
Chain/chain-6/Explore                    668µs ± 0%    798µs ± 0%  +19.53%  (p=0.008 n=5+5)
Chain/chain-7/Explore                    819µs ± 1%    992µs ± 1%  +21.10%  (p=0.008 n=5+5)
Chain/chain-9/Explore                   1.23ms ± 0%   1.50ms ± 1%  +22.06%  (p=0.008 n=5+5)
Chain/chain-14/Explore                  2.49ms ± 1%   3.04ms ± 1%  +22.29%  (p=0.008 n=5+5)
Chain/chain-16/Explore                  3.11ms ± 0%   3.81ms ± 1%  +22.31%  (p=0.008 n=5+5)
Phases/kv-read-no-prep/OptBuild         50.9µs ± 1%   62.4µs ± 1%  +22.54%  (p=0.008 n=5+5)
Chain/chain-8/Explore                    970µs ± 1%   1191µs ± 1%  +22.80%  (p=0.008 n=5+5)
Chain/chain-15/Explore                  2.77ms ± 0%   3.40ms ± 1%  +22.92%  (p=0.008 n=5+5)
Chain/chain-11/Explore                  1.62ms ± 1%   2.00ms ± 0%  +23.61%  (p=0.008 n=5+5)
Chain/chain-17/Explore                  3.42ms ± 0%   4.23ms ± 1%  +23.86%  (p=0.008 n=5+5)
Chain/chain-10/Explore                  1.41ms ± 0%   1.75ms ± 0%  +24.09%  (p=0.016 n=5+4)
Chain/chain-18/Explore                  3.77ms ± 1%   4.68ms ± 1%  +24.18%  (p=0.008 n=5+5)
Chain/chain-13/Explore                  2.09ms ± 1%   2.60ms ± 1%  +24.31%  (p=0.008 n=5+5)
Phases/kv-read-no-prep/ExecBuild        65.3µs ± 1%   81.3µs ± 1%  +24.56%  (p=0.008 n=5+5)
Chain/chain-19/Explore                  4.12ms ± 1%   5.14ms ± 0%  +24.91%  (p=0.008 n=5+5)
Chain/chain-12/Explore                  1.84ms ± 0%   2.32ms ± 1%  +25.68%  (p=0.008 n=5+5)
Phases/kv-read-no-prep/Explore          63.0µs ± 1%   79.2µs ± 0%  +25.74%  (p=0.008 n=5+5)
Phases/kv-read-no-prep/Parse            22.3µs ± 0%   28.7µs ± 1%  +28.73%  (p=0.008 n=5+5)
Phases/kv-read-no-prep/Normalize        50.6µs ± 0%   68.0µs ± 0%  +34.34%  (p=0.008 n=5+5)

@RaduBerinde
Copy link
Member Author

I checked backboard and did not find any missing backports. Closing this now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants