Skip to content
This repository has been archived by the owner on Nov 15, 2023. It is now read-only.

Add production profile to substrate-wasm-builder #10747

Merged
merged 9 commits into from
Jan 31, 2022

Conversation

athei
Copy link
Member

@athei athei commented Jan 28, 2022

After we now established that compiling the client with lto and codegen-units=1 yields substantial performance improvements we should now do the same for the runtime. We already noticed that we need those optimizations for wasmi to perform well [1].

This PR does the following

  • Add a production profile to the generated wasm project by the wasm builder with the same values as for the client.
  • Automatically detect the profile which is used for building the client and use that by default (defaults to release for debug main builds to be consistent with existing behaviour).
  • Change the release build (which is now only used for dev) to use lto=thin to speed up development (was using fat before).

Note that we need to regenerate all weights here before we can merge. Not sure what would be the best way to do that. @ggwpez what do you think?

This reduces the outputted wasm binary size:

before

1_040_841 node_runtime.compact.compressed.wasm
3_988_793 node_runtime.compact.wasm
4_374_849 node_runtime.wasm

after

  985_490  node_runtime.compact.compressed.wasm (5.6% reduction)
3_644_414  node_runtime.compact.wasm (9.4% reduction)
4_007_507  node_runtime.wasm (9.2% reduction)

@athei athei added A0-please_review Pull request needs code review. B0-silent Changes should not be mentioned in any release notes C1-low PR touches the given topic and has a low impact on builders. D3-trivial 🧸 PR contains trivial changes in a runtime directory that do not require an audit labels Jan 28, 2022
@ggwpez
Copy link
Member

ggwpez commented Jan 28, 2022

Note that we need to regenerate all weights here before we can merge. Not sure what would be the best way to do that.

I'm looking forward to it 🤣
The bench-bot would be locked up too long I think.
After the MR is approved I can re-run them and push the diff here.

@athei
Copy link
Member Author

athei commented Jan 28, 2022

But how to you do it? Do you have a separate benchmarking machine that is not used by the bot?

@athei athei mentioned this pull request Jan 28, 2022
@ggwpez
Copy link
Member

ggwpez commented Jan 28, 2022

But how to you do it? Do you have a separate benchmarking machine that is not used by the bot?

Exactly. Running all of them takes around 8 hrs, I will just start it now and have some preliminary results tomorrow.
PS: Maybe we could also run an instance of the bot on that machine and only use it for long-running tasks 🤔

utils/wasm-builder/src/wasm_project.rs Outdated Show resolved Hide resolved
utils/wasm-builder/src/wasm_project.rs Outdated Show resolved Hide resolved
utils/wasm-builder/src/wasm_project.rs Outdated Show resolved Hide resolved
utils/wasm-builder/src/wasm_project.rs Show resolved Hide resolved
athei and others added 2 commits January 30, 2022 12:13
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
@athei athei requested a review from bkchr January 30, 2022 12:51
@ggwpez
Copy link
Member

ggwpez commented Jan 31, 2022

I rerun them two times on bm2. The diff of the last run is here, you can cherry-pick it.
Sadly we do not have the exact values for master, so I also rerun it for a comparison.
Looks mostly the same:
all
I don't know where the difference in on_initialize_per_queue_item comes from, since it is not in the diff. Maybe someone updated that extrinsic and did not re-run.

@athei
Copy link
Member Author

athei commented Jan 31, 2022

Looks mostly the same:

The contracts usually are only interested in the weight associated with the r (repetition) parameter. I don't think you can really see the improvement in the pictures. When I go into the weight file I see them almost halved.

I don't know where the difference in on_initialize_per_queue_item comes from, since it is not in the diff. Maybe someone updated that extrinsic and did not re-run.

A PR was merged in the meantime that fixed a bug which affected the weight there. So this is expected since this PR isn't up-to-date against the latest master.

@ggwpez
Copy link
Member

ggwpez commented Jan 31, 2022

The contracts usually are only interested in the weight associated with the r (repetition) parameter.

Okay good to know.

I don't think you can really see the improvement in the pictures. When I go into the weight file I see them almost halved.

We are already working on better tooling 😆
Which extrinsics you mean almost halved?

@athei
Copy link
Member Author

athei commented Jan 31, 2022

Which extrinsics you mean almost halved?

Basically every wasm instruction for gas metering. Note that we only care about r because the overall weight of the extrinsic is overhead that we don't want to measure. This is why we try to measure over r which is the amount of the said instructions we inject into the contract.

It is still suspicious that the overall weight changes so much. One could think this might be some linear regression fuckup where the weight merely shifted around. However, it is consistent with other wasmi benchmarks we have where codegen-units = 1 yields substantial performance improvements.

Screenshot 2022-01-31 at 11 54 03

@ggwpez
Copy link
Member

ggwpez commented Jan 31, 2022

Thanks! Somehow I did not see those.

Rerun on the bm2 server.

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
@athei
Copy link
Member Author

athei commented Jan 31, 2022

/benchmark runtime pallet pallet_contracts

@parity-benchapp
Copy link

parity-benchapp bot commented Jan 31, 2022

Benchmark Runtime Pallet for branch "at-runtime-profiles" with command cargo run --quiet --profile=production --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_contracts --extrinsic="*" --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/contracts/src/weights.rs --template=./.maintain/frame-weight-template.hbs

Toolchain: stable-x86_64-unknown-linux-gnu (default)
rustc 1.57.0 (f1edd0429 2021-11-29)

Results
Pallet: "pallet_contracts", Extrinsic: "on_initialize", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: Contracts DeletionQueue (r:1 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    1.642
              µs

Reads = 1
Writes = 0

Min Squares Analysis
========
-- Extrinsic Time --

Model:
Time ~=    1.642
              µs

Reads = 1
Writes = 0

Pallet: "pallet_contracts", Extrinsic: "on_initialize_per_trie_key", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: Skipped Metadata (r:0 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    7.242
    + k    0.743
              µs

Reads = 1 + (0 * k)
Writes = 1 + (1 * k)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    k   mean µs  sigma µs       %
    0     9.883     0.064    0.6%
   20     26.07     0.202    0.7%
   40     40.03     0.096    0.2%
   60     52.43     0.415    0.7%
   80     64.75     0.391    0.6%
  100        79     0.177    0.2%
  120     92.99     0.285    0.3%
  140     109.1     0.326    0.2%
  160     121.4     0.455    0.3%
  180     137.3     0.278    0.2%
  200     150.9     0.303    0.2%
  220     166.7     0.576    0.3%
  240     182.6     0.516    0.2%
  260     197.4     0.551    0.2%
  280     212.1     0.952    0.4%
  300     227.1     1.217    0.5%
  320     244.9     0.455    0.1%
  340     261.4     1.738    0.6%
  360     276.9     3.744    1.3%
  380     291.9     1.304    0.4%
  400     306.2     0.749    0.2%
  420     319.2     0.616    0.1%
  440     338.1     1.597    0.4%
  460     349.7      0.73    0.2%
  480     366.8     1.114    0.3%
  500     383.6     1.992    0.5%
  520       399     0.575    0.1%
  540     413.4      2.35    0.5%
  560     427.9     1.339    0.3%
  580     444.8     4.969    1.1%
  600     457.7     1.844    0.4%
  620     471.1     1.252    0.2%
  640       485     1.083    0.2%
  660     498.7     1.245    0.2%
  680     517.6     1.553    0.2%
  700     528.5     1.951    0.3%
  720     549.5     9.545    1.7%
  740     558.9     2.166    0.3%
  760     572.3      1.46    0.2%
  780     593.1     7.659    1.2%
  800     601.2     2.348    0.3%
  820     615.4     1.598    0.2%
  840     632.8     2.328    0.3%
  860     646.6     1.888    0.2%
  880     658.2     1.427    0.2%
  900     675.1     2.322    0.3%
  920     687.5     1.256    0.1%
  940     699.1     2.751    0.3%
  960     710.2     1.256    0.1%
  980     729.9      2.71    0.3%
 1000     746.3     1.746    0.2%
 1020     760.4     1.358    0.1%

Quality and confidence:
param     error
k             0

Model:
Time ~=    7.854
    + k    0.742
              µs

Reads = 1 + (0 * k)
Writes = 1 + (1 * k)

Pallet: "pallet_contracts", Extrinsic: "on_initialize_per_queue_item", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: Contracts DeletionQueue (r:1 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    8.367
    + q    2.177
              µs

Reads = 1 + (0 * q)
Writes = 1 + (0 * q)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    q   mean µs  sigma µs       %
    0     1.571     0.022    1.4%
   20     55.25     0.282    0.5%
   40     98.46      0.34    0.3%
   60     146.6     0.311    0.2%
   80     184.4     0.433    0.2%
  100     227.9     0.654    0.2%
  120     284.2     1.358    0.4%
  140     316.5     1.771    0.5%
  160     350.1     1.592    0.4%
  180     399.6      2.07    0.5%
  200     441.3     1.536    0.3%
  220     479.9     6.485    1.3%
  240     549.2     2.625    0.4%
  260     576.2     1.865    0.3%
  280     635.4     7.879    1.2%
  300     659.9      8.49    1.2%
  320     713.8     3.887    0.5%
  340     737.8      10.1    1.3%
  360     761.8       5.2    0.6%
  380     820.5     2.962    0.3%
  400     870.3     11.92    1.3%
  420       907     12.02    1.3%
  440       955     7.133    0.7%
  460      1008      8.16    0.8%
  480      1015     9.596    0.9%
  500      1085     8.656    0.7%
  520      1134     13.52    1.1%
  540      1189     12.31    1.0%
  560      1208     14.88    1.2%
  580      1227     11.83    0.9%
  600      1294      17.1    1.3%
  620      1317     13.47    1.0%
  640      1364     12.86    0.9%
  660      1415     20.68    1.4%
  680      1463     17.59    1.2%
  700      1497     14.34    0.9%
  720      1534     22.59    1.4%
  740      1547     11.15    0.7%
  760      1649     12.62    0.7%
  780      1716     21.36    1.2%
  800      1699     15.62    0.9%
  820      1716     17.51    1.0%
  840      1767     21.39    1.2%
  860      1864     14.82    0.7%
  880      1928     22.65    1.1%
  900      2056     22.15    1.0%
  920      2118     29.26    1.3%
  940      2126     16.87    0.7%
  960      2226     24.54    1.1%
  980      2218     17.06    0.7%
 1000      2287     20.22    0.8%
 1020      2338     14.11    0.6%

Quality and confidence:
param     error
q         0.006

Model:
Time ~=        0
    + q    2.216
              µs

Reads = 1 + (0 * q)
Writes = 1 + (0 * q)

Pallet: "pallet_contracts", Extrinsic: "reinstrument", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: Contracts PristineCode (r:1 w:0)
Storage: Contracts CodeStorage (r:0 w:1)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    24.87
    + c    64.39
              µs

Reads = 1 + (0 * c)
Writes = 1 + (0 * c)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    c   mean µs  sigma µs       %
    0     25.84     0.251    0.9%
    2     158.4     0.409    0.2%
    4     283.2     0.497    0.1%
    6     405.6     0.546    0.1%
    8     539.1     7.914    1.4%
   10       672     15.96    2.3%
   12     797.6     15.69    1.9%
   14     932.7      11.9    1.2%
   16      1061     13.82    1.3%
   18      1195      11.1    0.9%
   20      1298     4.945    0.3%
   22      1430      12.4    0.8%
   24      1548     14.55    0.9%
   26      1705      14.3    0.8%
   28      1817     1.762    0.0%
   30      1965      12.2    0.6%
   32      2069     10.91    0.5%
   34      2221     11.13    0.5%
   36      2348     14.68    0.6%
   38      2473     11.98    0.4%
   40      2594     8.568    0.3%
   42      2733     14.36    0.5%
   44      2831     13.59    0.4%
   46      2961     18.38    0.6%
   48      3083     11.04    0.3%
   50      3273     5.157    0.1%
   52      3397     12.48    0.3%
   54      3520     14.51    0.4%
   56      3636     3.403    0.0%
   58      3757     12.68    0.3%
   60      3886     15.85    0.4%
   62      4014     7.398    0.1%
   64      4129     15.97    0.3%
   66      4281     11.72    0.2%
   68      4404     12.17    0.2%
   70      4526     17.64    0.3%
   72      4656     22.86    0.4%
   74      4791     15.84    0.3%
   76      4901      13.3    0.2%
   78      5030     20.39    0.4%
   80      5135     14.99    0.2%
   82      5263     11.92    0.2%
   84      5404     13.03    0.2%
   86      5527     14.51    0.2%
   88      5605     11.88    0.2%
   90      5764     27.96    0.4%
   92      5872     14.89    0.2%
   94      6007     16.37    0.2%
   96      6131     29.88    0.4%
   98      6437     24.11    0.3%
  100      6541     32.22    0.4%
  102      6640     13.05    0.1%
  104      6784     30.55    0.4%
  106      6903     33.44    0.4%
  108      7023     19.11    0.2%
  110      7134     15.06    0.2%
  112      7282     20.45    0.2%
  114      7408     25.64    0.3%
  116      7530     40.33    0.5%
  118      7638     24.53    0.3%
  120      7756     25.66    0.3%
  122      7901     27.64    0.3%
  124      7996     22.05    0.2%
  126      8140     27.52    0.3%
  128      8233     13.11    0.1%

Quality and confidence:
param     error
c         0.039

Model:
Time ~=    17.41
    + c    64.49
              µs

Reads = 1 + (0 * c)
Writes = 1 + (0 * c)

Pallet: "pallet_contracts", Extrinsic: "call_with_code_kb", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Contracts CodeStorage (r:1 w:0)
Storage: Timestamp Now (r:1 w:0)
Storage: System Account (r:1 w:1)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=      221
    + c    56.45
              µs

Reads = 4 + (0 * c)
Writes = 2 + (0 * c)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    c   mean µs  sigma µs       %
    0     227.2     0.218    0.0%
    2     338.5     0.355    0.1%
    4     449.7     0.486    0.1%
    6     555.4     0.575    0.1%
    8     675.1     6.857    1.0%
   10     788.9     11.85    1.5%
   12     886.8     6.589    0.7%
   14      1014     5.753    0.5%
   16      1125     10.68    0.9%
   18      1230     12.71    1.0%
   20      1326     1.352    0.1%
   22      1450     13.47    0.9%
   24      1553     15.48    0.9%
   26      1712     10.36    0.6%
   28      1812     16.03    0.8%
   30      1907     12.88    0.6%
   32      2019     12.68    0.6%
   34      2136     12.09    0.5%
   36      2242     14.38    0.6%
   38      2401     10.77    0.4%
   40      2457     12.43    0.5%
   42      2559     15.25    0.5%
   44      2658     15.48    0.5%
   46      2769     12.48    0.4%
   48      2870     15.85    0.5%
   50      3083     13.21    0.4%
   52      3182     12.47    0.3%
   54      3303     15.49    0.4%
   56      3394     20.61    0.6%
   58      3498     17.84    0.5%
   60      3602     20.24    0.5%
   62      3729     6.944    0.1%
   64      3839     13.09    0.3%
   66      3949     11.77    0.2%
   68      4048     19.63    0.4%
   70      4158     21.34    0.5%
   72      4284     23.16    0.5%
   74      4365     8.498    0.1%
   76      4462     17.69    0.3%
   78      4579     10.28    0.2%
   80      4682     12.78    0.2%
   82      4787     12.64    0.2%
   84      4892     11.75    0.2%
   86      5015     14.67    0.2%
   88      5101     15.82    0.3%
   90      5206      14.9    0.2%
   92      5330     15.48    0.2%
   94      5424     17.86    0.3%
   96      5555     22.54    0.4%
   98      5849      18.1    0.3%
  100      5963     14.72    0.2%
  102      6056     15.73    0.2%
  104      6164     10.26    0.1%
  106      6260     21.43    0.3%
  108      6363     11.81    0.1%
  110      6481     19.13    0.2%
  112      6571        15    0.2%
  114      6673     12.01    0.1%
  116      6797     17.39    0.2%
  118      6892     31.37    0.4%
  120      7017     13.36    0.1%
  122      7118     23.63    0.3%
  124      7219     19.84    0.2%
  126      7326     16.93    0.2%
  128      7451     21.87    0.2%

Quality and confidence:
param     error
c         0.047

Model:
Time ~=      209
    + c    56.55
              µs

Reads = 4 + (0 * c)
Writes = 2 + (0 * c)

Pallet: "pallet_contracts", Extrinsic: "instantiate_with_code", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: Contracts CodeStorage (r:1 w:1)
Storage: Contracts AccountCounter (r:1 w:1)
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Timestamp Now (r:1 w:0)
Storage: System Account (r:1 w:1)
Storage: Contracts PristineCode (r:0 w:1)
Storage: Contracts OwnerInfoOf (r:0 w:1)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    247.2
    + c    145.5
    + s    1.749
              µs

Reads = 5 + (0 * c) + (0 * s)
Writes = 6 + (0 * c) + (0 * s)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    c     s   mean µs  sigma µs       %
    0  1024      2060     10.43    0.5%
    1  1024      2212     15.19    0.6%
    2  1024      2359     10.01    0.4%
    3  1024      2317     6.931    0.2%
    4  1024      2640     10.82    0.4%
    5  1024      2783     12.74    0.4%
    6  1024      2764     13.29    0.4%
    7  1024      3084     15.54    0.5%
    8  1024      3232     7.392    0.2%
    9  1024      3217     19.67    0.6%
   10  1024      3510     5.922    0.1%
   11  1024      3707     7.965    0.2%
   12  1024      3634     15.65    0.4%
   13  1024      3942     14.93    0.3%
   14  1024      4082     10.33    0.2%
   15  1024      4080     17.97    0.4%
   16  1024      4378     16.32    0.3%
   17  1024      4549      10.2    0.2%
   18  1024      4517     11.76    0.2%
   19  1024      4814     17.71    0.3%
   20  1024      4988     17.92    0.3%
   21  1024      4947     17.28    0.3%
   22  1024      5272     28.57    0.5%
   23  1024      5369     16.39    0.3%
   24  1024      5408     27.18    0.5%
   25  1024      5710     10.21    0.1%
   26  1024      5836     17.94    0.3%
   27  1024      5844     15.22    0.2%
   28  1024      6131     19.77    0.3%
   29  1024      6283     23.99    0.3%
   30  1024      6243     20.33    0.3%
   31  1024      6532     12.26    0.1%
   32  1024      6678     20.98    0.3%
   33  1024      6762     32.71    0.4%
   34  1024      7076     31.64    0.4%
   35  1024      7187     18.17    0.2%
   36  1024      7154     15.86    0.2%
   37  1024      7474     30.02    0.4%
   38  1024      7607     14.77    0.1%
   39  1024      7597     31.15    0.4%
   40  1024      7914     44.37    0.5%
   41  1024      8013     24.57    0.3%
   42  1024      7994     20.92    0.2%
   43  1024      8299     27.34    0.3%
   44  1024      8457     14.26    0.1%
   45  1024      8434     28.84    0.3%
   46  1024      8724     14.71    0.1%
   47  1024      8869     24.97    0.2%
   48  1024      8853     34.73    0.3%
   49  1024      9256     30.65    0.3%
   50  1024      9394     36.78    0.3%
   51  1024      9375     30.16    0.3%
   52  1024      9923      29.1    0.2%
   53  1024      9797     41.37    0.4%
   54  1024      9807     41.55    0.4%
   55  1024     10050     16.86    0.1%
   56  1024     10220     53.55    0.5%
   57  1024     10190     30.54    0.2%
   58  1024     10490     53.22    0.5%
   59  1024     10630      33.7    0.3%
   60  1024     10600     24.76    0.2%
   61  1024     10900     35.02    0.3%
   62     0      9256     41.38    0.4%
   62    20      9255      23.4    0.2%
   62    40      9297     23.09    0.2%
   62    60      9337     25.43    0.2%
   62    80      9371     31.88    0.3%
   62   100      9398     23.54    0.2%
   62   120      9431     28.25    0.2%
   62   140      9480     32.27    0.3%
   62   160      9513     23.98    0.2%
   62   180      9571     36.11    0.3%
   62   200      9572     25.18    0.2%
   62   220      9628     35.04    0.3%
   62   240      9635     8.022    0.0%
   62   260      9705     18.34    0.1%
   62   280      9722     13.37    0.1%
   62   300      9759     27.06    0.2%
   62   320      9828     24.21    0.2%
   62   340      9976     79.23    0.7%
   62   360      9857     27.92    0.2%
   62   380      9901     38.66    0.3%
   62   400      9955     19.28    0.1%
   62   420      9960     20.26    0.2%
   62   440      9978     23.92    0.2%
   62   460     10050     32.62    0.3%
   62   480     10090     21.42    0.2%
   62   500     10110     14.78    0.1%
   62   520     10130     26.59    0.2%
   62   540     10180     33.39    0.3%
   62   560     10210      11.1    0.1%
   62   580     10270     38.52    0.3%
   62   600     10420     67.27    0.6%
   62   620     10330     28.23    0.2%
   62   640     10340     25.96    0.2%
   62   660     10380     21.14    0.2%
   62   680     10420     28.08    0.2%
   62   700     10430     22.57    0.2%
   62   720     10480     28.45    0.2%
   62   740     10530     19.46    0.1%
   62   760     10550     26.11    0.2%
   62   780     10590      17.7    0.1%
   62   800     10630     23.37    0.2%
   62   820     10660     30.57    0.2%
   62   840     10720     20.14    0.1%
   62   860     10740     32.54    0.3%
   62   880     10750     22.67    0.2%
   62   900     10850     58.67    0.5%
   62   920     10840      23.4    0.2%
   62   940     10870     41.07    0.3%
   62   960     10910     26.64    0.2%
   62   980     10940     37.94    0.3%
   62  1000     10990     25.45    0.2%
   62  1020     11000     20.03    0.1%
   62  1024     11030     25.25    0.2%

Quality and confidence:
param     error
c         0.133
s         0.008

Model:
Time ~=    210.4
    + c    145.6
    + s     1.76
              µs

Reads = 5 + (0 * c) + (0 * s)
Writes = 6 + (0 * c) + (0 * s)

Pallet: "pallet_contracts", Extrinsic: "instantiate", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: Contracts CodeStorage (r:1 w:1)
Storage: Contracts AccountCounter (r:1 w:1)
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Timestamp Now (r:1 w:0)
Storage: System Account (r:1 w:1)
Storage: Contracts OwnerInfoOf (r:1 w:1)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    171.2
    + s    1.701
              µs

Reads = 6 + (0 * s)
Writes = 5 + (0 * s)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    s   mean µs  sigma µs       %
    0       168     0.198    0.1%
   20     203.2     0.262    0.1%
   40       238     0.244    0.1%
   60     275.2     3.178    1.1%
   80       307     0.487    0.1%
  100     340.7     0.245    0.0%
  120       376     3.877    1.0%
  140     410.3     4.123    1.0%
  160     448.1     10.87    2.4%
  180     480.3     5.519    1.1%
  200     516.2     8.655    1.6%
  220     550.6     8.896    1.6%
  240     583.2     8.104    1.3%
  260       620     12.61    2.0%
  280     661.4     15.09    2.2%
  300     683.4     3.552    0.5%
  320     718.5     8.155    1.1%
  340     758.5     10.21    1.3%
  360     784.1     4.564    0.5%
  380     825.7      14.4    1.7%
  400     866.6     16.93    1.9%
  420     894.4        14    1.5%
  440     937.8     14.74    1.5%
  460     959.6     12.72    1.3%
  480      1009     14.64    1.4%
  500      1048     14.48    1.3%
  520      1070     14.94    1.3%
  540      1093     9.067    0.8%
  560      1128     9.595    0.8%
  580      1163     12.69    1.0%
  600      1200     14.92    1.2%
  620      1238     14.61    1.1%
  640      1277     14.53    1.1%
  660      1310     16.56    1.2%
  680      1342     14.78    1.1%
  700      1382     15.81    1.1%
  720      1403     14.45    1.0%
  740      1441     16.84    1.1%
  760      1475     12.83    0.8%
  780      1506     13.76    0.9%
  800      1541     14.16    0.9%
  820      1580     13.38    0.8%
  840      1621     14.67    0.9%
  860      1646     14.84    0.9%
  880      1686     12.79    0.7%
  900      1704     10.11    0.5%
  920      1739     10.95    0.6%
  940      1785     13.97    0.7%
  960      1815      15.2    0.8%
  980      1853     15.93    0.8%
 1000      1877     11.72    0.6%
 1020      1918      16.9    0.8%

Quality and confidence:
param     error
s         0.001

Model:
Time ~=    173.3
    + s    1.714
              µs

Reads = 6 + (0 * s)
Writes = 5 + (0 * s)

Pallet: "pallet_contracts", Extrinsic: "call", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Contracts CodeStorage (r:1 w:0)
Storage: Timestamp Now (r:1 w:0)
Storage: System Account (r:1 w:1)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    140.1
              µs

Reads = 4
Writes = 2

Min Squares Analysis
========
-- Extrinsic Time --

Model:
Time ~=    140.1
              µs

Reads = 4
Writes = 2

Pallet: "pallet_contracts", Extrinsic: "upload_code", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: Contracts CodeStorage (r:1 w:1)
Storage: Contracts PristineCode (r:0 w:1)
Storage: Contracts OwnerInfoOf (r:0 w:1)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    51.22
    + c    66.99
              µs

Reads = 1 + (0 * c)
Writes = 3 + (0 * c)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    c   mean µs  sigma µs       %
    0     49.05     0.404    0.8%
    1     118.1      1.11    0.9%
    2     188.3     0.647    0.3%
    3     251.3     2.202    0.8%
    4     317.7     0.398    0.1%
    5     385.6     7.908    2.0%
    6     448.2     0.587    0.1%
    7     520.8     0.977    0.1%
    8     584.5     0.843    0.1%
    9     657.6     13.63    2.0%
   10     715.3     6.105    0.8%
   11     778.8     5.165    0.6%
   12       845     9.407    1.1%
   13     921.8     1.345    0.1%
   14     993.2     12.84    1.2%
   15      1069      11.6    1.0%
   16      1129     16.25    1.4%
   17      1191     12.48    1.0%
   18      1257     15.24    1.2%
   19      1337     8.747    0.6%
   20      1389     12.84    0.9%
   21      1446     11.65    0.8%
   22      1514     14.21    0.9%
   23      1580     12.73    0.8%
   24      1640     12.51    0.7%
   25      1734     13.64    0.7%
   26      1817     10.32    0.5%
   27      1870     11.74    0.6%
   28      1939     14.05    0.7%
   29      1998     11.06    0.5%
   30      2063      10.5    0.5%
   31      2124     14.67    0.6%
   32      2202     14.35    0.6%
   33      2272     12.43    0.5%
   34      2349      16.7    0.7%
   35      2406     8.601    0.3%
   36      2474     9.112    0.3%
   37      2529     13.33    0.5%
   38      2599     9.892    0.3%
   39      2661     12.42    0.4%
   40      2723     7.675    0.2%
   41      2793     15.14    0.5%
   42      2849      14.2    0.4%
   43      2930     14.36    0.4%
   44      2986     9.762    0.3%
   45      3046     16.93    0.5%
   46      3107     9.518    0.3%
   47      3183     6.795    0.2%
   48      3240     9.944    0.3%
   49      3363     16.42    0.4%
   50      3427     13.68    0.3%
   51      3502     9.542    0.2%
   52      3578     18.94    0.5%
   53      3622     24.19    0.6%
   54      3694     14.28    0.3%
   55      3748     9.205    0.2%
   56      3816      8.29    0.2%
   57      3881     8.758    0.2%
   58      3953     11.61    0.2%
   59      4000     11.61    0.2%
   60      4081     17.83    0.4%
   61      4146     18.82    0.4%
   62      4213     16.35    0.3%
   63      4264     13.91    0.3%
   64      4324     10.78    0.2%

Quality and confidence:
param     error
c         0.037

Model:
Time ~=    49.07
    + c    67.15
              µs

Reads = 1 + (0 * c)
Writes = 3 + (0 * c)

Pallet: "pallet_contracts", Extrinsic: "remove_code", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: Contracts OwnerInfoOf (r:1 w:1)
Storage: Contracts CodeStorage (r:0 w:1)
Storage: Contracts PristineCode (r:0 w:1)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    24.31
              µs

Reads = 1
Writes = 3

Min Squares Analysis
========
-- Extrinsic Time --

Model:
Time ~=    24.31
              µs

Reads = 1
Writes = 3

Pallet: "pallet_contracts", Extrinsic: "seal_caller", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: System Account (r:1 w:0)
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Contracts CodeStorage (r:1 w:0)
Storage: Timestamp Now (r:1 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    213.5
    + r    49.22
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    r   mean µs  sigma µs       %
    0     213.4     0.208    0.0%
    1     265.8     3.825    1.4%
    2     314.1     0.235    0.0%
    3     361.1     0.424    0.1%
    4       410     0.504    0.1%
    5     457.7     0.505    0.1%
    6     508.2     4.983    0.9%
    7     557.1     1.903    0.3%
    8     604.1     0.733    0.1%
    9     651.1     0.457    0.0%
   10     704.4     9.802    1.3%
   11     748.8     7.685    1.0%
   12     798.1     10.37    1.2%
   13       847     11.36    1.3%
   14     894.4     0.786    0.0%
   15     942.9     1.856    0.1%
   16     995.4     10.75    1.0%
   17      1065      3.86    0.3%
   18      1113     2.278    0.2%
   19      1174     4.862    0.4%
   20      1219     2.828    0.2%

Quality and confidence:
param     error
r         0.116

Model:
Time ~=    208.2
    + r    49.87
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Pallet: "pallet_contracts", Extrinsic: "seal_address", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: System Account (r:1 w:0)
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Contracts CodeStorage (r:1 w:0)
Storage: Timestamp Now (r:1 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    228.6
    + r    48.26
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    r   mean µs  sigma µs       %
    0     218.3     0.466    0.2%
    1     272.8     0.813    0.2%
    2     321.1      0.59    0.1%
    3     372.2     1.494    0.4%
    4     425.2     1.549    0.3%
    5     474.9     1.568    0.3%
    6     524.1     1.327    0.2%
    7     575.9     0.657    0.1%
    8     626.7     0.894    0.1%
    9       674      1.09    0.1%
   10     704.7     12.69    1.8%
   11       745     2.721    0.3%
   12     801.9     13.27    1.6%
   13     844.6     11.42    1.3%
   14     914.7      17.2    1.8%
   15     958.8     14.46    1.5%
   16     992.5     8.258    0.8%
   17      1043     10.66    1.0%
   18      1086     8.296    0.7%
   19      1134     7.348    0.6%
   20      1188     13.37    1.1%

Quality and confidence:
param     error
r         0.132

Model:
Time ~=    230.5
    + r     47.9
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Pallet: "pallet_contracts", Extrinsic: "seal_gas_left", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: System Account (r:1 w:0)
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Contracts CodeStorage (r:1 w:0)
Storage: Timestamp Now (r:1 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    217.2
    + r    47.83
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    r   mean µs  sigma µs       %
    0     213.2     0.178    0.0%
    1     264.1     0.331    0.1%
    2     313.2     1.414    0.4%
    3     360.6     2.045    0.5%
    4     408.6     0.358    0.0%
    5     455.2      0.44    0.0%
    6     502.5     1.566    0.3%
    7     552.1     0.612    0.1%
    8     623.5     5.558    0.8%
    9     664.2     1.553    0.2%
   10     718.1     2.105    0.2%
   11     741.6      2.32    0.3%
   12     799.5     10.79    1.3%
   13     838.1     8.648    1.0%
   14     889.9     1.316    0.1%
   15     936.9     5.364    0.5%
   16     984.3     4.729    0.4%
   17      1031     4.137    0.4%
   18      1079        10    0.9%
   19      1127     11.43    1.0%
   20      1182     12.97    1.0%

Quality and confidence:
param     error
r         0.108

Model:
Time ~=      219
    + r    48.03
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Pallet: "pallet_contracts", Extrinsic: "seal_balance", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: System Account (r:1 w:0)
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Contracts CodeStorage (r:1 w:0)
Storage: Timestamp Now (r:1 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    218.8
    + r    136.7
              µs

Reads = 5 + (0 * r)
Writes = 1 + (0 * r)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    r   mean µs  sigma µs       %
    0     212.9     0.405    0.1%
    1     355.4     0.292    0.0%
    2     493.2     0.505    0.1%
    3     626.5     1.254    0.2%
    4     765.8       1.4    0.1%
    5     907.3     12.43    1.3%
    6      1044      11.6    1.1%
    7      1175      5.73    0.4%
    8      1322     11.95    0.9%
    9      1457     12.47    0.8%
   10      1591     12.17    0.7%
   11      1725     16.13    0.9%
   12      1857     17.53    0.9%
   13      1994     13.67    0.6%
   14      2134     12.83    0.6%
   15      2289     5.612    0.2%
   16      2431      10.9    0.4%
   17      2538     10.48    0.4%
   18      2682      18.4    0.6%
   19      2821     13.79    0.4%
   20      2950     11.23    0.3%

Quality and confidence:
param     error
r         0.152

Model:
Time ~=      219
    + r      137
              µs

Reads = 5 + (0 * r)
Writes = 1 + (0 * r)

Pallet: "pallet_contracts", Extrinsic: "seal_value_transferred", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: System Account (r:1 w:0)
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Contracts CodeStorage (r:1 w:0)
Storage: Timestamp Now (r:1 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=      216
    + r       48
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    r   mean µs  sigma µs       %
    0     213.3     0.121    0.0%
    1     263.8     0.201    0.0%
    2     312.9     0.362    0.1%
    3     360.3     0.557    0.1%
    4       409     0.198    0.0%
    5       456     0.142    0.0%
    6     503.2     0.617    0.1%
    7     556.8      5.75    1.0%
    8     602.3     4.364    0.7%
    9       654      10.3    1.5%
   10     697.7     9.577    1.3%
   11     744.7       7.9    1.0%
   12     791.6     7.705    0.9%
   13     835.8     3.884    0.4%
   14     888.5     0.705    0.0%
   15     941.9     10.33    1.0%
   16     992.6      12.3    1.2%
   17      1042      14.1    1.3%
   18      1083     11.52    1.0%
   19      1137     11.94    1.0%
   20      1184     13.41    1.1%

Quality and confidence:
param     error
r         0.096

Model:
Time ~=    214.4
    + r    48.43
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Pallet: "pallet_contracts", Extrinsic: "seal_minimum_balance", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: System Account (r:1 w:0)
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Contracts CodeStorage (r:1 w:0)
Storage: Timestamp Now (r:1 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    216.9
    + r    47.87
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    r   mean µs  sigma µs       %
    0     213.4     0.174    0.0%
    1     264.6     0.434    0.1%
    2       314     3.923    1.2%
    3     363.9     4.206    1.1%
    4     409.2     0.685    0.1%
    5     460.6     5.678    1.2%
    6     504.7     4.195    0.8%
    7     552.4     0.498    0.0%
    8     599.6     0.512    0.0%
    9     649.1     4.804    0.7%
   10     698.4      9.85    1.4%
   11     754.4        14    1.8%
   12     787.9     2.051    0.2%
   13     843.6     11.75    1.3%
   14     903.1     16.18    1.7%
   15     943.8     10.58    1.1%
   16     986.5     9.872    1.0%
   17      1039     12.75    1.2%
   18      1083      11.6    1.0%
   19      1127     7.594    0.6%
   20      1177     8.577    0.7%

Quality and confidence:
param     error
r         0.106

Model:
Time ~=    216.9
    + r    48.19
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Pallet: "pallet_contracts", Extrinsic: "seal_block_number", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: System Account (r:1 w:0)
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Contracts CodeStorage (r:1 w:0)
Storage: Timestamp Now (r:1 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    216.9
    + r    47.57
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    r   mean µs  sigma µs       %
    0     213.2     0.144    0.0%
    1     263.6     0.365    0.1%
    2     312.6      1.57    0.5%
    3     359.8     0.249    0.0%
    4     411.2     4.884    1.1%
    5     455.2     0.742    0.1%
    6     502.3     0.698    0.1%
    7     557.1     10.36    1.8%
    8     603.6     8.641    1.4%
    9       645     0.866    0.1%
   10     698.2     12.92    1.8%
   11     738.1     1.205    0.1%
   12     792.5     12.03    1.5%
   13       835      8.35    0.9%
   14     883.6     0.791    0.0%
   15     931.8     1.108    0.1%
   16     981.5      8.16    0.8%
   17      1026     8.015    0.7%
   18      1072      1.32    0.1%
   19      1125     9.966    0.8%
   20      1181      10.4    0.8%

Quality and confidence:
param     error
r         0.086

Model:
Time ~=    216.6
    + r    47.81
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Pallet: "pallet_contracts", Extrinsic: "seal_now", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: System Account (r:1 w:0)
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Contracts CodeStorage (r:1 w:0)
Storage: Timestamp Now (r:1 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=      216
    + r    47.73
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    r   mean µs  sigma µs       %
    0     213.1     0.211    0.0%
    1     263.6     0.255    0.0%
    2     315.8     5.342    1.6%
    3     359.2      0.47    0.1%
    4     411.6     8.954    2.1%
    5     454.1     0.404    0.0%
    6     501.9      0.79    0.1%
    7     552.2      0.92    0.1%
    8     598.3     0.654    0.1%
    9     649.8     10.18    1.5%
   10     692.3     1.525    0.2%
   11       739     1.372    0.1%
   12     794.2     11.66    1.4%
   13     835.6      8.22    0.9%
   14     907.3     12.12    1.3%
   15     939.3     11.56    1.2%
   16       989     13.02    1.3%
   17      1027     5.262    0.5%
   18      1076     6.669    0.6%
   19      1130     13.79    1.2%
   20      1184     15.66    1.3%

Quality and confidence:
param     error
r          0.11

Model:
Time ~=    214.8
    + r     48.2
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Pallet: "pallet_contracts", Extrinsic: "seal_weight_to_fee", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: System Account (r:1 w:0)
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Contracts CodeStorage (r:1 w:0)
Storage: Timestamp Now (r:1 w:0)
Storage: TransactionPayment NextFeeMultiplier (r:1 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    218.2
    + r      120
              µs

Reads = 5 + (0 * r)
Writes = 1 + (0 * r)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    r   mean µs  sigma µs       %
    0     213.2     0.228    0.1%
    1     338.7      0.49    0.1%
    2     459.2     1.154    0.2%
    3     587.8     11.95    2.0%
    4       697     4.559    0.6%
    5     817.7      4.34    0.5%
    6       948     15.64    1.6%
    7      1059     8.272    0.7%
    8      1175     9.316    0.7%
    9      1296     13.69    1.0%
   10      1426     17.11    1.1%
   11      1550      15.6    1.0%
   12      1665     12.92    0.7%
   13      1780     9.698    0.5%
   14      1910     10.65    0.5%
   15      2017     13.17    0.6%
   16      2143     13.69    0.6%
   17      2269     12.24    0.5%
   18      2399     12.99    0.5%
   19      2513     13.92    0.5%
   20      2631     8.282    0.3%

Quality and confidence:
param     error
r         0.141

Model:
Time ~=    216.4
    + r    120.7
              µs

Reads = 5 + (0 * r)
Writes = 1 + (0 * r)

Pallet: "pallet_contracts", Extrinsic: "seal_gas", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: System Account (r:1 w:0)
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Contracts CodeStorage (r:1 w:0)
Storage: Timestamp Now (r:1 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    124.5
    + r    24.48
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    r   mean µs  sigma µs       %
    0     122.2     0.139    0.1%
    1     148.8     0.244    0.1%
    2     173.4     0.162    0.0%
    3     199.3     0.219    0.1%
    4     222.8     0.187    0.0%
    5     246.3     0.166    0.0%
    6     272.4     0.211    0.0%
    7     295.6      0.23    0.0%
    8     318.9     0.319    0.1%
    9     342.4     0.129    0.0%
   10     366.4     0.455    0.1%
   11       397     0.387    0.0%
   12     421.1     0.578    0.1%
   13     444.9     0.659    0.1%
   14     468.2     0.472    0.1%
   15     492.1     0.451    0.0%
   16       516     0.476    0.0%
   17     543.4     8.042    1.4%
   18       564     0.735    0.1%
   19     588.3     0.807    0.1%
   20     618.1     6.903    1.1%

Quality and confidence:
param     error
r         0.033

Model:
Time ~=    123.8
    + r    24.57
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Pallet: "pallet_contracts", Extrinsic: "seal_input", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: System Account (r:1 w:0)
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Contracts CodeStorage (r:1 w:0)
Storage: Timestamp Now (r:1 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    216.2
    + r    47.11
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    r   mean µs  sigma µs       %
    0     213.4     0.152    0.0%
    1     263.3     0.215    0.0%
    2     314.5     4.246    1.3%
    3     357.3     0.369    0.1%
    4       409     7.676    1.8%
    5     451.4     0.412    0.0%
    6     498.1     1.561    0.3%
    7     551.9     7.457    1.3%
    8     593.1     0.699    0.1%
    9     645.8     9.619    1.4%
   10     688.6     8.015    1.1%
   11     734.2     4.923    0.6%
   12     777.2     0.897    0.1%
   13     827.5     9.313    1.1%
   14     902.3     8.042    0.8%
   15     925.6     4.782    0.5%
   16     973.1     8.396    0.8%
   17      1021     6.667    0.6%
   18      1071     12.91    1.2%
   19      1113     13.08    1.1%
   20      1170     15.35    1.3%

Quality and confidence:
param     error
r         0.108

Model:
Time ~=    215.5
    + r    47.51
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Pallet: "pallet_contracts", Extrinsic: "seal_input_per_kb", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: System Account (r:1 w:0)
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Contracts CodeStorage (r:1 w:0)
Storage: Timestamp Now (r:1 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    295.9
    + n    11.86
              µs

Reads = 4 + (0 * n)
Writes = 1 + (0 * n)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    n   mean µs  sigma µs       %
    0     263.5     0.239    0.0%
   20     507.3     7.507    1.4%
   40     746.6     9.774    1.3%
   60     986.7     8.083    0.8%
   80      1233     12.55    1.0%
  100      1477     15.83    1.0%
  120      1710     10.52    0.6%
  140      1952      16.2    0.8%
  160      2203     4.973    0.2%
  180      2440     10.81    0.4%
  200      2668     15.57    0.5%
  220      2911     12.74    0.4%
  240      3147     8.782    0.2%
  260      3403     20.38    0.5%
  280      3640     15.52    0.4%
  300      3866     9.768    0.2%
  320      4104     14.04    0.3%
  340      4336     12.12    0.2%
  360      4598     15.23    0.3%
  380      4815        13    0.2%
  400      5045     12.72    0.2%
  420      5283     10.49    0.1%
  440      5528     15.41    0.2%
  460      5756     18.67    0.3%
  480      5985     12.67    0.2%
  500      6231     16.23    0.2%
  520      6465     18.78    0.2%
  540      6732     25.86    0.3%
  560      6935      12.5    0.1%
  580      7206     12.46    0.1%
  600      7429     13.38    0.1%
  620      7662     13.95    0.1%
  640      7901     23.33    0.2%
  660      8127     19.38    0.2%
  680      8375     14.92    0.1%
  700      8626     23.83    0.2%
  720      8832     19.15    0.2%
  740      9110     33.35    0.3%
  760      9299     13.34    0.1%
  780      9556      18.9    0.1%
  800      9787     15.65    0.1%
  820     10010     29.04    0.2%
  840     10240     12.24    0.1%
  860     10490      26.5    0.2%
  880     10710     19.06    0.1%
  900     10950     21.09    0.1%
  920     11180     23.17    0.2%
  940     11430     20.79    0.1%
  960     11670     22.58    0.1%
  980     11910     29.89    0.2%
 1000     12130     35.32    0.2%
 1020     12400     27.79    0.2%

Quality and confidence:
param     error
n         0.003

Model:
Time ~=    297.6
    + n    11.86
              µs

Reads = 4 + (0 * n)
Writes = 1 + (0 * n)

Pallet: "pallet_contracts", Extrinsic: "seal_return", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: System Account (r:1 w:0)
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Contracts CodeStorage (r:1 w:0)
Storage: Timestamp Now (r:1 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    209.6
    + r     1.84
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    r   mean µs  sigma µs       %
    0     209.7     0.172    0.0%
    1     211.4     0.148    0.0%

Quality and confidence:
param     error
r         0.075

Model:
Time ~=    209.7
    + r    1.783
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Pallet: "pallet_contracts", Extrinsic: "seal_return_per_kb", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: System Account (r:1 w:0)
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Contracts CodeStorage (r:1 w:0)
Storage: Timestamp Now (r:1 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    212.2
    + n    0.198
              µs

Reads = 4 + (0 * n)
Writes = 1 + (0 * n)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    n   mean µs  sigma µs       %
    0     211.5     0.218    0.1%
   20     217.7     3.168    1.4%
   40     219.9     0.088    0.0%
   60       224     0.286    0.1%
   80     227.7     0.164    0.0%
  100     231.8     0.322    0.1%
  120     235.6     0.304    0.1%
  140     239.7     0.232    0.0%
  160     243.7      0.29    0.1%
  180     259.5      8.82    3.3%
  200     259.2     2.935    1.1%
  220     261.4     0.169    0.0%
  240     271.2     1.979    0.7%
  260     271.3      1.75    0.6%
  280     273.9     0.366    0.1%
  300     271.9     0.217    0.0%
  320     275.5     0.338    0.1%
  340     279.7     0.155    0.0%
  360     283.4      0.35    0.1%
  380     287.3     0.242    0.0%
  400     291.4     0.102    0.0%
  420     295.4     0.227    0.0%
  440     299.5     0.202    0.0%
  460     303.1     0.174    0.0%
  480     308.5     3.886    1.2%
  500     311.4     0.284    0.0%
  520     315.4     0.194    0.0%
  540     319.3     0.339    0.1%
  560     323.1     0.303    0.0%
  580     326.7     0.123    0.0%
  600     331.1     0.225    0.0%
  620     341.1     4.406    1.2%
  640     339.3     0.342    0.1%
  660     342.9     0.402    0.1%
  680     346.9      0.17    0.0%
  700     351.1     0.142    0.0%
  720     354.7     0.355    0.1%
  740       359     0.265    0.0%
  760     366.1     6.442    1.7%
  780     370.9     3.769    1.0%
  800     371.6     1.496    0.4%
  820     374.9     0.468    0.1%
  840     380.6     4.623    1.2%
  860     382.7     0.354    0.0%
  880     393.4     5.526    1.4%
  900     390.5     0.377    0.0%
  920     394.8     0.288    0.0%
  940     398.4     0.295    0.0%
  960     402.4     0.272    0.0%
  980     409.6     5.363    1.3%
 1000     410.4     0.268    0.0%
 1020     414.4     0.403    0.0%

Quality and confidence:
param     error
n             0

Model:
Time ~=    214.4
    + n    0.197
              µs

Reads = 4 + (0 * n)
Writes = 1 + (0 * n)

Pallet: "pallet_contracts", Extrinsic: "seal_terminate", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: System Account (r:1 w:0)
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Contracts CodeStorage (r:1 w:0)
Storage: Timestamp Now (r:1 w:0)
Storage: Contracts DeletionQueue (r:1 w:1)
Storage: Contracts OwnerInfoOf (r:1 w:1)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    213.4
    + r    51.61
              µs

Reads = 4 + (4 * r)
Writes = 1 + (5 * r)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    r   mean µs  sigma µs       %
    0     214.4     1.964    0.9%
    1       265     0.164    0.0%

Quality and confidence:
param     error
r         0.656

Model:
Time ~=    214.4
    + r    50.64
              µs

Reads = 4 + (4 * r)
Writes = 1 + (5 * r)

Pallet: "pallet_contracts", Extrinsic: "seal_random", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: System Account (r:1 w:0)
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Contracts CodeStorage (r:1 w:0)
Storage: Timestamp Now (r:1 w:0)
Storage: RandomnessCollectiveFlip RandomMaterial (r:1 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    216.9
    + r    158.2
              µs

Reads = 5 + (0 * r)
Writes = 1 + (0 * r)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    r   mean µs  sigma µs       %
    0     213.2     0.166    0.0%
    1     376.9     2.604    0.6%
    2     533.1      1.31    0.2%
    3     692.8     6.541    0.9%
    4       845     1.412    0.1%
    5      1008     10.33    1.0%
    6      1163     11.73    1.0%
    7      1325        14    1.0%
    8      1482     14.26    0.9%
    9      1661     12.85    0.7%
   10      1797     12.51    0.6%
   11      1963     4.305    0.2%
   12      2123     12.09    0.5%
   13      2268      14.2    0.6%
   14      2438     6.969    0.2%
   15      2577      8.25    0.3%
   16      2727      14.3    0.5%
   17      2922     8.688    0.2%
   18      3092     18.71    0.6%
   19      3237     12.85    0.3%
   20      3391     13.32    0.3%

Quality and confidence:
param     error
r         0.169

Model:
Time ~=    214.1
    + r    158.7
              µs

Reads = 5 + (0 * r)
Writes = 1 + (0 * r)

Pallet: "pallet_contracts", Extrinsic: "seal_deposit_event", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: System Account (r:1 w:0)
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Contracts CodeStorage (r:1 w:0)
Storage: Timestamp Now (r:1 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    226.1
    + r    280.1
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    r   mean µs  sigma µs       %
    0     209.9     0.143    0.0%
    1     503.9     1.618    0.3%
    2     783.2     0.946    0.1%
    3      1071     7.632    0.7%
    4      1352     4.849    0.3%
    5      1635     6.862    0.4%
    6      1912        10    0.5%
    7      2189     7.899    0.3%
    8      2480     10.91    0.4%
    9      2755     6.639    0.2%
   10      3027       8.4    0.2%
   11      3316     10.89    0.3%
   12      3593     12.59    0.3%
   13      3861     9.442    0.2%
   14      4145     9.892    0.2%
   15      4413     10.49    0.2%
   16      4677     16.58    0.3%
   17      5011     12.74    0.2%
   18      5279     12.88    0.2%
   19      5552     14.98    0.2%
   20      5835     11.86    0.2%

Quality and confidence:
param     error
r         0.171

Model:
Time ~=    225.9
    + r    280.2
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Pallet: "pallet_contracts", Extrinsic: "seal_deposit_event_per_topic_and_kb", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: System Account (r:1 w:0)
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Contracts CodeStorage (r:1 w:0)
Storage: Timestamp Now (r:1 w:0)
Storage: System EventTopics (r:100 w:100)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    497.5
    + t    296.7
    + n     82.1
              µs

Reads = 4 + (100 * t) + (0 * n)
Writes = 1 + (100 * t) + (0 * n)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    t     n   mean µs  sigma µs       %
    0    16      1777     7.656    0.4%
    1    16      2126     11.71    0.5%
    2    16      2420     17.05    0.7%
    3    16      2717      15.5    0.5%
    4     0      1655     14.15    0.8%
    4     1      1766     24.02    1.3%
    4     2      1810     10.72    0.5%
    4     3      1887     14.45    0.7%
    4     4      1998     8.233    0.4%
    4     5      2062     16.51    0.8%
    4     6      2143     13.96    0.6%
    4     7      2228     11.94    0.5%
    4     8      2258     12.91    0.5%
    4     9      2349     13.39    0.5%
    4    10      2453     10.28    0.4%
    4    11      2536     10.05    0.3%
    4    12      2603     13.44    0.5%
    4    13      2718     11.48    0.4%
    4    14      2806     8.653    0.3%
    4    15      2894     15.76    0.5%
    4    16      2987     9.677    0.3%

Quality and confidence:
param     error
t         1.992
n         0.392

Model:
Time ~=    491.4
    + t    288.3
    + n     82.8
              µs

Reads = 4 + (100 * t) + (0 * n)
Writes = 1 + (100 * t) + (0 * n)

Pallet: "pallet_contracts", Extrinsic: "seal_debug_message", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: System Account (r:1 w:0)
Storage: Contracts ContractInfoOf (r:1 w:1)
Storage: Contracts CodeStorage (r:1 w:0)
Storage: Timestamp Now (r:1 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    132.3
    + r    39.95
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    r   mean µs  sigma µs       %
    0     129.1     0.158    0.1%
    1     173.7     1.575    0.9%
    2     212.4     0.266    0.1%
    3     252.7     0.434    0.1%
    4     291.7     0.567    0.1%
    5     329.8     0.351    0.1%
    6     374.4     0.955    0.2%
    7     413.4     1.179    0.2%
    8     454.4     5.344    1.1%
    9     488.5     0.711    0.1%
   10     528.3     0.625    0.1%
   11     577.2     5.689    0.9%
   12     611.9      1.28    0.2%
   13     652.4     6.277    0.9%
   14     691.6      4.81    0.6%
   15     749.5     4.689    0.6%
   16       774     11.49    1.4%
   17     814.4     4.983    0.6%
   18     852.1     2.491    0.2%
   19     890.3     5.551    0.6%
   20     941.7     12.13    1.2%

Quality and confidence:
param     error
r         0.074

Model:
Time ~=    130.8
    + r    40.26
              µs

Reads = 4 + (0 * r)
Writes = 1 + (0 * r)

Pallet: "pallet_contracts", Extrinsic: "seal_set_storage", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: Skipped Metadata (r:0 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    49.24
    + r    405.1
              µs

Reads = 4 + (100 * r)
Writes = 1 + (100 * r)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    r   mean µs  sigma µs       %
    0     213.6     0.192    0.0%
    1     551.4     4.734    0.8%
    2     909.8      8.03    0.8%
    3      1293     10.63    0.8%
    4      1656     9.575    0.5%
    5      2050     10.28    0.5%
    6      2437     14.72    0.6%
    7      2813     15.48    0.5%
    8      3180     23.13    0.7%
    9      3651     20.66    0.5%
   10      4074     17.21    0.4%
   11      4500     18.76    0.4%
   12      4863     19.41    0.3%
   13      5281     38.34    0.7%
   14      5658     25.58    0.4%
   15      6095     27.17    0.4%
   16      6502     21.68    0.3%
   17      6973     50.52    0.7%
   18      7498     26.22    0.3%
   19      7945     24.49    0.3%
   20      8349      45.6    0.5%

Quality and confidence:
param     error
r         1.044

Model:
Time ~=    38.84
    + r      408
              µs

Reads = 4 + (100 * r)
Writes = 1 + (100 * r)

Pallet: "pallet_contracts", Extrinsic: "seal_set_storage_per_new_kb", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: Skipped Metadata (r:0 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    619.1
    + n    27.28
              µs

Reads = 105 + (0 * n)
Writes = 103 + (0 * n)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    n   mean µs  sigma µs       %
    0     558.3      6.26    1.1%
    1     649.2     6.435    0.9%
    2     689.1     8.072    1.1%
    3     705.6     2.535    0.3%
    4     729.5     2.155    0.2%
    5     755.8     4.868    0.6%
    6     782.2     8.588    1.0%
    7     810.4     3.304    0.4%
    8     844.8     9.263    1.0%
    9     867.8     8.533    0.9%
   10     890.6     5.009    0.5%
   11     925.1     10.17    1.0%
   12     945.5     4.594    0.4%
   13     983.7     11.41    1.1%
   14      1007     2.851    0.2%
   15      1028     13.58    1.3%
   16      1047      5.19    0.4%

Quality and confidence:
param     error
n         0.265

Model:
Time ~=    610.7
    + n    28.22
              µs

Reads = 105 + (0 * n)
Writes = 103 + (0 * n)

Pallet: "pallet_contracts", Extrinsic: "seal_set_storage_per_old_kb", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: Skipped Metadata (r:0 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=      637
    + n    10.13
              µs

Reads = 105 + (0 * n)
Writes = 103 + (0 * n)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    n   mean µs  sigma µs       %
    0     560.9     4.368    0.7%
    1     634.8     1.924    0.3%
    2     665.4     1.644    0.2%
    3     683.7     13.36    1.9%
    4     690.4     8.328    1.2%
    5     692.7     3.369    0.4%
    6     700.7     6.793    0.9%
    7     714.2     7.778    1.0%
    8       716      4.01    0.5%
    9     728.8     13.42    1.8%
   10     731.4     9.529    1.3%
   11     738.6     3.282    0.4%
   12     743.2     1.619    0.2%
   13     763.8     1.939    0.2%
   14     778.4     3.461    0.4%
   15     792.4     1.827    0.2%
   16     802.5     4.799    0.5%

Quality and confidence:
param     error
n         0.319

Model:
Time ~=      625
    + n    11.12
              µs

Reads = 105 + (0 * n)
Writes = 103 + (0 * n)

Pallet: "pallet_contracts", Extrinsic: "seal_clear_storage", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: Skipped Metadata (r:0 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    102.1
    + r      381
              µs

Reads = 5 + (100 * r)
Writes = 3 + (100 * r)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    r   mean µs  sigma µs       %
    0     213.2     0.279    0.1%
    1     558.3     1.553    0.2%
    2     904.3     11.14    1.2%
    3      1260      8.22    0.6%
    4      1605     18.56    1.1%
    5      1977     11.33    0.5%
    6      2361     16.78    0.7%
    7      2701     12.47    0.4%
    8      3056     13.84    0.4%
    9      3531      13.9    0.3%
   10      3883     28.38    0.7%
   11      4272     25.36    0.5%
   12      4635     16.21    0.3%
   13      4992     14.71    0.2%
   14      5382     23.69    0.4%
   15      5770     17.29    0.2%
   16      6194     39.01    0.6%
   17      6575     18.72    0.2%
   18      7120     31.13    0.4%
   19      7533     25.81    0.3%
   20      7943     31.14    0.3%

Quality and confidence:
param     error
r          0.97

Model:
Time ~=    78.56
    + r    384.8
              µs

Reads = 5 + (100 * r)
Writes = 3 + (100 * r)

Pallet: "pallet_contracts", Extrinsic: "seal_clear_storage_per_kb", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: Skipped Metadata (r:0 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=      610
    + n     10.4
              µs

Reads = 105 + (0 * n)
Writes = 103 + (0 * n)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    n   mean µs  sigma µs       %
    0     563.5     10.08    1.7%
    1     620.5     9.245    1.4%
    2     641.9     2.323    0.3%
    3     650.7     9.572    1.4%
    4     662.2     6.646    1.0%
    5     667.1     1.329    0.1%
    6     674.8     3.231    0.4%
    7     686.8      5.78    0.8%
    8     692.9     10.56    1.5%
    9     693.5     3.113    0.4%
   10     700.4     1.942    0.2%
   11     715.9     1.612    0.2%
   12       718     2.288    0.3%
   13     734.6     1.198    0.1%
   14       752     4.116    0.5%
   15     799.9     8.559    1.0%
   16     798.4     16.64    2.0%

Quality and confidence:
param     error
n          0.28

Model:
Time ~=    601.5
    + n    11.37
              µs

Reads = 105 + (0 * n)
Writes = 103 + (0 * n)

Pallet: "pallet_contracts", Extrinsic: "seal_get_storage", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: Skipped Metadata (r:0 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    131.8
    + r    320.8
              µs

Reads = 4 + (100 * r)
Writes = 1 + (0 * r)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    r   mean µs  sigma µs       %
    0     214.9      0.34    0.1%
    1       494     1.743    0.3%
    2     785.8     6.432    0.8%
    3      1105     10.76    0.9%
    4      1400     12.07    0.8%
    5      1715     9.804    0.5%
    6      2021     17.42    0.8%
    7      2335     11.52    0.4%
    8      2629     21.86    0.8%
    9      2997     7.216    0.2%
   10      3296     10.34    0.3%
   11      3631     27.27    0.7%
   12      3940     13.44    0.3%
   13      4295     15.09    0.3%
   14      4555     18.91    0.4%
   15      4916     12.83    0.2%
   16      5244     43.42    0.8%
   17      5590     30.33    0.5%
   18      6006     30.82    0.5%
   19      6341     24.94    0.3%
   20      6676     20.89    0.3%

Quality and confidence:
param     error
r         0.668

Model:
Time ~=    112.3
    + r      323
              µs

Reads = 4 + (100 * r)
Writes = 1 + (0 * r)

Pallet: "pallet_contracts", Extrinsic: "seal_get_storage_per_kb", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: Skipped Metadata (r:0 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    572.6
    + n    62.99
              µs

Reads = 104 + (0 * n)
Writes = 1 + (0 * n)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    n   mean µs  sigma µs       %
    0     494.7      2.79    0.5%
    1       610     1.706    0.2%
    2     712.5     1.801    0.2%
    3     770.6     2.755    0.3%
    4     835.3     8.859    1.0%
    5     893.7     4.322    0.4%
    6     955.8     4.926    0.5%
    7      1009     2.066    0.2%
    8      1075     6.864    0.6%
    9      1133     9.684    0.8%
   10      1192     11.12    0.9%
   11      1253     4.976    0.3%
   12      1310     5.696    0.4%
   13      1372     8.153    0.5%
   14      1448     15.94    1.1%
   15      1518     13.78    0.9%
   16      1597     11.51    0.7%

Quality and confidence:
param     error
n         0.346

Model:
Time ~=    556.3
    + n    64.17
              µs

Reads = 104 + (0 * n)
Writes = 1 + (0 * n)

Pallet: "pallet_contracts", Extrinsic: "seal_contains_storage", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: Skipped Metadata (r:0 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=      122
    + r    292.8
              µs

Reads = 4 + (100 * r)
Writes = 1 + (0 * r)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    r   mean µs  sigma µs       %
    0     213.8      0.27    0.1%
    1     472.3     14.77    3.1%
    2     725.5     2.871    0.3%
    3      1018     6.004    0.5%
    4      1258     9.359    0.7%
    5      1557     16.18    1.0%
    6      1852     12.18    0.6%
    7      2125     10.34    0.4%
    8      2396     13.87    0.5%
    9      2719     6.887    0.2%
   10      3030     22.72    0.7%
   11      3311     6.998    0.2%
   12      3656     31.25    0.8%
   13      3898     19.22    0.4%
   14      4181     22.36    0.5%
   15      4470     19.37    0.4%
   16      4797     16.26    0.3%
   17      5081     51.43    1.0%
   18      5488     22.59    0.4%
   19      5805      21.3    0.3%
   20      6117     24.67    0.4%

Quality and confidence:
param     error
r         0.691

Model:
Time ~=    106.5
    + r    294.9
              µs

Reads = 4 + (100 * r)
Writes = 1 + (0 * r)

Pallet: "pallet_contracts", Extrinsic: "seal_contains_storage_per_kb", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: Skipped Metadata (r:0 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    518.9
    + n    9.748
              µs

Reads = 104 + (0 * n)
Writes = 1 + (0 * n)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    n   mean µs  sigma µs       %
    0     462.7     1.688    0.3%
    1     515.2     1.601    0.3%
    2     549.1     1.822    0.3%
    3     554.8     1.525    0.2%
    4     570.8     9.104    1.5%
    5       572      1.29    0.2%
    6     579.7     1.519    0.2%
    7     588.7     2.053    0.3%
    8     593.8     1.501    0.2%
    9     600.2     2.575    0.4%
   10     608.3     2.227    0.3%
   11       619     2.787    0.4%
   12     623.4     2.395    0.3%
   13     641.8     8.518    1.3%
   14     664.6     13.77    2.0%
   15     673.9     7.384    1.0%
   16     674.7     3.946    0.5%

Quality and confidence:
param     error
n         0.245

Model:
Time ~=    508.3
    + n    10.67
              µs

Reads = 104 + (0 * n)
Writes = 1 + (0 * n)

Pallet: "pallet_contracts", Extrinsic: "seal_take_storage", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: Skipped Metadata (r:0 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    110.2
    + r    411.8
              µs

Reads = 5 + (100 * r)
Writes = 3 + (100 * r)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    r   mean µs  sigma µs       %
    0     214.6     0.168    0.0%
    1     589.3     4.274    0.7%
    2     959.8     5.679    0.5%
    3      1365     12.24    0.8%
    4      1745      9.74    0.5%
    5      2157     8.401    0.3%
    6      2546     14.52    0.5%
    7      2923     9.303    0.3%
    8      3319     11.38    0.3%
    9      3804     14.95    0.3%
   10      4200     15.52    0.3%
   11      4620     17.91    0.3%
   12      5028     23.24    0.4%
   13      5437     21.22    0.3%
   14      5845     35.07    0.5%
   15      6226     14.65    0.2%
   16      6637     32.42    0.4%
   17      7140     31.22    0.4%
   18      7675     37.99    0.4%
   19      8155     23.32    0.2%
   20      8519     33.21    0.3%

Quality and confidence:
param     error
r         0.927

Model:
Time ~=    88.09
    + r    415.5
              µs

Reads = 5 + (100 * r)
Writes = 3 + (100 * r)

Pallet: "pallet_contracts", Extrinsic: "seal_take_storage_per_kb", Lowest values: [], Highest values: [], Steps: 50, Repeat: 20
Raw Storage Info
========
Storage: Skipped Metadata (r:0 w:0)

Median Slopes Analysis
========
-- Extrinsic Time --

Model:
Time ~=    663.2
    + n    64.26
              µs

Reads = 105 + (0 * n)
Writes = 103 + (0 * n)

Min Squares Analysis
========
-- Extrinsic Time --

Data points distribution:
    n   mean µs  sigma µs       %
    0     585.2       1.6    0.2%
    1     711.3     7.368    1.0%
    2     798.1     4.263    0.5%
    3     864.4      1.52   <truncated>...

…--manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_contracts --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/contracts/src/weights.rs --template=./.maintain/frame-weight-template.hbs
@bkchr
Copy link
Member

bkchr commented Jan 31, 2022

bot merge

@paritytech-processbot
Copy link

Bot will approve on the behalf of @bkchr, since they are a team lead, in an attempt to reach the minimum approval count

@paritytech-processbot paritytech-processbot bot merged commit 4b48e8e into master Jan 31, 2022
@paritytech-processbot paritytech-processbot bot deleted the at-runtime-profiles branch January 31, 2022 14:16
@athei athei mentioned this pull request Jan 31, 2022
@xlc
Copy link
Contributor

xlc commented Jan 31, 2022

I guess I can figure out what should we do to make sure we are taking the best practice on optimizing the releases but it will be helpful if we have some docs explaining the exact steps.

Do we need to do anything at all other than bump the wasm builder version?
Do we need to also have production profile defined?
Do we need to pass additional flags to srtool when building wasm?
Do we need to pass additional flags when making production client build?

@athei
Copy link
Member Author

athei commented Feb 1, 2022

Do we need to do anything at all other than bump the wasm builder version?
Do we need to also have production profile defined?

Bump wasm builder and define a production profile. The release profile gets a bit worse because it cuts back on compilation time.

Do we need to pass additional flags to srtool when building wasm?

Yes: --profile production. Maybe it should be the new default so you get an error when you forget to define a production profile:
https://github.com/chevdor/srtool-cli/blob/c78ab3584a31a09fb568367bf148cf77f9900e75/cli/src/opts.rs#L96-L99

Do we need to pass additional flags when making production client build?

If you defined a production profile that is different from your currently used release profile you would certainly want to pass --profile production in order to use it.

agryaznov pushed a commit to agryaznov/substrate that referenced this pull request Feb 4, 2022
* Add production profile to wasm builder

* Fix profile detection

* Apply suggestions from code review

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>

* Replace panic! by println! + exit

* Default to `release` for wasm on debug builds

* Replaced unwrap by expect

* Update all weights

Rerun on the bm2 server.

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* cargo run --quiet --profile=production  --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_contracts --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/contracts/src/weights.rs --template=./.maintain/frame-weight-template.hbs

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
Co-authored-by: Parity Bot <admin@parity.io>
Wizdave97 pushed a commit to ComposableFi/substrate that referenced this pull request Feb 4, 2022
* Add production profile to wasm builder

* Fix profile detection

* Apply suggestions from code review

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>

* Replace panic! by println! + exit

* Default to `release` for wasm on debug builds

* Replaced unwrap by expect

* Update all weights

Rerun on the bm2 server.

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* cargo run --quiet --profile=production  --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_contracts --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/contracts/src/weights.rs --template=./.maintain/frame-weight-template.hbs

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
Co-authored-by: Parity Bot <admin@parity.io>
grishasobol pushed a commit to gear-tech/substrate that referenced this pull request Mar 28, 2022
* Add production profile to wasm builder

* Fix profile detection

* Apply suggestions from code review

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>

* Replace panic! by println! + exit

* Default to `release` for wasm on debug builds

* Replaced unwrap by expect

* Update all weights

Rerun on the bm2 server.

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* cargo run --quiet --profile=production  --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_contracts --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/contracts/src/weights.rs --template=./.maintain/frame-weight-template.hbs

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
Co-authored-by: Parity Bot <admin@parity.io>
ark0f pushed a commit to gear-tech/substrate that referenced this pull request Feb 27, 2023
* Add production profile to wasm builder

* Fix profile detection

* Apply suggestions from code review

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>

* Replace panic! by println! + exit

* Default to `release` for wasm on debug builds

* Replaced unwrap by expect

* Update all weights

Rerun on the bm2 server.

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* cargo run --quiet --profile=production  --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_contracts --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/contracts/src/weights.rs --template=./.maintain/frame-weight-template.hbs

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
Co-authored-by: Parity Bot <admin@parity.io>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
A0-please_review Pull request needs code review. B0-silent Changes should not be mentioned in any release notes C1-low PR touches the given topic and has a low impact on builders. D3-trivial 🧸 PR contains trivial changes in a runtime directory that do not require an audit
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants