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

[Builtins] Drop 'val' from 'KnownType' stuff #4499

Closed

Conversation

effectfully
Copy link
Contributor

Let's see if it's better this time around.

@effectfully
Copy link
Contributor Author

/benchmark plutus-benchmark:validation

@effectfully
Copy link
Contributor Author

Em?

@effectfully
Copy link
Contributor Author

/benchmark plutus-benchmark:validation

@iohk-devops
Copy link

Comparing benchmark results of 'plutus-benchmark:validation' on '70787f8b2' (base) and '9a990bfd3' (PR)

Script 70787f8 9a990bf Change
auction_1-1 234.3 μs 264.4 μs +12.8%
auction_1-2 862.2 μs 915.7 μs +6.2%
auction_1-3 855.3 μs 912.8 μs +6.7%
auction_1-4 303.4 μs 345.3 μs +13.8%
auction_2-1 235.4 μs 264.7 μs +12.4%
auction_2-2 860.1 μs 914.6 μs +6.3%
auction_2-3 1.094 ms 1.166 ms +6.6%
auction_2-4 853.9 μs 911.8 μs +6.8%
auction_2-5 303.5 μs 346.9 μs +14.3%
crowdfunding-success-1 274.4 μs 314.5 μs +14.6%
crowdfunding-success-2 275.0 μs 314.4 μs +14.3%
crowdfunding-success-3 276.3 μs 313.8 μs +13.6%
currency-1 327.1 μs 355.6 μs +8.7%
escrow-redeem_1-1 471.8 μs 519.8 μs +10.2%
escrow-redeem_1-2 470.8 μs 521.8 μs +10.8%
escrow-redeem_2-1 553.9 μs 611.0 μs +10.3%
escrow-redeem_2-2 552.7 μs 610.3 μs +10.4%
escrow-redeem_2-3 552.6 μs 610.8 μs +10.5%
escrow-refund-1 205.1 μs 232.6 μs +13.4%
future-increase-margin-1 324.8 μs 357.1 μs +9.9%
future-increase-margin-2 730.8 μs 790.0 μs +8.1%
future-increase-margin-3 732.7 μs 791.7 μs +8.1%
future-increase-margin-4 679.7 μs 729.8 μs +7.4%
future-increase-margin-5 1.053 ms 1.121 ms +6.5%
future-pay-out-1 325.5 μs 356.0 μs +9.4%
future-pay-out-2 731.7 μs 789.2 μs +7.9%
future-pay-out-3 730.1 μs 788.7 μs +8.0%
future-pay-out-4 1.054 ms 1.117 ms +6.0%
future-settle-early-1 326.9 μs 355.1 μs +8.6%
future-settle-early-2 735.1 μs 787.4 μs +7.1%
future-settle-early-3 736.4 μs 790.1 μs +7.3%
future-settle-early-4 810.7 μs 865.4 μs +6.7%
game-sm-success_1-1 532.4 μs 582.8 μs +9.5%
game-sm-success_1-2 257.6 μs 295.2 μs +14.6%
game-sm-success_1-3 856.0 μs 918.5 μs +7.3%
game-sm-success_1-4 301.6 μs 344.4 μs +14.2%
game-sm-success_2-1 532.5 μs 581.0 μs +9.1%
game-sm-success_2-2 255.8 μs 295.1 μs +15.4%
game-sm-success_2-3 855.0 μs 917.4 μs +7.3%
game-sm-success_2-4 301.6 μs 344.9 μs +14.4%
game-sm-success_2-5 856.5 μs 919.8 μs +7.4%
game-sm-success_2-6 302.1 μs 345.5 μs +14.4%
multisig-sm-1 542.4 μs 594.5 μs +9.6%
multisig-sm-2 529.7 μs 583.7 μs +10.2%
multisig-sm-3 534.0 μs 588.1 μs +10.1%
multisig-sm-4 539.5 μs 594.5 μs +10.2%
multisig-sm-5 758.4 μs 811.3 μs +7.0%
multisig-sm-6 543.8 μs 592.5 μs +9.0%
multisig-sm-7 532.0 μs 580.5 μs +9.1%
multisig-sm-8 538.7 μs 585.7 μs +8.7%
multisig-sm-9 540.5 μs 591.9 μs +9.5%
multisig-sm-10 758.1 μs 807.7 μs +6.5%
ping-pong-1 447.5 μs 486.2 μs +8.6%
ping-pong-2 446.5 μs 486.7 μs +9.0%
ping-pong_2-1 266.0 μs 296.3 μs +11.4%
prism-1 216.0 μs 243.9 μs +12.9%
prism-2 573.6 μs 629.9 μs +9.8%
prism-3 488.7 μs 536.0 μs +9.7%
pubkey-1 182.9 μs 209.0 μs +14.3%
stablecoin_1-1 1.184 ms 1.279 ms +8.0%
stablecoin_1-2 250.6 μs 289.2 μs +15.4%
stablecoin_1-3 1.355 ms 1.466 ms +8.2%
stablecoin_1-4 268.2 μs 307.4 μs +14.6%
stablecoin_1-5 1.703 ms 1.861 ms +9.3%
stablecoin_1-6 331.8 μs 380.0 μs +14.5%
stablecoin_2-1 1.188 ms 1.276 ms +7.4%
stablecoin_2-2 251.9 μs 288.4 μs +14.5%
stablecoin_2-3 1.357 ms 1.459 ms +7.5%
stablecoin_2-4 269.3 μs 306.6 μs +13.9%
token-account-1 248.4 μs 272.5 μs +9.7%
token-account-2 438.4 μs 479.9 μs +9.5%
uniswap-1 540.3 μs 577.2 μs +6.8%
uniswap-2 292.9 μs 325.7 μs +11.2%
uniswap-3 2.189 ms 2.389 ms +9.1%
uniswap-4 444.1 μs 504.9 μs +13.7%
uniswap-5 1.509 ms 1.664 ms +10.3%
uniswap-6 425.7 μs 484.1 μs +13.7%
vesting-1 466.3 μs 505.6 μs +8.4%

@effectfully
Copy link
Contributor Author

Eh.

@michaelpj
Copy link
Contributor

Sad times.

@effectfully
Copy link
Contributor Author

I have a bigger hammer, so let's see.

@effectfully
Copy link
Contributor Author

/benchmark plutus-benchmark:validation

@effectfully
Copy link
Contributor Author

Core looks promising for readKnown now (I haven't updated makeKnown yet, let's see how readKnown goes first).

@iohk-devops
Copy link

Comparing benchmark results of 'plutus-benchmark:validation' on '70787f8b2' (base) and '0b2d49c88' (PR)

Script 70787f8 0b2d49c Change
auction_1-1 234.0 μs 242.2 μs +3.5%
auction_1-2 862.7 μs 879.7 μs +2.0%
auction_1-3 853.8 μs 869.2 μs +1.8%
auction_1-4 304.9 μs 314.4 μs +3.1%
auction_2-1 235.0 μs 242.7 μs +3.3%
auction_2-2 862.3 μs 880.0 μs +2.1%
auction_2-3 1.100 ms 1.118 ms +1.6%
auction_2-4 853.2 μs 871.1 μs +2.1%
auction_2-5 304.2 μs 314.5 μs +3.4%
crowdfunding-success-1 276.1 μs 283.5 μs +2.7%
crowdfunding-success-2 277.8 μs 283.9 μs +2.2%
crowdfunding-success-3 277.0 μs 284.2 μs +2.6%
currency-1 327.1 μs 335.1 μs +2.4%
escrow-redeem_1-1 471.3 μs 485.6 μs +3.0%
escrow-redeem_1-2 471.4 μs 485.1 μs +2.9%
escrow-redeem_2-1 552.6 μs 565.5 μs +2.3%
escrow-redeem_2-2 553.1 μs 564.8 μs +2.1%
escrow-redeem_2-3 553.3 μs 565.2 μs +2.2%
escrow-refund-1 206.3 μs 210.7 μs +2.1%
future-increase-margin-1 325.5 μs 332.3 μs +2.1%
future-increase-margin-2 730.5 μs 742.9 μs +1.7%
future-increase-margin-3 733.7 μs 744.2 μs +1.4%
future-increase-margin-4 681.7 μs 691.5 μs +1.4%
future-increase-margin-5 1.055 ms 1.077 ms +2.1%
future-pay-out-1 325.4 μs 332.4 μs +2.2%
future-pay-out-2 732.4 μs 745.5 μs +1.8%
future-pay-out-3 733.0 μs 744.8 μs +1.6%
future-pay-out-4 1.053 ms 1.069 ms +1.5%
future-settle-early-1 327.1 μs 332.5 μs +1.7%
future-settle-early-2 734.8 μs 743.4 μs +1.2%
future-settle-early-3 735.5 μs 746.1 μs +1.4%
future-settle-early-4 811.0 μs 828.4 μs +2.1%
game-sm-success_1-1 532.0 μs 548.8 μs +3.2%
game-sm-success_1-2 256.6 μs 266.4 μs +3.8%
game-sm-success_1-3 856.6 μs 874.4 μs +2.1%
game-sm-success_1-4 301.5 μs 310.9 μs +3.1%
game-sm-success_2-1 531.6 μs 546.5 μs +2.8%
game-sm-success_2-2 255.9 μs 265.8 μs +3.9%
game-sm-success_2-3 854.8 μs 873.5 μs +2.2%
game-sm-success_2-4 302.0 μs 310.4 μs +2.8%
game-sm-success_2-5 856.0 μs 871.3 μs +1.8%
game-sm-success_2-6 301.2 μs 309.9 μs +2.9%
multisig-sm-1 541.9 μs 555.5 μs +2.5%
multisig-sm-2 530.9 μs 541.8 μs +2.1%
multisig-sm-3 535.9 μs 549.7 μs +2.6%
multisig-sm-4 541.5 μs 557.0 μs +2.9%
multisig-sm-5 761.1 μs 773.4 μs +1.6%
multisig-sm-6 545.6 μs 556.1 μs +1.9%
multisig-sm-7 531.5 μs 544.5 μs +2.4%
multisig-sm-8 537.0 μs 549.1 μs +2.3%
multisig-sm-9 538.9 μs 554.9 μs +3.0%
multisig-sm-10 760.5 μs 768.2 μs +1.0%
ping-pong-1 447.4 μs 456.2 μs +2.0%
ping-pong-2 447.5 μs 455.9 μs +1.9%
ping-pong_2-1 267.6 μs 273.4 μs +2.2%
prism-1 216.1 μs 218.4 μs +1.1%
prism-2 575.0 μs 592.0 μs +3.0%
prism-3 487.7 μs 501.7 μs +2.9%
pubkey-1 182.7 μs 188.5 μs +3.2%
stablecoin_1-1 1.185 ms 1.215 ms +2.5%
stablecoin_1-2 252.9 μs 234.0 μs -7.5%
stablecoin_1-3 1.361 ms 1.394 ms +2.4%
stablecoin_1-4 269.5 μs 276.6 μs +2.6%
stablecoin_1-5 1.715 ms 1.748 ms +1.9%
stablecoin_1-6 332.6 μs 341.4 μs +2.6%
stablecoin_2-1 1.187 ms 1.213 ms +2.2%
stablecoin_2-2 251.3 μs 233.3 μs -7.2%
stablecoin_2-3 1.354 ms 1.383 ms +2.1%
stablecoin_2-4 268.3 μs 275.7 μs +2.8%
token-account-1 248.2 μs 253.1 μs +2.0%
token-account-2 437.5 μs 448.1 μs +2.4%
uniswap-1 540.3 μs 549.3 μs +1.7%
uniswap-2 293.4 μs 301.8 μs +2.9%
uniswap-3 2.188 ms 2.232 ms +2.0%
uniswap-4 444.9 μs 457.4 μs +2.8%
uniswap-5 1.514 ms 1.545 ms +2.0%
uniswap-6 425.5 μs 438.3 μs +3.0%
vesting-1 466.4 μs 475.9 μs +2.0%

@michaelpj
Copy link
Contributor

Okay, I find it kind of offensive that even after making it a single-method typeclass, passing in just the function is better :(

@effectfully
Copy link
Contributor Author

Here's a phrase you might want to use: "dad, we need to talk".

On a serious note though, it does kinda make sense. The inlined version has all the constraints explicitly discharged while the non-inlined one doesn't (the class methods have those constraints). For a different use case the constraints can be needed, it's just that we don't need to instantiate them in multiple ways and can hardcode a single instantiation into the constructors.

@effectfully
Copy link
Contributor Author

/benchmark plutus-benchmark:validation

@iohk-devops
Copy link

Comparing benchmark results of 'plutus-benchmark:validation' on '70787f8b2' (base) and 'eedcefa70' (PR)

Script 70787f8 eedcefa Change
auction_1-1 233.9 μs 229.7 μs -1.8%
auction_1-2 861.0 μs 853.4 μs -0.9%
auction_1-3 856.8 μs 848.9 μs -0.9%
auction_1-4 305.0 μs 298.6 μs -2.1%
auction_2-1 235.4 μs 231.2 μs -1.8%
auction_2-2 865.8 μs 854.6 μs -1.3%
auction_2-3 1.099 ms 1.087 ms -1.1%
auction_2-4 855.1 μs 845.7 μs -1.1%
auction_2-5 303.3 μs 300.0 μs -1.1%
crowdfunding-success-1 274.4 μs 270.6 μs -1.4%
crowdfunding-success-2 275.4 μs 271.0 μs -1.6%
crowdfunding-success-3 275.0 μs 271.0 μs -1.5%
currency-1 325.7 μs 326.1 μs +0.1%
escrow-redeem_1-1 470.3 μs 467.3 μs -0.6%
escrow-redeem_1-2 469.7 μs 467.1 μs -0.6%
escrow-redeem_2-1 553.7 μs 550.1 μs -0.7%
escrow-redeem_2-2 555.7 μs 548.7 μs -1.3%
escrow-redeem_2-3 555.4 μs 547.9 μs -1.4%
escrow-refund-1 207.4 μs 203.2 μs -2.0%
future-increase-margin-1 327.6 μs 324.3 μs -1.0%
future-increase-margin-2 735.7 μs 725.4 μs -1.4%
future-increase-margin-3 733.9 μs 726.5 μs -1.0%
future-increase-margin-4 681.9 μs 674.7 μs -1.1%
future-increase-margin-5 1.055 ms 1.054 ms -0.1%
future-pay-out-1 326.1 μs 323.6 μs -0.8%
future-pay-out-2 733.7 μs 725.7 μs -1.1%
future-pay-out-3 731.3 μs 727.7 μs -0.5%
future-pay-out-4 1.051 ms 1.057 ms +0.6%
future-settle-early-1 325.4 μs 325.4 μs 0.0%
future-settle-early-2 734.8 μs 729.5 μs -0.7%
future-settle-early-3 732.9 μs 726.6 μs -0.9%
future-settle-early-4 807.7 μs 810.8 μs +0.4%
game-sm-success_1-1 532.1 μs 529.2 μs -0.5%
game-sm-success_1-2 256.4 μs 252.8 μs -1.4%
game-sm-success_1-3 856.6 μs 850.9 μs -0.7%
game-sm-success_1-4 303.0 μs 297.2 μs -1.9%
game-sm-success_2-1 534.8 μs 528.5 μs -1.2%
game-sm-success_2-2 258.1 μs 252.1 μs -2.3%
game-sm-success_2-3 860.0 μs 848.4 μs -1.3%
game-sm-success_2-4 302.4 μs 298.1 μs -1.4%
game-sm-success_2-5 857.8 μs 850.1 μs -0.9%
game-sm-success_2-6 301.8 μs 296.3 μs -1.8%
multisig-sm-1 542.3 μs 539.6 μs -0.5%
multisig-sm-2 531.3 μs 526.5 μs -0.9%
multisig-sm-3 535.1 μs 532.8 μs -0.4%
multisig-sm-4 539.7 μs 539.2 μs -0.1%
multisig-sm-5 756.0 μs 756.7 μs +0.1%
multisig-sm-6 543.3 μs 540.7 μs -0.5%
multisig-sm-7 530.4 μs 527.6 μs -0.5%
multisig-sm-8 537.1 μs 534.1 μs -0.6%
multisig-sm-9 538.6 μs 536.6 μs -0.4%
multisig-sm-10 757.9 μs 756.3 μs -0.2%
ping-pong-1 446.4 μs 442.7 μs -0.8%
ping-pong-2 449.0 μs 442.0 μs -1.6%
ping-pong_2-1 268.8 μs 263.6 μs -1.9%
prism-1 215.7 μs 210.1 μs -2.6%
prism-2 577.4 μs 567.7 μs -1.7%
prism-3 488.8 μs 480.2 μs -1.8%
pubkey-1 183.4 μs 179.7 μs -2.0%
stablecoin_1-1 1.184 ms 1.172 ms -1.0%
stablecoin_1-2 251.1 μs 247.1 μs -1.6%
stablecoin_1-3 1.348 ms 1.342 ms -0.4%
stablecoin_1-4 267.6 μs 264.2 μs -1.3%
stablecoin_1-5 1.707 ms 1.684 ms -1.3%
stablecoin_1-6 332.2 μs 327.4 μs -1.4%
stablecoin_2-1 1.184 ms 1.170 ms -1.2%
stablecoin_2-2 250.3 μs 246.9 μs -1.4%
stablecoin_2-3 1.354 ms 1.342 ms -0.9%
stablecoin_2-4 267.7 μs 263.7 μs -1.5%
token-account-1 248.1 μs 245.7 μs -1.0%
token-account-2 440.2 μs 433.3 μs -1.6%
uniswap-1 542.4 μs 540.6 μs -0.3%
uniswap-2 294.2 μs 290.0 μs -1.4%
uniswap-3 2.187 ms 2.164 ms -1.1%
uniswap-4 444.8 μs 434.5 μs -2.3%
uniswap-5 1.514 ms 1.495 ms -1.3%
uniswap-6 425.6 μs 417.1 μs -2.0%
vesting-1 464.4 μs 463.0 μs -0.3%

@effectfully
Copy link
Contributor Author

-1.07% on average, maybe noise, maybe not.

@michaelpj should I finish this one off? I don't like that what's in here does not allow us to remove val from TypeScheme (it only needs to be in RuntimeScheme), however what I'm going to do in order to make deferred unlifting faster should solve the val-in-TypeScheme problem too. I'm not sure about the order of the PRs, though. I can work on deferred unlifting first or I can finish this one first, if you find what's in here reasonable.

@michaelpj
Copy link
Contributor

I can work on deferred unlifting first

Yes, that's higher priority.

I also wonder if we should try inlining read/makeKnown into TypeScheme independently. That seems to have got us most of the speedup here, so I wonder if this PR is now a combination of an improvement and a regression, so the improvement masks the regression... perhaps better to just do the improvement independently.

…to effectfully/builtins/drop-val-from-KnownType-stuff
@effectfully
Copy link
Contributor Author

/benchmark plutus-benchmark:validation

@iohk-devops
Copy link

Script dbefda3 3eb2222 Change
auction_1-1 205.1 μs 206.2 μs +0.5%
auction_1-2 814.8 μs 821.2 μs +0.8%
auction_1-3 804.1 μs 811.0 μs +0.9%
auction_1-4 259.4 μs 265.6 μs +2.4%
auction_2-1 205.0 μs 207.0 μs +1.0%
auction_2-2 814.1 μs 822.0 μs +1.0%
auction_2-3 1.034 ms 1.044 ms +1.0%
auction_2-4 808.0 μs 812.6 μs +0.6%
auction_2-5 260.2 μs 266.8 μs +2.5%
crowdfunding-success-1 240.9 μs 243.2 μs +1.0%
crowdfunding-success-2 241.0 μs 243.7 μs +1.1%
crowdfunding-success-3 241.1 μs 242.4 μs +0.5%
currency-1 300.9 μs 301.1 μs +0.1%
escrow-redeem_1-1 426.3 μs 432.2 μs +1.4%
escrow-redeem_1-2 426.0 μs 432.5 μs +1.5%
escrow-redeem_2-1 501.9 μs 509.9 μs +1.6%
escrow-redeem_2-2 501.5 μs 511.2 μs +1.9%
escrow-redeem_2-3 501.2 μs 510.6 μs +1.9%
escrow-refund-1 181.7 μs 185.1 μs +1.9%
future-increase-margin-1 301.6 μs 302.3 μs +0.2%
future-increase-margin-2 677.3 μs 685.8 μs +1.3%
future-increase-margin-3 677.9 μs 684.7 μs +1.0%
future-increase-margin-4 634.5 μs 637.6 μs +0.5%
future-increase-margin-5 1.006 ms 1.012 ms +0.6%
future-pay-out-1 300.9 μs 301.7 μs +0.3%
future-pay-out-2 677.6 μs 683.9 μs +0.9%
future-pay-out-3 680.3 μs 683.4 μs +0.5%
future-pay-out-4 1.012 ms 1.009 ms -0.3%
future-settle-early-1 301.7 μs 302.3 μs +0.2%
future-settle-early-2 679.4 μs 683.3 μs +0.6%
future-settle-early-3 681.4 μs 683.7 μs +0.3%
future-settle-early-4 770.1 μs 771.0 μs +0.1%
game-sm-success_1-1 486.6 μs 486.5 μs -0.0%
game-sm-success_1-2 222.7 μs 226.5 μs +1.7%
game-sm-success_1-3 802.9 μs 812.3 μs +1.2%
game-sm-success_1-4 258.2 μs 265.1 μs +2.7%
game-sm-success_2-1 485.1 μs 487.9 μs +0.6%
game-sm-success_2-2 223.6 μs 227.3 μs +1.7%
game-sm-success_2-3 803.7 μs 806.9 μs +0.4%
game-sm-success_2-4 260.0 μs 264.5 μs +1.7%
game-sm-success_2-5 804.0 μs 808.4 μs +0.5%
game-sm-success_2-6 259.2 μs 264.2 μs +1.9%
multisig-sm-1 503.8 μs 504.9 μs +0.2%
multisig-sm-2 492.8 μs 492.9 μs +0.0%
multisig-sm-3 499.8 μs 498.3 μs -0.3%
multisig-sm-4 503.5 μs 504.9 μs +0.3%
multisig-sm-5 721.4 μs 723.6 μs +0.3%
multisig-sm-6 504.3 μs 506.6 μs +0.5%
multisig-sm-7 489.9 μs 493.1 μs +0.7%
multisig-sm-8 497.3 μs 497.1 μs -0.0%
multisig-sm-9 501.6 μs 503.6 μs +0.4%
multisig-sm-10 717.8 μs 718.6 μs +0.1%
ping-pong-1 410.4 μs 412.5 μs +0.5%
ping-pong-2 410.5 μs 411.8 μs +0.3%
ping-pong_2-1 241.3 μs 243.3 μs +0.8%
prism-1 184.5 μs 188.3 μs +2.1%
prism-2 524.7 μs 528.5 μs +0.7%
prism-3 441.4 μs 445.6 μs +1.0%
pubkey-1 156.6 μs 157.7 μs +0.7%
stablecoin_1-1 1.118 ms 1.126 ms +0.7%
stablecoin_1-2 218.1 μs 221.3 μs +1.5%
stablecoin_1-3 1.275 ms 1.280 ms +0.4%
stablecoin_1-4 230.3 μs 236.0 μs +2.5%
stablecoin_1-5 1.593 ms 1.603 ms +0.6%
stablecoin_1-6 286.7 μs 291.7 μs +1.7%
stablecoin_2-1 1.122 ms 1.124 ms +0.2%
stablecoin_2-2 219.2 μs 221.3 μs +1.0%
stablecoin_2-3 1.283 ms 1.282 ms -0.1%
stablecoin_2-4 232.1 μs 236.5 μs +1.9%
token-account-1 227.1 μs 226.5 μs -0.3%
token-account-2 400.2 μs 405.2 μs +1.2%
uniswap-1 508.0 μs 512.2 μs +0.8%
uniswap-2 265.2 μs 267.1 μs +0.7%
uniswap-3 2.046 ms 2.058 ms +0.6%
uniswap-4 382.0 μs 389.4 μs +1.9%
uniswap-5 1.398 ms 1.419 ms +1.5%
uniswap-6 366.4 μs 372.7 μs +1.7%
vesting-1 432.2 μs 435.5 μs +0.8%

@effectfully
Copy link
Contributor Author

effectfully commented Apr 7, 2022

+0.9% on average. Sucks, I guess. Still gonna see if I can remove val from TypeScheme and ToBuiltinMeaning.

@effectfully
Copy link
Contributor Author

/benchmark plutus-benchmark:validation

@iohk-devops
Copy link

Script dbefda3 3eb2222 Change
auction_1-1 204.3 μs 206.3 μs +1.0%
auction_1-2 816.9 μs 822.9 μs +0.7%
auction_1-3 807.7 μs 811.8 μs +0.5%
auction_1-4 258.9 μs 266.0 μs +2.7%
auction_2-1 205.1 μs 207.2 μs +1.0%
auction_2-2 815.9 μs 820.8 μs +0.6%
auction_2-3 1.030 ms 1.042 ms +1.2%
auction_2-4 804.6 μs 812.4 μs +1.0%
auction_2-5 258.6 μs 266.5 μs +3.1%
crowdfunding-success-1 239.2 μs 242.2 μs +1.3%
crowdfunding-success-2 239.6 μs 243.0 μs +1.4%
crowdfunding-success-3 238.7 μs 243.0 μs +1.8%
currency-1 299.5 μs 301.7 μs +0.7%
escrow-redeem_1-1 427.1 μs 432.2 μs +1.2%
escrow-redeem_1-2 427.1 μs 433.3 μs +1.5%
escrow-redeem_2-1 501.2 μs 511.0 μs +2.0%
escrow-redeem_2-2 501.9 μs 511.2 μs +1.9%
escrow-redeem_2-3 501.8 μs 511.5 μs +1.9%
escrow-refund-1 180.8 μs 184.8 μs +2.2%
future-increase-margin-1 299.8 μs 302.3 μs +0.8%
future-increase-margin-2 675.0 μs 686.6 μs +1.7%
future-increase-margin-3 678.7 μs 685.6 μs +1.0%
future-increase-margin-4 638.1 μs 635.7 μs -0.4%
future-increase-margin-5 1.012 ms 1.008 ms -0.4%
future-pay-out-1 301.3 μs 301.1 μs -0.1%
future-pay-out-2 679.0 μs 687.7 μs +1.3%
future-pay-out-3 679.0 μs 686.9 μs +1.2%
future-pay-out-4 1.006 ms 1.009 ms +0.3%
future-settle-early-1 300.0 μs 301.7 μs +0.6%
future-settle-early-2 678.9 μs 684.8 μs +0.9%
future-settle-early-3 678.6 μs 685.1 μs +1.0%
future-settle-early-4 766.7 μs 775.0 μs +1.1%
game-sm-success_1-1 484.9 μs 490.0 μs +1.1%
game-sm-success_1-2 220.2 μs 228.0 μs +3.5%
game-sm-success_1-3 802.8 μs 812.0 μs +1.1%
game-sm-success_1-4 258.0 μs 265.3 μs +2.8%
game-sm-success_2-1 484.8 μs 487.7 μs +0.6%
game-sm-success_2-2 220.8 μs 226.6 μs +2.6%
game-sm-success_2-3 802.0 μs 806.7 μs +0.6%
game-sm-success_2-4 257.7 μs 264.4 μs +2.6%
game-sm-success_2-5 806.7 μs 809.9 μs +0.4%
game-sm-success_2-6 258.4 μs 265.7 μs +2.8%
multisig-sm-1 503.9 μs 507.3 μs +0.7%
multisig-sm-2 489.4 μs 494.1 μs +1.0%
multisig-sm-3 497.5 μs 498.3 μs +0.2%
multisig-sm-4 501.4 μs 504.0 μs +0.5%
multisig-sm-5 719.9 μs 719.6 μs -0.0%
multisig-sm-6 502.7 μs 505.0 μs +0.5%
multisig-sm-7 488.5 μs 494.8 μs +1.3%
multisig-sm-8 494.0 μs 498.1 μs +0.8%
multisig-sm-9 499.9 μs 505.7 μs +1.2%
multisig-sm-10 716.0 μs 723.8 μs +1.1%
ping-pong-1 408.8 μs 413.4 μs +1.1%
ping-pong-2 409.3 μs 413.7 μs +1.1%
ping-pong_2-1 240.6 μs 243.7 μs +1.3%
prism-1 184.0 μs 187.9 μs +2.1%
prism-2 523.5 μs 528.5 μs +1.0%
prism-3 439.1 μs 444.9 μs +1.3%
pubkey-1 155.2 μs 157.4 μs +1.4%
stablecoin_1-1 1.116 ms 1.120 ms +0.4%
stablecoin_1-2 217.0 μs 221.3 μs +2.0%
stablecoin_1-3 1.274 ms 1.279 ms +0.4%
stablecoin_1-4 230.0 μs 235.9 μs +2.6%
stablecoin_1-5 1.589 ms 1.607 ms +1.1%
stablecoin_1-6 284.6 μs 292.2 μs +2.7%
stablecoin_2-1 1.119 ms 1.123 ms +0.4%
stablecoin_2-2 217.9 μs 221.2 μs +1.5%
stablecoin_2-3 1.277 ms 1.281 ms +0.3%
stablecoin_2-4 231.0 μs 236.2 μs +2.3%
token-account-1 225.4 μs 227.5 μs +0.9%
token-account-2 399.7 μs 407.3 μs +1.9%
uniswap-1 508.3 μs 514.2 μs +1.2%
uniswap-2 264.9 μs 268.0 μs +1.2%
uniswap-3 2.047 ms 2.059 ms +0.6%
uniswap-4 381.0 μs 387.4 μs +1.7%
uniswap-5 1.402 ms 1.414 ms +0.9%
uniswap-6 365.8 μs 371.6 μs +1.6%
vesting-1 430.1 μs 433.1 μs +0.7%

@effectfully
Copy link
Contributor Author

/benchmark plutus-benchmark:validation

@iohk-devops
Copy link

Script dbefda3 a403715 Change
auction_1-1 204.3 μs 205.5 μs +0.6%
auction_1-2 817.8 μs 823.6 μs +0.7%
auction_1-3 806.9 μs 811.9 μs +0.6%
auction_1-4 259.1 μs 263.8 μs +1.8%
auction_2-1 204.4 μs 205.8 μs +0.7%
auction_2-2 815.5 μs 825.3 μs +1.2%
auction_2-3 1.028 ms 1.051 ms +2.2%
auction_2-4 802.5 μs 816.8 μs +1.8%
auction_2-5 258.6 μs 265.5 μs +2.7%
crowdfunding-success-1 239.4 μs 243.1 μs +1.5%
crowdfunding-success-2 240.1 μs 243.7 μs +1.5%
crowdfunding-success-3 240.7 μs 244.3 μs +1.5%
currency-1 300.4 μs 301.9 μs +0.5%
escrow-redeem_1-1 426.5 μs 433.6 μs +1.7%
escrow-redeem_1-2 425.8 μs 433.5 μs +1.8%
escrow-redeem_2-1 501.1 μs 509.1 μs +1.6%
escrow-redeem_2-2 501.7 μs 508.1 μs +1.3%
escrow-redeem_2-3 502.8 μs 508.1 μs +1.1%
escrow-refund-1 182.1 μs 184.2 μs +1.2%
future-increase-margin-1 302.2 μs 302.0 μs -0.1%
future-increase-margin-2 680.3 μs 686.3 μs +0.9%
future-increase-margin-3 680.0 μs 685.5 μs +0.8%
future-increase-margin-4 636.1 μs 639.3 μs +0.5%
future-increase-margin-5 1.008 ms 1.015 ms +0.7%
future-pay-out-1 299.6 μs 301.3 μs +0.6%
future-pay-out-2 678.3 μs 684.8 μs +1.0%
future-pay-out-3 676.9 μs 685.7 μs +1.3%
future-pay-out-4 1.006 ms 1.015 ms +0.9%
future-settle-early-1 299.6 μs 302.6 μs +1.0%
future-settle-early-2 676.0 μs 687.2 μs +1.7%
future-settle-early-3 675.8 μs 688.6 μs +1.9%
future-settle-early-4 769.0 μs 774.7 μs +0.7%
game-sm-success_1-1 485.6 μs 490.1 μs +0.9%
game-sm-success_1-2 222.3 μs 225.6 μs +1.5%
game-sm-success_1-3 803.1 μs 811.0 μs +1.0%
game-sm-success_1-4 257.3 μs 263.3 μs +2.3%
game-sm-success_2-1 485.4 μs 490.3 μs +1.0%
game-sm-success_2-2 223.0 μs 224.7 μs +0.8%
game-sm-success_2-3 805.7 μs 810.5 μs +0.6%
game-sm-success_2-4 258.8 μs 263.1 μs +1.7%
game-sm-success_2-5 805.5 μs 812.1 μs +0.8%
game-sm-success_2-6 258.4 μs 262.9 μs +1.7%
multisig-sm-1 502.1 μs 509.0 μs +1.4%
multisig-sm-2 489.8 μs 496.9 μs +1.4%
multisig-sm-3 495.5 μs 501.7 μs +1.3%
multisig-sm-4 499.0 μs 508.1 μs +1.8%
multisig-sm-5 716.3 μs 727.5 μs +1.6%
multisig-sm-6 500.1 μs 509.6 μs +1.9%
multisig-sm-7 487.6 μs 495.7 μs +1.7%
multisig-sm-8 495.6 μs 500.7 μs +1.0%
multisig-sm-9 501.3 μs 505.9 μs +0.9%
multisig-sm-10 718.4 μs 722.6 μs +0.6%
ping-pong-1 409.8 μs 414.0 μs +1.0%
ping-pong-2 408.2 μs 413.4 μs +1.3%
ping-pong_2-1 241.0 μs 243.4 μs +1.0%
prism-1 184.2 μs 187.3 μs +1.7%
prism-2 524.5 μs 528.1 μs +0.7%
prism-3 440.6 μs 446.5 μs +1.3%
pubkey-1 156.2 μs 157.2 μs +0.6%
stablecoin_1-1 1.120 ms 1.123 ms +0.3%
stablecoin_1-2 217.4 μs 220.9 μs +1.6%
stablecoin_1-3 1.276 ms 1.279 ms +0.2%
stablecoin_1-4 230.3 μs 234.3 μs +1.7%
stablecoin_1-5 1.596 ms 1.605 ms +0.6%
stablecoin_1-6 285.4 μs 291.1 μs +2.0%
stablecoin_2-1 1.117 ms 1.127 ms +0.9%
stablecoin_2-2 217.5 μs 222.2 μs +2.2%
stablecoin_2-3 1.273 ms 1.287 ms +1.1%
stablecoin_2-4 230.8 μs 236.7 μs +2.6%
token-account-1 224.5 μs 226.8 μs +1.0%
token-account-2 397.3 μs 406.6 μs +2.3%
uniswap-1 505.7 μs 511.8 μs +1.2%
uniswap-2 263.9 μs 266.5 μs +1.0%
uniswap-3 2.038 ms 2.063 ms +1.2%
uniswap-4 382.2 μs 386.5 μs +1.1%
uniswap-5 1.400 ms 1.420 ms +1.4%
uniswap-6 365.7 μs 372.2 μs +1.8%
vesting-1 430.1 μs 436.0 μs +1.4%

@effectfully
Copy link
Contributor Author

Wait, I merged master in instead of rebasing 🤦

@effectfully
Copy link
Contributor Author

I.e. it's probably even worse.

@effectfully
Copy link
Contributor Author

Closing in favor of #4533.

@effectfully effectfully deleted the effectfully/builtins/drop-val-from-KnownType-stuff branch April 14, 2022 10:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants