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

Kwxm/provisional conway cost model #6087

Merged
merged 31 commits into from
May 29, 2024
Merged

Conversation

kwxm
Copy link
Contributor

@kwxm kwxm commented May 22, 2024

This PR introduces an updated cost model for PlutusV3, which we expect to become available in the Chang hard fork at the start of the Conway era. The coefficients of the costing functions (the "cost model parameters") are provisional and may be subject to later adjustment. The new cost model currently gives script costs which are 20-30% cheaper than the current cost model, but given the provisional nature of the cost model this cost reduction should not be relied upon.

Some remarks:

  • I've renamed DefaultSemanticsVariant0/1/2toDefaultSemanticsVariantA/B/Cin an attempt to avoid confusion withPlutusV1/V2/V3` etc. Each of these has a corresponding cost model.
  • I'm not especially happy with ExBudgetingDefaults.hs. This exports a lot of functions, most of them only used for testing, and it's a bit messy.
  • Related to the previous point, we have to decide how what to do with budget tests, for example, in plutus-conformance. Do we want to run all of the tests with all of the semantic variants, which would potentially require a separate golden file for each test? For the time being I'm just using the latest cost mode for each test (apologies for all of the updated golden files :( ). I've opened a separate issue for this at Decide how to deal with multiple cost models in the tests  #6088.
  • Many of the tests in plutus-ledger-api (for example, here and here are now pretty much meaningless. I've patched them so that they work, but I think that all of this stuff will have to be reworked. I've opened an issue for this at Rework plutus-ledger-api tests for new cost model machinery #6089.
  • We also need to decide what to do with the metatheory. This PR makes it use the latest cost model exclusively, but we may want to rethink that: see Add builtin versioning infrastructure to metatheory #6054.
  • I fixed uplc and pir to use the appropriate cost model for a given semantics variant, but I've just realised that I forgot to do that for the new plutus executable.

@kwxm kwxm added Costing Anything relating to costs, fees, gas, etc. Internal labels May 22, 2024
@kwxm
Copy link
Contributor Author

kwxm commented May 22, 2024

/benchmark validation

Copy link
Contributor

Click here to check the status of your benchmark.

Copy link
Contributor

Click here to check the status of your benchmark.

Copy link
Contributor

Click here to check the status of your benchmark.

Copy link
Contributor

Comparing benchmark results of 'marlowe' on '85cf1edc5' (base) and '9d41f5033' (PR)

Results table
Script 85cf1ed 9d41f50 Change
semantics/ffdd68a33afd86f8844c9f5e45b2bda5b035aa02274161b23d57709c0f8b8de6 906.5 μs 919.0 μs +1.4%
semantics/f339f59bdf92495ed2b14e2e4d3705972b4dda59aa929cffe0f1ff5355db8d79 4.534 ms 4.513 ms -0.5%
semantics/f2a8fd2014922f0d8e01541205d47e9bb2d4e54333bdd408cbe7c47c55e73ae4 710.2 μs 712.1 μs +0.3%
semantics/ecb5e8308b57724e0f8533921693f111eba942123cf8660aac2b5bac21ec28f0 632.4 μs 637.3 μs +0.8%
semantics/eb4a605ed3a64961e9e66ad9631c2813dadf7131740212762ae4483ec749fe1d 288.6 μs 290.2 μs +0.6%
semantics/e9234d2671760874f3f660aae5d3416d18ce6dfd7af4231bdd41b9ec268bc7e1 918.1 μs 919.5 μs +0.2%
semantics/e3afd22d01ff12f381cf915fd32358634e6c413f979f2492cf3339319d8cc079 291.1 μs 292.9 μs +0.6%
semantics/e34b48f80d49360e88c612f4016f7d68cb5678dd8cd5ddb981375a028b3a40a5 376.4 μs 379.1 μs +0.7%
semantics/e26c1cddba16e05fd10c34cbdb16ea6acdbac7c8323256c31c90c520ee6a1080 355.9 μs 359.9 μs +1.1%
semantics/dd11ae574eaeab0e9925319768989313a93913fdc347c704ddaa27042757d990 725.1 μs 731.7 μs +0.9%
semantics/dc241ac6ad1e04fb056d555d6a4f2d08a45d054c6f7f34355fcfeefebef479f3 443.4 μs 445.4 μs +0.5%
semantics/d64607eb8a1448595081547ea8780886fcbd9e06036460eea3705c88ea867e33 288.8 μs 291.3 μs +0.9%
semantics/d1c03759810747b7cab38c4296593b38567e11195d161b5bb0a2b58f89b2c65a 974.8 μs 983.2 μs +0.9%
semantics/d1ab832dfab25688f8845bec9387e46ee3f00ba5822197ade7dd540489ec5e95 37.38 ms 37.24 ms -0.4%
semantics/cf542b7df466b228ca2197c2aaa89238a8122f3330fe5b77b3222f570395d9f5 470.8 μs 473.6 μs +0.6%
semantics/ced1ea04649e093a501e43f8568ac3e6b37cd3eccec8cac9c70a4857b88a5eb8 805.2 μs 809.8 μs +0.6%
semantics/cdb9d5c233b288a5a9dcfbd8d5c1831a0bb46eec7a26fa31b80ae69d44805efc 843.8 μs 848.0 μs +0.5%
semantics/ccab11ce1a8774135d0e3c9e635631b68af9e276b5dabc66ff669d5650d0be1c 974.9 μs 967.6 μs -0.7%
semantics/c9efcb705ee057791f7c18a1de79c49f6e40ba143ce0579f1602fd780cabf153 780.1 μs 786.8 μs +0.9%
semantics/c4bb185380df6e9b66fc1ee0564f09a8d1253a51a0c0c7890f2214df9ac19274 703.7 μs 708.5 μs +0.7%
semantics/bb5345bfbbc460af84e784b900ec270df1948bb1d1e29eacecd022eeb168b315 915.8 μs 927.6 μs +1.3%
semantics/b50170cea48ee84b80558c02b15c6df52faf884e504d2c410ad63ba46d8ca35c 725.7 μs 734.7 μs +1.2%
semantics/b21a4df3b0266ad3481a26d3e3d848aad2fcde89510b29cccce81971e38e0835 1.291 ms 1.303 ms +0.9%
semantics/ad6db94ed69b7161c7604568f44358e1cc11e81fea90e41afebd669e51bb60c8 558.5 μs 564.2 μs +1.0%
semantics/acce04815e8fd51be93322888250060da173eccf3df3a605bd6bc6a456cde871 266.7 μs 269.6 μs +1.1%
semantics/acb9c83c2b78dabef8674319ad69ba54912cd9997bdf2d8b2998c6bfeef3b122 624.1 μs 633.2 μs +1.5%
semantics/a9a853b6d083551f4ed2995551af287880ef42aee239a2d9bc5314d127cce592 479.7 μs 481.9 μs +0.5%
semantics/a85173a832db3ea944fafc406dfe3fa3235254897d6d1d0e21bc380147687bd5 352.0 μs 354.6 μs +0.7%
semantics/9fabc4fc3440cdb776b28c9bb1dd49c9a5b1605fe1490aa3f4f64a3fa8881b25 992.4 μs 1.002 ms +1.0%
semantics/96e1a2fa3ceb9a402f2a5841a0b645f87b4e8e75beb636692478ec39f74ee221 291.1 μs 292.8 μs +0.6%
semantics/8d9ae67656a2911ab15a8e5301c960c69aa2517055197aff6b60a87ff718d66c 346.6 μs 351.1 μs +1.3%
semantics/8c7fdc3da6822b5112074380003524f50fb3a1ce6db4e501df1086773c6c0201 1.106 ms 1.119 ms +1.2%
semantics/82213dfdb6a812b40446438767c61a388d2c0cfd0cbf7fd4a372b0dc59fa17e1 1.216 ms 1.218 ms +0.2%
semantics/7cbc5644b745f4ea635aca42cce5e4a4b9d2e61afdb3ac18128e1688c07071ba 460.6 μs 465.8 μs +1.1%
semantics/7a758e17486d1a30462c32a5d5309bd1e98322a9dcbe277c143ed3aede9d265f 481.1 μs 481.3 μs +0.0%
semantics/75a8bb183688bce447e00f435a144c835435e40a5defc6f3b9be68b70b4a3db6 660.5 μs 664.0 μs +0.5%
semantics/7529b206a78becb793da74b78c04d9d33a2540a1abd79718e681228f4057403a 763.6 μs 770.5 μs +0.9%
semantics/74c67f2f182b9a0a66c62b95d6fac5ace3f7e71ea3abfc52ffbe3ecb93436ea2 761.3 μs 770.5 μs +1.2%
semantics/71965c9ccae31f1ffc1d85aa20a356d4ed97a420954018d8301ec4f9783be0d7 451.2 μs 454.7 μs +0.8%
semantics/70f65b21b77ddb451f3df9d9fb403ced3d10e1e953867cc4900cc25e5b9dec47 747.2 μs 746.9 μs -0.0%
semantics/6d88f7294dd2b5ce02c3dc609bc7715bd508009738401d264bf9b3eb7c6f49c1 468.0 μs 471.6 μs +0.8%
semantics/67ba5a9a0245ee3aff4f34852b9889b8c810fccd3dce2a23910bddd35c503b71 5.597 ms 5.626 ms +0.5%
semantics/675d63836cad11b547d1b4cddd498f04c919d4342612accf40913f9ae9419fac 987.1 μs 994.8 μs +0.8%
semantics/66af9e473d75e3f464971f6879cc0f2ef84bafcb38fbfa1dbc31ac2053628a38 1.177 ms 1.181 ms +0.3%
semantics/65bc4b69b46d18fdff0fadbf00dd5ec2b3e03805fac9d5fb4ff2d3066e53fc7e 2.346 ms 2.368 ms +0.9%
semantics/64c3d5b43f005855ffc4d0950a02fd159aa1575294ea39061b81a194ebb9eaae 636.3 μs 643.6 μs +1.1%
semantics/5f3d46c57a56cef6764f96c9de9677ac6e494dd7a4e368d1c8dd9c1f7a4309a5 466.9 μs 472.5 μs +1.2%
semantics/5f306b4b24ff2b39dab6cdc9ac6ca9bb442c1dc6f4e7e412eeb5a3ced42fb642 723.3 μs 729.8 μs +0.9%
semantics/5f130d19918807b60eab4c03119d67878fb6c6712c28c54f5a25792049294acc 291.0 μs 293.2 μs +0.8%
semantics/5e2c68ac9f62580d626636679679b97109109df7ac1a8ce86d3e43dfb5e4f6bc 498.2 μs 499.8 μs +0.3%
semantics/5e274e0f593511543d41570a4b03646c1d7539062b5728182e073e5760561a66 963.1 μs 974.5 μs +1.2%
semantics/5d0a88250f13c49c20e146819357a808911c878a0e0a7d6f7fe1d4a619e06112 987.7 μs 994.8 μs +0.7%
semantics/5abae75af26f45658beccbe48f7c88e74efdfc0b8409ba1e98f95fa5b6caf999 463.8 μs 465.0 μs +0.3%
semantics/57728d8b19b0e06412786f3dfed9e1894cd0ad1d2bc2bd497ec0ecb68f989d2b 288.5 μs 290.5 μs +0.7%
semantics/56333d4e413dbf1a665463bf68067f63c118f38f7539b7ba7167d577c0c8b8ce 740.7 μs 749.0 μs +1.1%
semantics/55dfe42688ad683b638df1fa7700219f00f53b335a85a2825502ab1e0687197e 288.0 μs 291.5 μs +1.2%
semantics/53ed4db7ab33d6f907eec91a861d1188269be5ae1892d07ee71161bfb55a7cb7 352.7 μs 355.3 μs +0.7%
semantics/52df7c8dfaa5f801cd837faa65f2fd333665fff00a555ce8c55e36ddc003007a 346.5 μs 349.2 μs +0.8%
semantics/4f9e8d361b85e62db2350dd3ae77463540e7af0d28e1eb68faeecc45f4655f57 386.9 μs 389.2 μs +0.6%
semantics/4d7adf91bfc93cebe95a7e054ec17cfbb912b32bd8aecb48a228b50e02b055c8 663.0 μs 667.2 μs +0.6%
semantics/4c3efd13b6c69112a8a888372d56c86e60c232125976f29b1c3e21d9f537845c 978.8 μs 986.5 μs +0.8%
semantics/44a9e339fa25948b48637fe7e10dcfc6d1256319a7b5ce4202cb54dfef8e37e7 288.2 μs 290.5 μs +0.8%
semantics/3db496e6cd39a8b888a89d0de07dace4397878958cab3b9d9353978b08c36d8a 788.6 μs 796.7 μs +1.0%
semantics/3bb75b2e53eb13f718eacd3263ab4535f9137fabffc9de499a0de7cabb335479 288.1 μs 290.4 μs +0.8%
semantics/383683bfcecdab0f4df507f59631c702bd11a81ca3841f47f37633e8aacbb5de 728.9 μs 732.9 μs +0.5%
semantics/33c3efd79d9234a78262b52bc6bbf8124cb321a467dedb278328215167eca455 600.8 μs 607.9 μs +1.2%
semantics/331e4a1bb30f28d7073c54f9a13c10ae19e2e396c299a0ce101ee6bf4b2020db 440.9 μs 444.4 μs +0.8%
semantics/322acde099bc34a929182d5b894214fc87ec88446e2d10625119a9d17fa3ec3d 290.8 μs 291.7 μs +0.3%
semantics/30aa34dfbe89e0c43f569929a96c0d2b74c321d13fec0375606325eee9a34a6a 1.101 ms 1.113 ms +1.1%
semantics/2f58c9d884813042bce9cf7c66048767dff166785e8b5183c8139db2aa7312d1 735.9 μs 743.0 μs +1.0%
semantics/2cb21612178a2d9336b59d06cbf80488577463d209a453048a66c6eee624a695 744.7 μs 750.4 μs +0.8%
semantics/28fdce478e179db0e38fb5f3f4105e940ece450b9ce8a0f42a6e313b752e6f2c 895.7 μs 894.6 μs -0.1%
semantics/2797d7ac77c1b6aff8e42cf9a47fa86b1e60f22719a996871ad412cbe4de78b5 1.803 ms 1.784 ms -1.1%
semantics/26e24ee631a6d927ea4fb4fac530cfd82ff7636986014de2d2aaa460ddde0bc3 536.9 μs 540.1 μs +0.6%
semantics/238b21364ab5bdae3ddb514d7001c8feba128b4ddcf426852b441f9a9d02c882 288.2 μs 289.3 μs +0.4%
semantics/21953bf8798b28df60cb459db24843fb46782b19ba72dc4951941fb4c20d2263 346.8 μs 350.2 μs +1.0%
semantics/202d273721330b31193405101e0637202e2a0f1140211c3e3f171e26312b0220 5.652 ms 5.675 ms +0.4%
semantics/1f0f02191604101e1f201016171604060d010d1d1c150e110a110e1006160a0d 990.6 μs 979.8 μs -1.1%
semantics/1d6e3c137149a440f35e0efc685b16bfb8052ebcf66ec4ad77e51c11501381c7 290.5 μs 291.7 μs +0.4%
semantics/1d56060c3b271226064c672a282663643b1b0823471c67737f0b076870331260 745.8 μs 746.6 μs +0.1%
semantics/1a573aed5c46d637919ccb5548dfc22a55c9fc38298d567d15ee9f2eea69d89e 863.8 μs 874.3 μs +1.2%
semantics/1a2f2540121f09321216090b2b1f211e3f020c2c133a1a3c3f3c232a26153a04 292.1 μs 292.3 μs +0.1%
semantics/18cefc240debc0fcab14efdd451adfd02793093efe7bc76d6322aed6ddb582ad 715.3 μs 718.2 μs +0.4%
semantics/12910f24d994d451ff379b12c9d1ecdb9239c9b87e5d7bea570087ec506935d5 471.1 μs 473.4 μs +0.5%
semantics/119fbea4164e2bf21d2b53aa6c2c4e79414fe55e4096f5ce2e804735a7fbaf91 717.8 μs 722.0 μs +0.6%
semantics/0f1d0110001b121d051e15140c0c05141d151c1f1d201c040f10091b020a0e1a 453.1 μs 457.3 μs +0.9%
semantics/0be82588e4e4bf2ef428d2f44b7687bbb703031d8de696d90ec789e70d6bc1d8 1.319 ms 1.328 ms +0.7%
semantics/0bcfd9487614104ec48de2ea0b2c0979866a95115748c026f9ec129384c262c4 1.075 ms 1.081 ms +0.6%
semantics/07070c070510030509010e050d00040907050e0a0d06030f1006030701020607 971.8 μs 978.0 μs +0.6%
semantics/0705030002040601010206030604080208020207000101060706050502040301 952.2 μs 955.9 μs +0.4%
semantics/0543a00ba1f63076c1db6bf94c6ff13ae7d266dd7544678743890b0e8e1add63 986.2 μs 993.8 μs +0.8%
semantics/04000f0b04051006000e060f09080d0b090d0104050a0b0f0506070f0a070008 709.0 μs 710.8 μs +0.3%
semantics/0104010200020000040103020102020004040300030304040400010301040303 738.1 μs 741.1 μs +0.4%
semantics/0101080808040600020306010000000302050807010208060100070207080202 736.7 μs 746.4 μs +1.3%
semantics/0101020201010201010200010102000201000201010102000102010201010000 288.0 μs 291.0 μs +1.0%
semantics/0101010001010101010101000100010100000001010000010001000001000101 886.8 μs 888.6 μs +0.2%
semantics/004025fd712d6c325ffa12c16d157064192992faf62e0b991d7310a2f91666b8 766.4 μs 770.9 μs +0.6%
semantics/0003040402030103010203030303000200000104030002040304020400000102 987.6 μs 1.000 ms +1.3%
semantics/0001000101000000010101000001000001010101010100000001000001010000 427.6 μs 430.7 μs +0.7%
semantics/0000020002010200020101020201000100010001020101020201010000020102 305.0 μs 305.6 μs +0.2%
role-payout/ff38b1ec89952d0247630f107a90cbbeb92ecbfcd19b284f60255718e4ec7548 190.8 μs 191.1 μs +0.2%
role-payout/fc8c5f45ffcdb024c21e0f34b22c23de8045a94d5e1a5bda1555c45ddb059f82 163.0 μs 163.0 μs 0.0%
role-payout/f7275afb60e33a550df13a132102e7e925dd28965a4efbe510a89b077ff9417f 157.5 μs 157.1 μs -0.3%
role-payout/f53e8cafe26647ccce51e4c31db13608aea1f39034c0f52dee2e5634ef66e747 173.1 μs 173.3 μs +0.1%
role-payout/f2932e4ca4bbb94b0a9ffbe95fcb7bd5639d9751d75d56d5e14efa5bbed981df 154.4 μs 154.4 μs 0.0%
role-payout/f1a1e6a487f91feca5606f72bbb1e948c71abf043c6a0ea83bfea9ec6a0f08d8 157.6 μs 156.4 μs -0.8%
role-payout/ee3962fbd7373360f46decef3c9bda536a0b1daf6cda3b8a4bcfd6deeb5b4c53 182.1 μs 182.1 μs 0.0%
role-payout/ec4712ee820eb959a43ebedfab6735f2325fa52994747526ffd2a4f4f84dd58e 180.1 μs 180.9 μs +0.4%
role-payout/eabeeae18131af89fa57936c0e9eb8d2c7adba534f7e1a517d75410028fa0d6c 157.5 μs 157.7 μs +0.1%
role-payout/df487b2fd5c1583fa33644423849bc1ab5f02f37edc0c235f34ef01cb12604f6 164.7 μs 164.6 μs -0.1%
role-payout/dc45c5f1b700b1334db99f50823321daaef0e6925b9b2fabbc9df7cde65af62e 162.5 μs 163.0 μs +0.3%
role-payout/da353bf9219801fa1bf703fc161497570954e9af7e10ffe95c911a9ef97e77bd 164.4 μs 164.4 μs 0.0%
role-payout/d6bc8ac4155e22300085784148bbc9d9bbfea896e1009dd396610a90e3943032 181.9 μs 181.6 μs -0.2%
role-payout/d5cda74eb0947e025e02fb8ed365df39d0a43e4b42cd3573ac2d8fcb29115997 175.1 μs 174.4 μs -0.4%
role-payout/cc1e82927f6c65b3e912200ae30588793d2066e1d4a6627c21955944ac9bd528 178.3 μs 178.7 μs +0.2%
role-payout/cb2ab8e22d1f64e8d204dece092e90e9bf1fa8b2a6e9cba5012dbe4978065832 156.4 μs 156.7 μs +0.2%
role-payout/caa409c40e39aed9b0f59214b4baa178c375526dea6026b4552b88d2cc729716 149.4 μs 149.4 μs 0.0%
role-payout/c99ecc2146ce2066ba6dffc734923264f8794815acbc2ec74c2c2c42ba272e4d 194.5 μs 193.8 μs -0.4%
role-payout/c78eeba7681d2ab51b4758efa4c812cc041928837c6e7563d8283cce67ce2e02 167.6 μs 168.5 μs +0.5%
role-payout/c4d4c88c5fe378a25a034025994a0d0b1642f10c8e6e513f872327fa895bfc7e 169.6 μs 169.0 μs -0.4%
role-payout/c11490431db3a92efdda70933ba411a0423935e73a75c856e326dbcf6672f3bf 156.4 μs 156.6 μs +0.1%
role-payout/bd79f4a84db23b7c4cd219d498bd581e085cbc3437957e74a8862281a700700b 183.4 μs 183.3 μs -0.1%
role-payout/bd460b7549b70c52e37b312a4242041eac18fe4a266f018bcea0c78a9085a271 181.8 μs 180.7 μs -0.6%
role-payout/bcdbc576d63b0454100ad06893812edafc2e7e4934fec1b44e2d06eb34f36eb8 157.0 μs 157.1 μs +0.1%
role-payout/b869f3928200061abb1c3060425b9354b0e08cbf4400b340b8707c14b34317cd 236.3 μs 236.4 μs +0.0%
role-payout/b6243a5b4c353ce4852aa41705111d57867d2783eeef76f6d59beb2360da6e90 211.7 μs 213.0 μs +0.6%
role-payout/b43564af5f13cc5208b92b1ad6d45369446f378d3891e5cb3e353b30d4f3fb10 157.3 μs 157.1 μs -0.1%
role-payout/af2e072b5adfaa7211e0b341e1f7319c4f4e7364a4247c9247132a927e914753 189.2 μs 188.7 μs -0.3%
role-payout/a92b4072cb8601fa697e1150c08463b14ffced54eb963df08d322216e27373cb 157.2 μs 157.3 μs +0.1%
role-payout/a7cb09f417c3f089619fe25b7624392026382b458486129efcff18f8912bf302 156.1 μs 156.6 μs +0.3%
role-payout/a6f064b83b31032ea7f25921364727224707268e472a569f584cc6b1d8c017e8 158.3 μs 157.5 μs -0.5%
role-payout/a6664a2d2a82f370a34a36a45234f6b33120a39372331678a3b3690312560ce9 192.5 μs 192.5 μs 0.0%
role-payout/a27524cfad019df45e4e8316f927346d4cc39da6bdd294fb2c33c3f58e6a8994 156.9 μs 156.3 μs -0.4%
role-payout/a1b25347409c3993feca1a60b6fcaf93d1d4bbaae19ab06fdf50cedc26cee68d 151.1 μs 150.1 μs -0.7%
role-payout/a0fba5740174b5cd24036c8b008cb1efde73f1edae097b9325c6117a0ff40d3b 173.2 μs 173.4 μs +0.1%
role-payout/a004a989c005d59043f996500e110fa756ad1b85800b889d5815a0106388e1d7 168.2 μs 168.7 μs +0.3%
role-payout/996804e90f2c75fe68886fc8511304b8ab9b36785f8858f5cb098e91c159dde9 161.8 μs 162.0 μs +0.1%
role-payout/962c2c658b19904372984a56409707401e64e9b03c1986647134cfd329ec5139 173.0 μs 172.3 μs -0.4%
role-payout/8c0fa5d9d6724c5c72c67e055d4bfc36a385ded7c3c81c08cdbd8705829af6e6 189.2 μs 188.7 μs -0.3%
role-payout/87167fc5469adac97c1be749326fa79a6b7862ce68aa4abcb438e3c034bd0899 188.2 μs 187.1 μs -0.6%
role-payout/803eae94d62e2afc0e835c204af8362170301bc329e2d849d5f5a47dddf479ec 180.0 μs 179.6 μs -0.2%
role-payout/7b1dd76edc27f00eb382bf996378155baf74d6a7c6f3d5ec837c39d29784aade 157.4 μs 157.2 μs -0.1%
role-payout/73f044f34a30f26639c58bafe952047f74c7bf1eafebab5aadf5b73cfb9024ed 156.7 μs 156.2 μs -0.3%
role-payout/6d66bddb4269bdf77392d3894da5341cf019d39787522af4f83f01285991e93c 158.0 μs 157.7 μs -0.2%
role-payout/6c364699767a84059ffd99cf718562a8c09d96e343f23dc481e8ffda13af424f 156.4 μs 156.7 μs +0.2%
role-payout/6b7bc2b9002a71b33cfd535d43f26334a283d0b9ad189b7cd74baac232c3b9fc 149.6 μs 149.2 μs -0.3%
role-payout/674b0577409957172ad85223c765d17e94c27714276c49c38dfae0a47a561a1e 153.2 μs 153.1 μs -0.1%
role-payout/6621a69217f09d91f42876a9c0cecf79de0e29bdd5b16c82c6c52cf959092ec4 172.5 μs 172.8 μs +0.2%
role-payout/622a7f3bc611b5149253c9189da022a9ff296f60a5b7c172a6dc286faa7284fa 190.0 μs 191.0 μs +0.5%
role-payout/5efe992e306e31cc857c64a62436ad2f9325acc5b4a74a8cebccdfd853ce63d2 162.3 μs 162.0 μs -0.2%
role-payout/5d4c62a0671c65a14f6a15093e3efc4f1816d95a5a58fd92486bedaae8d9526b 185.4 μs 185.7 μs +0.2%
role-payout/5ade103e9530dd0d572fe1b053ea65ad925c6ebbe321e873ace8b804363fa82c 222.7 μs 223.2 μs +0.2%
role-payout/5a2aae344e569a2c644dd9fa8c7b1f129850937eb562b7748c275f9e40bed596 156.9 μs 156.4 μs -0.3%
role-payout/5a0725d49c733130eda8bc6ed5234f7f6ff8c9dd2d201e8806125e5fbcc081f9 166.3 μs 166.2 μs -0.1%
role-payout/4fbcfdb577a56b842d6f6938187a783f71d9da7519353e3da3ef0c564e1eb344 194.0 μs 195.3 μs +0.7%
role-payout/4dd7755b6ca1f0c9747c1fc0ee4da799f6f1c07108e980bd9f820911ad711ff2 210.9 μs 212.1 μs +0.6%
role-payout/49b8275d0cb817be40865694ab05e3cfe5fc35fb43b78e7de68c1f3519b536bd 161.6 μs 161.8 μs +0.1%
role-payout/47364cfaf2c00f7d633283dce6cf84e4fd4e8228c0a0aa50e7c55f35c3ecaa1c 158.1 μs 157.1 μs -0.6%
role-payout/46f8d00030436e4da490a86b331fa6c3251425fb8c19556080e124d75bad7bd6 156.8 μs 156.7 μs -0.1%
role-payout/452e17d16222a427707fa83f63ffb79f606cc25c755a18b1e3274c964ed5ec99 193.4 μs 193.3 μs -0.1%
role-payout/4299c7fcf093a5dbfe114c188e32ca199b571a7c25cb7f766bf49f12dab308be 171.2 μs 171.0 μs -0.1%
role-payout/4121d88f14387d33ac5e1329618068e3848445cdd66b29e5ba382be2e02a174a 184.1 μs 185.0 μs +0.5%
role-payout/3897ef714bba3e6821495b706c75f8d64264c3fdaa58a3826c808b5a768c303d 161.5 μs 160.9 μs -0.4%
role-payout/371c10d2526fc0f09dbe9ed59e44dcd949270b27dc42035addd7ff9f7e0d05e7 186.1 μs 186.8 μs +0.4%
role-payout/36866914aa07cf62ef36cf2cd64c7f240e3371e27bb9fff5464301678e809c40 154.5 μs 153.8 μs -0.5%
role-payout/3569299fc986f5354d02e627a9eaa48ab46d5af52722307a0af72bae87e256dc 155.0 μs 154.5 μs -0.3%
role-payout/3565ee025317e065e8555eef288080276716366769aad89e03389f5ec4ce26d7 165.7 μs 166.0 μs +0.2%
role-payout/332c2b1c11383d1b373e1315201f1128010e0e1518332f273f141b23243f2a07 149.9 μs 151.3 μs +0.9%
role-payout/224ce46046fab9a17be4197622825f45cc0c59a6bd1604405148e43768c487ef 155.7 μs 156.1 μs +0.3%
role-payout/21a1426fb3fb3019d5dc93f210152e90b0a6e740ef509b1cdd423395f010e0ca 172.8 μs 172.5 μs -0.2%
role-payout/211e1b6c10260c4620074d2e372c260d38643a3d605f63772524034f0a4a7632 163.5 μs 162.8 μs -0.4%
role-payout/1a20b465d48a585ffd622bd8dc26a498a3c12f930ab4feab3a5064cfb3bc536a 172.4 μs 172.5 μs +0.1%
role-payout/195f522b596360690d04586a2563470f2214163435331a6622311f7323433f1c 152.9 μs 152.4 μs -0.3%
role-payout/159e5a1bf16fe984b5569be7011b61b5e98f5d2839ca7e1b34c7f2afc7ffb58e 158.9 μs 158.2 μs -0.4%
role-payout/121a0a1b12030616111f02121a0e070716090a0e031c071419121f141409031d 155.1 μs 155.1 μs 0.0%
role-payout/1138a04a83edc0579053f9ffa9394b41df38230121fbecebee8c039776a88c0c 156.1 μs 155.5 μs -0.4%
role-payout/0f010d040810040b10020e040f0e030b0a0d100f0c080c0c05000d04100c100f 183.1 μs 182.1 μs -0.5%
role-payout/0e97c9d9417354d9460f2eb35018d3904b7b035af16ab299258adab93be0911a 171.9 μs 171.2 μs -0.4%
role-payout/0e72f62b0f922e31a2340baccc768104025400cf7fdd7dae62fbba5fc770936d 176.5 μs 176.6 μs +0.1%
role-payout/0e00171d0f1e1f14070d0a00091f07101808021d081e1b120219081312081e15 157.5 μs 157.2 μs -0.2%
role-payout/0dbb692d2bf22d25eeceac461cfebf616f54003077a8473abc0457f18e025960 190.6 μs 189.5 μs -0.6%
role-payout/0d0f01050a0a0a0b0b050d0404090e0d0506000d0a041003040e0f100e0a0408 165.2 μs 165.1 μs -0.1%
role-payout/0c9d3634aeae7038f839a1262d1a8bc724dc77af9426459417a56ec73240f0e0 162.6 μs 163.6 μs +0.6%
role-payout/0bdca1cb8fa7e38e09062557b82490714052e84e2054e913092cd84ac071b961 185.9 μs 184.9 μs -0.5%
role-payout/07658a6c898ad6d624c37df1e49e909c2e9349ba7f4c0a6be5f166fe239bfcae 149.1 μs 149.3 μs +0.1%
role-payout/06317060a8e488b1219c9dae427f9ce27918a9e09ee8ac424afa33ca923f7954 165.7 μs 164.8 μs -0.5%
role-payout/057ebc80922f16a5f4bf13e985bf586b8cff37a2f6fe0f3ce842178c16981027 153.9 μs 154.3 μs +0.3%
role-payout/04f592afc6e57c633b9c55246e7c82e87258f04e2fb910c37d8e2417e9db46e5 219.0 μs 219.2 μs +0.1%
role-payout/041a2c3b111139201a3a2c173c392b170e16370d300f2d28342d0f2f0e182e01 187.1 μs 187.2 μs +0.1%
role-payout/0405010105020401010304080005050800040301010800080207080704020206 184.9 μs 185.4 μs +0.3%
role-payout/0403020000030204010000030001000202010101000304030001040404030100 169.0 μs 168.3 μs -0.4%
role-payout/03d730a62332c51c7b70c16c64da72dd1c3ea36c26b41cd1a1e00d39fda3d6cc 181.3 μs 182.8 μs +0.8%
role-payout/031d56d71454e2c4216ffaa275c4a8b3eb631109559d0e56f44ea8489f57ba97 194.2 μs 194.4 μs +0.1%
role-payout/0303020000020001010201060303040208070100050401080304020801030001 154.9 μs 155.0 μs +0.1%
role-payout/0202010002010100020102020102020001010101020102010001010101000100 157.5 μs 157.1 μs -0.3%
role-payout/0201020201020000020000010201020001020200000002010200000101010100 167.7 μs 167.3 μs -0.2%
role-payout/01dcc372ea619cb9f23c45b17b9a0a8a16b7ca0e04093ef8ecce291667a99a4c 150.7 μs 149.7 μs -0.7%
role-payout/0101000100000101010000010101000100010101000001000001000000010101 183.7 μs 183.4 μs -0.2%
role-payout/0100000100010000000001000100010101000101000001000000010000010000 240.5 μs 243.0 μs +1.0%
role-payout/0004000402010401030101030100040000010104020201030001000204020401 171.4 μs 171.1 μs -0.2%
TOTAL 135.9 ms 136.2 ms +0.2%

@kwxm
Copy link
Contributor Author

kwxm commented May 29, 2024

/benchmark bls12-381-benchmarks

1 similar comment
@kwxm
Copy link
Contributor Author

kwxm commented May 29, 2024

/benchmark bls12-381-benchmarks

@kwxm
Copy link
Contributor Author

kwxm commented May 29, 2024

/benchmark validation

1 similar comment
@kwxm
Copy link
Contributor Author

kwxm commented May 29, 2024

/benchmark validation

@kwxm
Copy link
Contributor Author

kwxm commented May 29, 2024

/benchmark nofib

1 similar comment
@kwxm
Copy link
Contributor Author

kwxm commented May 29, 2024

/benchmark nofib

@kwxm
Copy link
Contributor Author

kwxm commented May 29, 2024

/benchmark marlowe

Copy link
Contributor

Click here to check the status of your benchmark.

Copy link
Contributor

Comparing benchmark results of 'bls12-381-benchmarks' on '85cf1edc5' (base) and '9d41f5033' (PR)

Results table
Script 85cf1ed 9d41f50 Change
hashAndAddG1/0 40.79 μs 40.94 μs +0.4%
hashAndAddG1/10 566.2 μs 569.5 μs +0.6%
hashAndAddG1/20 1.092 ms 1.098 ms +0.5%
hashAndAddG1/30 1.617 ms 1.628 ms +0.7%
hashAndAddG1/40 2.142 ms 2.156 ms +0.7%
hashAndAddG1/50 2.666 ms 2.686 ms +0.8%
hashAndAddG1/60 3.193 ms 3.212 ms +0.6%
hashAndAddG1/70 3.718 ms 3.739 ms +0.6%
hashAndAddG1/80 4.244 ms 4.268 ms +0.6%
hashAndAddG1/90 4.771 ms 4.796 ms +0.5%
hashAndAddG1/100 5.293 ms 5.321 ms +0.5%
hashAndAddG1/110 5.867 ms 5.849 ms -0.3%
hashAndAddG1/120 6.390 ms 6.377 ms -0.2%
hashAndAddG1/130 6.915 ms 6.907 ms -0.1%
hashAndAddG1/140 7.449 ms 7.435 ms -0.2%
hashAndAddG1/150 7.981 ms 7.962 ms -0.2%
hashAndAddG2/0 50.56 μs 50.69 μs +0.3%
hashAndAddG2/10 1.728 ms 1.732 ms +0.2%
hashAndAddG2/20 3.386 ms 3.414 ms +0.8%
hashAndAddG2/30 5.054 ms 5.095 ms +0.8%
hashAndAddG2/40 6.725 ms 6.778 ms +0.8%
hashAndAddG2/50 8.389 ms 8.456 ms +0.8%
hashAndAddG2/60 10.06 ms 10.14 ms +0.8%
hashAndAddG2/70 11.72 ms 11.82 ms +0.9%
hashAndAddG2/80 13.39 ms 13.49 ms +0.7%
hashAndAddG2/90 15.06 ms 15.18 ms +0.8%
hashAndAddG2/100 16.73 ms 16.86 ms +0.8%
hashAndAddG2/110 18.39 ms 18.54 ms +0.8%
hashAndAddG2/120 20.06 ms 20.22 ms +0.8%
hashAndAddG2/130 21.72 ms 21.89 ms +0.8%
hashAndAddG2/140 23.40 ms 23.58 ms +0.8%
hashAndAddG2/150 25.06 ms 25.26 ms +0.8%
uncompressAndAddG1/0 40.77 μs 40.99 μs +0.5%
uncompressAndAddG1/10 575.8 μs 584.0 μs +1.4%
uncompressAndAddG1/20 1.111 ms 1.126 ms +1.4%
uncompressAndAddG1/30 1.645 ms 1.669 ms +1.5%
uncompressAndAddG1/40 2.181 ms 2.212 ms +1.4%
uncompressAndAddG1/50 2.716 ms 2.753 ms +1.4%
uncompressAndAddG1/60 3.253 ms 3.299 ms +1.4%
uncompressAndAddG1/70 3.785 ms 3.841 ms +1.5%
uncompressAndAddG1/80 4.325 ms 4.383 ms +1.3%
uncompressAndAddG1/90 4.861 ms 4.925 ms +1.3%
uncompressAndAddG1/100 5.395 ms 5.467 ms +1.3%
uncompressAndAddG1/110 5.932 ms 6.013 ms +1.4%
uncompressAndAddG1/120 6.464 ms 6.551 ms +1.3%
uncompressAndAddG1/130 6.996 ms 7.095 ms +1.4%
uncompressAndAddG1/140 7.529 ms 7.640 ms +1.5%
uncompressAndAddG1/150 8.063 ms 8.189 ms +1.6%
uncompressAndAddG2/0 50.29 μs 50.75 μs +0.9%
uncompressAndAddG2/10 814.3 μs 820.6 μs +0.8%
uncompressAndAddG2/20 1.579 ms 1.589 ms +0.6%
uncompressAndAddG2/30 2.340 ms 2.360 ms +0.9%
uncompressAndAddG2/40 3.105 ms 3.128 ms +0.7%
uncompressAndAddG2/50 3.870 ms 3.898 ms +0.7%
uncompressAndAddG2/60 4.636 ms 4.668 ms +0.7%
uncompressAndAddG2/70 5.401 ms 5.431 ms +0.6%
uncompressAndAddG2/80 6.161 ms 6.198 ms +0.6%
uncompressAndAddG2/90 6.927 ms 6.969 ms +0.6%
uncompressAndAddG2/100 7.727 ms 7.737 ms +0.1%
uncompressAndAddG2/110 8.501 ms 8.506 ms +0.1%
uncompressAndAddG2/120 9.267 ms 9.276 ms +0.1%
uncompressAndAddG2/130 10.04 ms 10.04 ms 0.0%
uncompressAndAddG2/140 10.81 ms 10.81 ms 0.0%
uncompressAndAddG2/150 11.58 ms 11.58 ms 0.0%
pairing 1.088 ms 1.088 ms 0.0%
groth16Verify 1.978 ms 1.979 ms +0.1%
simpleVerify 1.296 ms 1.296 ms 0.0%
vrf 1.219 ms 1.220 ms +0.1%
g1Verify 1.183 ms 1.183 ms 0.0%
g2Verify 1.088 ms 1.089 ms +0.1%
aggregateSignatureSingleKey 2.704 ms 2.702 ms -0.1%
aggregateSignatureMultiKey 3.447 ms 3.445 ms -0.1%
schnorrG1Verify 319.6 μs 320.9 μs +0.4%
schnorrG2Verify 553.6 μs 553.3 μs -0.1%
TOTAL 437.4 ms 440.3 ms +0.7%

Copy link
Contributor

Click here to check the status of your benchmark.

Copy link
Contributor

Comparing benchmark results of 'bls12-381-benchmarks' on '85cf1edc5' (base) and '9d41f5033' (PR)

Results table
Script 85cf1ed 9d41f50 Change
hashAndAddG1/0 41.08 μs 40.98 μs -0.2%
hashAndAddG1/10 571.9 μs 570.0 μs -0.3%
hashAndAddG1/20 1.102 ms 1.097 ms -0.5%
hashAndAddG1/30 1.633 ms 1.627 ms -0.4%
hashAndAddG1/40 2.163 ms 2.154 ms -0.4%
hashAndAddG1/50 2.693 ms 2.682 ms -0.4%
hashAndAddG1/60 3.225 ms 3.211 ms -0.4%
hashAndAddG1/70 3.754 ms 3.738 ms -0.4%
hashAndAddG1/80 4.285 ms 4.266 ms -0.4%
hashAndAddG1/90 4.813 ms 4.797 ms -0.3%
hashAndAddG1/100 5.342 ms 5.323 ms -0.4%
hashAndAddG1/110 5.878 ms 5.849 ms -0.5%
hashAndAddG1/120 6.402 ms 6.378 ms -0.4%
hashAndAddG1/130 6.936 ms 6.909 ms -0.4%
hashAndAddG1/140 7.461 ms 7.438 ms -0.3%
hashAndAddG1/150 7.980 ms 7.963 ms -0.2%
hashAndAddG2/0 50.53 μs 50.77 μs +0.5%
hashAndAddG2/10 1.733 ms 1.734 ms +0.1%
hashAndAddG2/20 3.417 ms 3.413 ms -0.1%
hashAndAddG2/30 5.101 ms 5.096 ms -0.1%
hashAndAddG2/40 6.781 ms 6.780 ms -0.0%
hashAndAddG2/50 8.463 ms 8.458 ms -0.1%
hashAndAddG2/60 10.14 ms 10.14 ms 0.0%
hashAndAddG2/70 11.82 ms 11.82 ms 0.0%
hashAndAddG2/80 13.51 ms 13.50 ms -0.1%
hashAndAddG2/90 15.19 ms 15.18 ms -0.1%
hashAndAddG2/100 16.87 ms 16.88 ms +0.1%
hashAndAddG2/110 18.54 ms 18.53 ms -0.1%
hashAndAddG2/120 20.22 ms 20.21 ms -0.0%
hashAndAddG2/130 21.90 ms 21.89 ms -0.0%
hashAndAddG2/140 23.58 ms 23.57 ms -0.0%
hashAndAddG2/150 25.26 ms 25.26 ms 0.0%
uncompressAndAddG1/0 41.04 μs 40.98 μs -0.1%
uncompressAndAddG1/10 580.7 μs 584.3 μs +0.6%
uncompressAndAddG1/20 1.120 ms 1.127 ms +0.6%
uncompressAndAddG1/30 1.655 ms 1.670 ms +0.9%
uncompressAndAddG1/40 2.196 ms 2.215 ms +0.9%
uncompressAndAddG1/50 2.733 ms 2.757 ms +0.9%
uncompressAndAddG1/60 3.277 ms 3.300 ms +0.7%
uncompressAndAddG1/70 3.812 ms 3.838 ms +0.7%
uncompressAndAddG1/80 4.351 ms 4.388 ms +0.9%
uncompressAndAddG1/90 4.891 ms 4.930 ms +0.8%
uncompressAndAddG1/100 5.439 ms 5.473 ms +0.6%
uncompressAndAddG1/110 5.968 ms 6.002 ms +0.6%
uncompressAndAddG1/120 6.506 ms 6.546 ms +0.6%
uncompressAndAddG1/130 7.040 ms 7.087 ms +0.7%
uncompressAndAddG1/140 7.579 ms 7.626 ms +0.6%
uncompressAndAddG1/150 8.128 ms 8.174 ms +0.6%
uncompressAndAddG2/0 50.55 μs 50.79 μs +0.5%
uncompressAndAddG2/10 819.6 μs 819.7 μs +0.0%
uncompressAndAddG2/20 1.588 ms 1.588 ms 0.0%
uncompressAndAddG2/30 2.357 ms 2.357 ms 0.0%
uncompressAndAddG2/40 3.126 ms 3.126 ms 0.0%
uncompressAndAddG2/50 3.895 ms 3.893 ms -0.1%
uncompressAndAddG2/60 4.667 ms 4.667 ms 0.0%
uncompressAndAddG2/70 5.435 ms 5.433 ms -0.0%
uncompressAndAddG2/80 6.204 ms 6.200 ms -0.1%
uncompressAndAddG2/90 6.971 ms 6.970 ms -0.0%
uncompressAndAddG2/100 7.742 ms 7.741 ms -0.0%
uncompressAndAddG2/110 8.512 ms 8.506 ms -0.1%
uncompressAndAddG2/120 9.279 ms 9.279 ms 0.0%
uncompressAndAddG2/130 10.05 ms 10.04 ms -0.1%
uncompressAndAddG2/140 10.83 ms 10.81 ms -0.2%
uncompressAndAddG2/150 11.59 ms 11.59 ms 0.0%
pairing 1.088 ms 1.086 ms -0.2%
groth16Verify 1.980 ms 1.977 ms -0.2%
simpleVerify 1.298 ms 1.295 ms -0.2%
vrf 1.220 ms 1.218 ms -0.2%
g1Verify 1.184 ms 1.180 ms -0.3%
g2Verify 1.089 ms 1.087 ms -0.2%
aggregateSignatureSingleKey 2.706 ms 2.699 ms -0.3%
aggregateSignatureMultiKey 3.451 ms 3.445 ms -0.2%
schnorrG1Verify 319.8 μs 318.9 μs -0.3%
schnorrG2Verify 553.9 μs 553.4 μs -0.1%
TOTAL 440.2 ms 440.2 ms +0.0%

Copy link
Contributor

Click here to check the status of your benchmark.

Copy link
Contributor

Comparing benchmark results of 'validation' on '85cf1edc5' (base) and '9d41f5033' (PR)

Results table
Script 85cf1ed 9d41f50 Change
auction_1-1 172.4 μs 172.6 μs +0.1%
auction_1-2 627.7 μs 630.5 μs +0.4%
auction_1-3 625.8 μs 625.2 μs -0.1%
auction_1-4 223.8 μs 224.1 μs +0.1%
auction_2-1 173.0 μs 173.0 μs 0.0%
auction_2-2 628.5 μs 631.0 μs +0.4%
auction_2-3 820.8 μs 821.6 μs +0.1%
auction_2-4 623.6 μs 624.8 μs +0.2%
auction_2-5 223.8 μs 223.9 μs +0.0%
crowdfunding-success-1 201.7 μs 202.5 μs +0.4%
crowdfunding-success-2 201.4 μs 202.2 μs +0.4%
crowdfunding-success-3 201.6 μs 202.1 μs +0.2%
currency-1 246.0 μs 245.2 μs -0.3%
escrow-redeem_1-1 340.9 μs 341.4 μs +0.1%
escrow-redeem_1-2 343.2 μs 342.3 μs -0.3%
escrow-redeem_2-1 394.2 μs 396.5 μs +0.6%
escrow-redeem_2-2 393.2 μs 396.6 μs +0.9%
escrow-redeem_2-3 394.8 μs 395.5 μs +0.2%
escrow-refund-1 150.1 μs 149.4 μs -0.5%
future-increase-margin-1 246.8 μs 244.7 μs -0.9%
future-increase-margin-2 528.8 μs 528.5 μs -0.1%
future-increase-margin-3 531.8 μs 529.3 μs -0.5%
future-increase-margin-4 480.9 μs 481.9 μs +0.2%
future-increase-margin-5 807.2 μs 803.9 μs -0.4%
future-pay-out-1 246.8 μs 245.1 μs -0.7%
future-pay-out-2 531.1 μs 528.6 μs -0.5%
future-pay-out-3 529.4 μs 530.2 μs +0.2%
future-pay-out-4 806.2 μs 807.3 μs +0.1%
future-settle-early-1 246.1 μs 244.7 μs -0.6%
future-settle-early-2 531.2 μs 528.4 μs -0.5%
future-settle-early-3 531.7 μs 527.8 μs -0.7%
future-settle-early-4 607.3 μs 608.0 μs +0.1%
game-sm-success_1-1 377.4 μs 375.9 μs -0.4%
game-sm-success_1-2 191.9 μs 193.2 μs +0.7%
game-sm-success_1-3 631.0 μs 630.1 μs -0.1%
game-sm-success_1-4 217.3 μs 219.0 μs +0.8%
game-sm-success_2-1 377.1 μs 375.9 μs -0.3%
game-sm-success_2-2 191.7 μs 192.3 μs +0.3%
game-sm-success_2-3 631.9 μs 629.7 μs -0.3%
game-sm-success_2-4 216.5 μs 218.2 μs +0.8%
game-sm-success_2-5 632.0 μs 630.3 μs -0.3%
game-sm-success_2-6 217.4 μs 218.3 μs +0.4%
multisig-sm-1 384.9 μs 384.9 μs 0.0%
multisig-sm-2 373.3 μs 374.5 μs +0.3%
multisig-sm-3 381.2 μs 381.0 μs -0.1%
multisig-sm-4 385.2 μs 384.1 μs -0.3%
multisig-sm-5 550.5 μs 547.6 μs -0.5%
multisig-sm-6 386.0 μs 385.9 μs -0.0%
multisig-sm-7 374.4 μs 375.2 μs +0.2%
multisig-sm-8 383.3 μs 383.9 μs +0.2%
multisig-sm-9 385.7 μs 385.4 μs -0.1%
multisig-sm-10 547.3 μs 545.8 μs -0.3%
ping-pong-1 321.5 μs 321.8 μs +0.1%
ping-pong-2 321.0 μs 321.7 μs +0.2%
ping-pong_2-1 195.1 μs 195.3 μs +0.1%
prism-1 162.4 μs 162.3 μs -0.1%
prism-2 402.2 μs 400.9 μs -0.3%
prism-3 364.2 μs 360.5 μs -1.0%
pubkey-1 137.5 μs 137.6 μs +0.1%
stablecoin_1-1 903.9 μs 904.7 μs +0.1%
stablecoin_1-2 187.5 μs 188.1 μs +0.3%
stablecoin_1-3 1.039 ms 1.038 ms -0.1%
stablecoin_1-4 198.8 μs 199.6 μs +0.4%
stablecoin_1-5 1.329 ms 1.328 ms -0.1%
stablecoin_1-6 245.3 μs 246.8 μs +0.6%
stablecoin_2-1 903.1 μs 904.9 μs +0.2%
stablecoin_2-2 187.0 μs 188.2 μs +0.6%
stablecoin_2-3 1.038 ms 1.040 ms +0.2%
stablecoin_2-4 197.7 μs 200.2 μs +1.3%
token-account-1 186.5 μs 184.5 μs -1.1%
token-account-2 326.8 μs 324.8 μs -0.6%
uniswap-1 407.5 μs 405.9 μs -0.4%
uniswap-2 216.1 μs 213.9 μs -1.0%
uniswap-3 1.728 ms 1.715 ms -0.8%
uniswap-4 328.3 μs 324.3 μs -1.2%
uniswap-5 1.134 ms 1.127 ms -0.6%
uniswap-6 314.6 μs 310.4 μs -1.3%
vesting-1 340.3 μs 337.0 μs -1.0%
TOTAL 34.56 ms 34.52 ms -0.1%

Copy link
Contributor

Click here to check the status of your benchmark.

Copy link
Contributor

Comparing benchmark results of 'validation' on '85cf1edc5' (base) and '9d41f5033' (PR)

Results table
Script 85cf1ed 9d41f50 Change
auction_1-1 172.2 μs 174.9 μs +1.6%
auction_1-2 628.9 μs 633.6 μs +0.7%
auction_1-3 626.9 μs 629.8 μs +0.5%
auction_1-4 224.1 μs 227.1 μs +1.3%
auction_2-1 173.0 μs 175.3 μs +1.3%
auction_2-2 628.8 μs 634.9 μs +1.0%
auction_2-3 822.9 μs 826.2 μs +0.4%
auction_2-4 624.9 μs 628.7 μs +0.6%
auction_2-5 224.4 μs 227.7 μs +1.5%
crowdfunding-success-1 201.2 μs 205.0 μs +1.9%
crowdfunding-success-2 201.7 μs 205.0 μs +1.6%
crowdfunding-success-3 201.8 μs 205.8 μs +2.0%
currency-1 246.8 μs 247.1 μs +0.1%
escrow-redeem_1-1 343.0 μs 345.2 μs +0.6%
escrow-redeem_1-2 342.6 μs 345.7 μs +0.9%
escrow-redeem_2-1 394.2 μs 398.9 μs +1.2%
escrow-redeem_2-2 394.8 μs 400.9 μs +1.5%
escrow-redeem_2-3 394.4 μs 400.4 μs +1.5%
escrow-refund-1 150.5 μs 152.0 μs +1.0%
future-increase-margin-1 246.7 μs 247.3 μs +0.2%
future-increase-margin-2 529.8 μs 535.2 μs +1.0%
future-increase-margin-3 530.2 μs 533.4 μs +0.6%
future-increase-margin-4 481.9 μs 486.4 μs +0.9%
future-increase-margin-5 803.6 μs 810.1 μs +0.8%
future-pay-out-1 247.0 μs 247.1 μs +0.0%
future-pay-out-2 532.9 μs 534.7 μs +0.3%
future-pay-out-3 530.2 μs 535.4 μs +1.0%
future-pay-out-4 803.4 μs 813.1 μs +1.2%
future-settle-early-1 246.5 μs 247.4 μs +0.4%
future-settle-early-2 532.8 μs 534.3 μs +0.3%
future-settle-early-3 531.7 μs 534.8 μs +0.6%
future-settle-early-4 607.8 μs 611.5 μs +0.6%
game-sm-success_1-1 377.1 μs 379.0 μs +0.5%
game-sm-success_1-2 192.3 μs 195.9 μs +1.9%
game-sm-success_1-3 634.5 μs 636.4 μs +0.3%
game-sm-success_1-4 217.1 μs 222.2 μs +2.3%
game-sm-success_2-1 377.3 μs 379.5 μs +0.6%
game-sm-success_2-2 192.0 μs 195.8 μs +2.0%
game-sm-success_2-3 633.2 μs 635.6 μs +0.4%
game-sm-success_2-4 217.3 μs 223.0 μs +2.6%
game-sm-success_2-5 631.7 μs 636.3 μs +0.7%
game-sm-success_2-6 218.1 μs 222.3 μs +1.9%
multisig-sm-1 384.4 μs 388.9 μs +1.2%
multisig-sm-2 375.5 μs 379.6 μs +1.1%
multisig-sm-3 381.4 μs 383.2 μs +0.5%
multisig-sm-4 383.2 μs 389.0 μs +1.5%
multisig-sm-5 548.7 μs 548.5 μs -0.0%
multisig-sm-6 384.2 μs 389.0 μs +1.2%
multisig-sm-7 373.5 μs 377.4 μs +1.0%
multisig-sm-8 381.9 μs 386.7 μs +1.3%
multisig-sm-9 384.5 μs 386.8 μs +0.6%
multisig-sm-10 548.9 μs 550.6 μs +0.3%
ping-pong-1 321.8 μs 325.7 μs +1.2%
ping-pong-2 321.0 μs 325.1 μs +1.3%
ping-pong_2-1 195.8 μs 197.0 μs +0.6%
prism-1 162.3 μs 165.6 μs +2.0%
prism-2 402.3 μs 405.0 μs +0.7%
prism-3 364.2 μs 365.0 μs +0.2%
pubkey-1 137.2 μs 139.8 μs +1.9%
stablecoin_1-1 904.6 μs 914.4 μs +1.1%
stablecoin_1-2 187.5 μs 191.6 μs +2.2%
stablecoin_1-3 1.036 ms 1.047 ms +1.1%
stablecoin_1-4 198.5 μs 203.4 μs +2.5%
stablecoin_1-5 1.330 ms 1.344 ms +1.1%
stablecoin_1-6 246.2 μs 251.3 μs +2.1%
stablecoin_2-1 905.2 μs 914.7 μs +1.0%
stablecoin_2-2 187.6 μs 191.4 μs +2.0%
stablecoin_2-3 1.040 ms 1.048 ms +0.8%
stablecoin_2-4 199.0 μs 203.1 μs +2.1%
token-account-1 186.6 μs 186.4 μs -0.1%
token-account-2 326.8 μs 327.9 μs +0.3%
uniswap-1 407.1 μs 409.5 μs +0.6%
uniswap-2 216.6 μs 216.8 μs +0.1%
uniswap-3 1.730 ms 1.733 ms +0.2%
uniswap-4 328.3 μs 329.0 μs +0.2%
uniswap-5 1.136 ms 1.142 ms +0.5%
uniswap-6 314.7 μs 315.8 μs +0.3%
vesting-1 340.8 μs 340.6 μs -0.1%
TOTAL 34.58 ms 34.87 ms +0.8%

Copy link
Contributor

Click here to check the status of your benchmark.

Copy link
Contributor

Comparing benchmark results of 'nofib' on '85cf1edc5' (base) and '9d41f5033' (PR)

Results table
Script 85cf1ed 9d41f50 Change
clausify/formula1 2.900 ms 2.970 ms +2.4%
clausify/formula2 3.908 ms 3.992 ms +2.1%
clausify/formula3 10.68 ms 10.87 ms +1.8%
clausify/formula4 24.14 ms 24.63 ms +2.0%
clausify/formula5 51.49 ms 52.69 ms +2.3%
knights/4x4 16.53 ms 17.17 ms +3.9%
knights/6x6 43.07 ms 45.06 ms +4.6%
knights/8x8 75.82 ms 79.18 ms +4.4%
primetest/05digits 9.769 ms 10.03 ms +2.7%
primetest/08digits 15.73 ms 16.20 ms +3.0%
primetest/10digits 19.01 ms 19.46 ms +2.4%
primetest/20digits 37.59 ms 38.76 ms +3.1%
primetest/30digits 57.88 ms 59.34 ms +2.5%
primetest/40digits 77.88 ms 80.38 ms +3.2%
primetest/50digits 97.37 ms 98.36 ms +1.0%
queens4x4/bt 4.996 ms 5.176 ms +3.6%
queens4x4/bm 6.403 ms 6.583 ms +2.8%
queens4x4/bjbt1 6.121 ms 6.311 ms +3.1%
queens4x4/bjbt2 5.708 ms 5.914 ms +3.6%
queens4x4/fc 13.00 ms 13.42 ms +3.2%
queens5x5/bt 67.74 ms 70.13 ms +3.5%
queens5x5/bm 71.91 ms 73.40 ms +2.1%
queens5x5/bjbt1 79.07 ms 81.88 ms +3.6%
queens5x5/bjbt2 76.78 ms 79.53 ms +3.6%
queens5x5/fc 163.8 ms 169.0 ms +3.2%
TOTAL 1.039 s 1.070 s +3.0%

Copy link
Contributor

Click here to check the status of your benchmark.

Copy link
Contributor

Comparing benchmark results of 'nofib' on '85cf1edc5' (base) and '9d41f5033' (PR)

Results table
Script 85cf1ed 9d41f50 Change
clausify/formula1 2.908 ms 2.966 ms +2.0%
clausify/formula2 3.891 ms 3.967 ms +2.0%
clausify/formula3 10.67 ms 10.81 ms +1.3%
clausify/formula4 24.15 ms 24.55 ms +1.7%
clausify/formula5 51.46 ms 52.47 ms +2.0%
knights/4x4 16.58 ms 17.09 ms +3.1%
knights/6x6 43.15 ms 45.35 ms +5.1%
knights/8x8 75.34 ms 79.15 ms +5.1%
primetest/05digits 9.868 ms 9.937 ms +0.7%
primetest/08digits 15.81 ms 16.02 ms +1.3%
primetest/10digits 19.10 ms 19.28 ms +0.9%
primetest/20digits 37.86 ms 38.30 ms +1.2%
primetest/30digits 58.30 ms 58.58 ms +0.5%
primetest/40digits 78.79 ms 79.65 ms +1.1%
primetest/50digits 96.38 ms 97.39 ms +1.0%
queens4x4/bt 5.028 ms 5.159 ms +2.6%
queens4x4/bm 6.452 ms 6.543 ms +1.4%
queens4x4/bjbt1 6.160 ms 6.292 ms +2.1%
queens4x4/bjbt2 5.757 ms 5.891 ms +2.3%
queens4x4/fc 13.08 ms 13.33 ms +1.9%
queens5x5/bt 68.23 ms 70.15 ms +2.8%
queens5x5/bm 72.39 ms 72.83 ms +0.6%
queens5x5/bjbt1 79.80 ms 82.36 ms +3.2%
queens5x5/bjbt2 77.50 ms 79.27 ms +2.3%
queens5x5/fc 164.9 ms 169.2 ms +2.6%
TOTAL 1.044 s 1.067 s +2.2%

Copy link
Contributor

Click here to check the status of your benchmark.

Copy link
Contributor

Comparing benchmark results of 'marlowe' on '85cf1edc5' (base) and '9d41f5033' (PR)

Results table
Script 85cf1ed 9d41f50 Change
semantics/ffdd68a33afd86f8844c9f5e45b2bda5b035aa02274161b23d57709c0f8b8de6 908.7 μs 914.9 μs +0.7%
semantics/f339f59bdf92495ed2b14e2e4d3705972b4dda59aa929cffe0f1ff5355db8d79 4.508 ms 4.516 ms +0.2%
semantics/f2a8fd2014922f0d8e01541205d47e9bb2d4e54333bdd408cbe7c47c55e73ae4 708.6 μs 712.5 μs +0.6%
semantics/ecb5e8308b57724e0f8533921693f111eba942123cf8660aac2b5bac21ec28f0 631.1 μs 635.6 μs +0.7%
semantics/eb4a605ed3a64961e9e66ad9631c2813dadf7131740212762ae4483ec749fe1d 287.4 μs 289.9 μs +0.9%
semantics/e9234d2671760874f3f660aae5d3416d18ce6dfd7af4231bdd41b9ec268bc7e1 917.7 μs 917.3 μs -0.0%
semantics/e3afd22d01ff12f381cf915fd32358634e6c413f979f2492cf3339319d8cc079 290.5 μs 291.9 μs +0.5%
semantics/e34b48f80d49360e88c612f4016f7d68cb5678dd8cd5ddb981375a028b3a40a5 375.0 μs 378.9 μs +1.0%
semantics/e26c1cddba16e05fd10c34cbdb16ea6acdbac7c8323256c31c90c520ee6a1080 355.0 μs 359.1 μs +1.2%
semantics/dd11ae574eaeab0e9925319768989313a93913fdc347c704ddaa27042757d990 720.9 μs 730.7 μs +1.4%
semantics/dc241ac6ad1e04fb056d555d6a4f2d08a45d054c6f7f34355fcfeefebef479f3 441.6 μs 443.9 μs +0.5%
semantics/d64607eb8a1448595081547ea8780886fcbd9e06036460eea3705c88ea867e33 287.8 μs 290.0 μs +0.8%
semantics/d1c03759810747b7cab38c4296593b38567e11195d161b5bb0a2b58f89b2c65a 970.9 μs 982.6 μs +1.2%
semantics/d1ab832dfab25688f8845bec9387e46ee3f00ba5822197ade7dd540489ec5e95 37.29 ms 37.26 ms -0.1%
semantics/cf542b7df466b228ca2197c2aaa89238a8122f3330fe5b77b3222f570395d9f5 468.9 μs 473.4 μs +1.0%
semantics/ced1ea04649e093a501e43f8568ac3e6b37cd3eccec8cac9c70a4857b88a5eb8 803.3 μs 809.5 μs +0.8%
semantics/cdb9d5c233b288a5a9dcfbd8d5c1831a0bb46eec7a26fa31b80ae69d44805efc 840.8 μs 847.7 μs +0.8%
semantics/ccab11ce1a8774135d0e3c9e635631b68af9e276b5dabc66ff669d5650d0be1c 970.2 μs 966.4 μs -0.4%
semantics/c9efcb705ee057791f7c18a1de79c49f6e40ba143ce0579f1602fd780cabf153 780.1 μs 785.8 μs +0.7%
semantics/c4bb185380df6e9b66fc1ee0564f09a8d1253a51a0c0c7890f2214df9ac19274 701.6 μs 707.2 μs +0.8%
semantics/bb5345bfbbc460af84e784b900ec270df1948bb1d1e29eacecd022eeb168b315 914.3 μs 926.0 μs +1.3%
semantics/b50170cea48ee84b80558c02b15c6df52faf884e504d2c410ad63ba46d8ca35c 724.5 μs 733.1 μs +1.2%
semantics/b21a4df3b0266ad3481a26d3e3d848aad2fcde89510b29cccce81971e38e0835 1.287 ms 1.303 ms +1.2%
semantics/ad6db94ed69b7161c7604568f44358e1cc11e81fea90e41afebd669e51bb60c8 559.1 μs 563.0 μs +0.7%
semantics/acce04815e8fd51be93322888250060da173eccf3df3a605bd6bc6a456cde871 266.1 μs 269.2 μs +1.2%
semantics/acb9c83c2b78dabef8674319ad69ba54912cd9997bdf2d8b2998c6bfeef3b122 625.7 μs 630.5 μs +0.8%
semantics/a9a853b6d083551f4ed2995551af287880ef42aee239a2d9bc5314d127cce592 478.4 μs 480.0 μs +0.3%
semantics/a85173a832db3ea944fafc406dfe3fa3235254897d6d1d0e21bc380147687bd5 351.2 μs 354.5 μs +0.9%
semantics/9fabc4fc3440cdb776b28c9bb1dd49c9a5b1605fe1490aa3f4f64a3fa8881b25 988.8 μs 998.1 μs +0.9%
semantics/96e1a2fa3ceb9a402f2a5841a0b645f87b4e8e75beb636692478ec39f74ee221 289.8 μs 292.2 μs +0.8%
semantics/8d9ae67656a2911ab15a8e5301c960c69aa2517055197aff6b60a87ff718d66c 346.4 μs 349.7 μs +1.0%
semantics/8c7fdc3da6822b5112074380003524f50fb3a1ce6db4e501df1086773c6c0201 1.107 ms 1.116 ms +0.8%
semantics/82213dfdb6a812b40446438767c61a388d2c0cfd0cbf7fd4a372b0dc59fa17e1 1.212 ms 1.213 ms +0.1%
semantics/7cbc5644b745f4ea635aca42cce5e4a4b9d2e61afdb3ac18128e1688c07071ba 460.8 μs 464.3 μs +0.8%
semantics/7a758e17486d1a30462c32a5d5309bd1e98322a9dcbe277c143ed3aede9d265f 479.0 μs 481.4 μs +0.5%
semantics/75a8bb183688bce447e00f435a144c835435e40a5defc6f3b9be68b70b4a3db6 660.8 μs 662.5 μs +0.3%
semantics/7529b206a78becb793da74b78c04d9d33a2540a1abd79718e681228f4057403a 762.0 μs 770.1 μs +1.1%
semantics/74c67f2f182b9a0a66c62b95d6fac5ace3f7e71ea3abfc52ffbe3ecb93436ea2 760.1 μs 769.4 μs +1.2%
semantics/71965c9ccae31f1ffc1d85aa20a356d4ed97a420954018d8301ec4f9783be0d7 449.4 μs 454.1 μs +1.0%
semantics/70f65b21b77ddb451f3df9d9fb403ced3d10e1e953867cc4900cc25e5b9dec47 741.2 μs 745.8 μs +0.6%
semantics/6d88f7294dd2b5ce02c3dc609bc7715bd508009738401d264bf9b3eb7c6f49c1 467.2 μs 472.8 μs +1.2%
semantics/67ba5a9a0245ee3aff4f34852b9889b8c810fccd3dce2a23910bddd35c503b71 5.625 ms 5.574 ms -0.9%
semantics/675d63836cad11b547d1b4cddd498f04c919d4342612accf40913f9ae9419fac 983.0 μs 992.8 μs +1.0%
semantics/66af9e473d75e3f464971f6879cc0f2ef84bafcb38fbfa1dbc31ac2053628a38 1.173 ms 1.183 ms +0.9%
semantics/65bc4b69b46d18fdff0fadbf00dd5ec2b3e03805fac9d5fb4ff2d3066e53fc7e 2.359 ms 2.357 ms -0.1%
semantics/64c3d5b43f005855ffc4d0950a02fd159aa1575294ea39061b81a194ebb9eaae 637.1 μs 640.6 μs +0.5%
semantics/5f3d46c57a56cef6764f96c9de9677ac6e494dd7a4e368d1c8dd9c1f7a4309a5 465.9 μs 471.4 μs +1.2%
semantics/5f306b4b24ff2b39dab6cdc9ac6ca9bb442c1dc6f4e7e412eeb5a3ced42fb642 722.3 μs 727.5 μs +0.7%
semantics/5f130d19918807b60eab4c03119d67878fb6c6712c28c54f5a25792049294acc 290.4 μs 292.3 μs +0.7%
semantics/5e2c68ac9f62580d626636679679b97109109df7ac1a8ce86d3e43dfb5e4f6bc 496.1 μs 499.7 μs +0.7%
semantics/5e274e0f593511543d41570a4b03646c1d7539062b5728182e073e5760561a66 960.9 μs 974.4 μs +1.4%
semantics/5d0a88250f13c49c20e146819357a808911c878a0e0a7d6f7fe1d4a619e06112 986.4 μs 993.9 μs +0.8%
semantics/5abae75af26f45658beccbe48f7c88e74efdfc0b8409ba1e98f95fa5b6caf999 461.9 μs 464.2 μs +0.5%
semantics/57728d8b19b0e06412786f3dfed9e1894cd0ad1d2bc2bd497ec0ecb68f989d2b 287.0 μs 290.4 μs +1.2%
semantics/56333d4e413dbf1a665463bf68067f63c118f38f7539b7ba7167d577c0c8b8ce 739.0 μs 749.1 μs +1.4%
semantics/55dfe42688ad683b638df1fa7700219f00f53b335a85a2825502ab1e0687197e 287.8 μs 290.1 μs +0.8%
semantics/53ed4db7ab33d6f907eec91a861d1188269be5ae1892d07ee71161bfb55a7cb7 350.3 μs 354.0 μs +1.1%
semantics/52df7c8dfaa5f801cd837faa65f2fd333665fff00a555ce8c55e36ddc003007a 346.0 μs 348.5 μs +0.7%
semantics/4f9e8d361b85e62db2350dd3ae77463540e7af0d28e1eb68faeecc45f4655f57 385.6 μs 387.7 μs +0.5%
semantics/4d7adf91bfc93cebe95a7e054ec17cfbb912b32bd8aecb48a228b50e02b055c8 660.5 μs 665.6 μs +0.8%
semantics/4c3efd13b6c69112a8a888372d56c86e60c232125976f29b1c3e21d9f537845c 974.8 μs 985.4 μs +1.1%
semantics/44a9e339fa25948b48637fe7e10dcfc6d1256319a7b5ce4202cb54dfef8e37e7 287.7 μs 290.5 μs +1.0%
semantics/3db496e6cd39a8b888a89d0de07dace4397878958cab3b9d9353978b08c36d8a 785.6 μs 793.9 μs +1.1%
semantics/3bb75b2e53eb13f718eacd3263ab4535f9137fabffc9de499a0de7cabb335479 287.9 μs 289.2 μs +0.5%
semantics/383683bfcecdab0f4df507f59631c702bd11a81ca3841f47f37633e8aacbb5de 728.9 μs 731.6 μs +0.4%
semantics/33c3efd79d9234a78262b52bc6bbf8124cb321a467dedb278328215167eca455 600.0 μs 606.4 μs +1.1%
semantics/331e4a1bb30f28d7073c54f9a13c10ae19e2e396c299a0ce101ee6bf4b2020db 440.0 μs 445.4 μs +1.2%
semantics/322acde099bc34a929182d5b894214fc87ec88446e2d10625119a9d17fa3ec3d 291.1 μs 292.3 μs +0.4%
semantics/30aa34dfbe89e0c43f569929a96c0d2b74c321d13fec0375606325eee9a34a6a 1.099 ms 1.112 ms +1.2%
semantics/2f58c9d884813042bce9cf7c66048767dff166785e8b5183c8139db2aa7312d1 733.6 μs 739.0 μs +0.7%
semantics/2cb21612178a2d9336b59d06cbf80488577463d209a453048a66c6eee624a695 740.7 μs 748.9 μs +1.1%
semantics/28fdce478e179db0e38fb5f3f4105e940ece450b9ce8a0f42a6e313b752e6f2c 888.2 μs 892.3 μs +0.5%
semantics/2797d7ac77c1b6aff8e42cf9a47fa86b1e60f22719a996871ad412cbe4de78b5 1.802 ms 1.836 ms +1.9%
semantics/26e24ee631a6d927ea4fb4fac530cfd82ff7636986014de2d2aaa460ddde0bc3 533.9 μs 539.4 μs +1.0%
semantics/238b21364ab5bdae3ddb514d7001c8feba128b4ddcf426852b441f9a9d02c882 288.2 μs 289.7 μs +0.5%
semantics/21953bf8798b28df60cb459db24843fb46782b19ba72dc4951941fb4c20d2263 348.7 μs 349.8 μs +0.3%
semantics/202d273721330b31193405101e0637202e2a0f1140211c3e3f171e26312b0220 5.623 ms 5.618 ms -0.1%
semantics/1f0f02191604101e1f201016171604060d010d1d1c150e110a110e1006160a0d 986.2 μs 979.7 μs -0.7%
semantics/1d6e3c137149a440f35e0efc685b16bfb8052ebcf66ec4ad77e51c11501381c7 289.3 μs 291.6 μs +0.8%
semantics/1d56060c3b271226064c672a282663643b1b0823471c67737f0b076870331260 742.5 μs 748.5 μs +0.8%
semantics/1a573aed5c46d637919ccb5548dfc22a55c9fc38298d567d15ee9f2eea69d89e 861.3 μs 873.0 μs +1.4%
semantics/1a2f2540121f09321216090b2b1f211e3f020c2c133a1a3c3f3c232a26153a04 289.9 μs 292.0 μs +0.7%
semantics/18cefc240debc0fcab14efdd451adfd02793093efe7bc76d6322aed6ddb582ad 712.3 μs 718.9 μs +0.9%
semantics/12910f24d994d451ff379b12c9d1ecdb9239c9b87e5d7bea570087ec506935d5 469.6 μs 473.5 μs +0.8%
semantics/119fbea4164e2bf21d2b53aa6c2c4e79414fe55e4096f5ce2e804735a7fbaf91 718.0 μs 721.4 μs +0.5%
semantics/0f1d0110001b121d051e15140c0c05141d151c1f1d201c040f10091b020a0e1a 451.0 μs 455.7 μs +1.0%
semantics/0be82588e4e4bf2ef428d2f44b7687bbb703031d8de696d90ec789e70d6bc1d8 1.314 ms 1.328 ms +1.1%
semantics/0bcfd9487614104ec48de2ea0b2c0979866a95115748c026f9ec129384c262c4 1.069 ms 1.078 ms +0.8%
semantics/07070c070510030509010e050d00040907050e0a0d06030f1006030701020607 964.3 μs 980.1 μs +1.6%
semantics/0705030002040601010206030604080208020207000101060706050502040301 948.6 μs 954.5 μs +0.6%
semantics/0543a00ba1f63076c1db6bf94c6ff13ae7d266dd7544678743890b0e8e1add63 981.8 μs 992.9 μs +1.1%
semantics/04000f0b04051006000e060f09080d0b090d0104050a0b0f0506070f0a070008 704.4 μs 709.1 μs +0.7%
semantics/0104010200020000040103020102020004040300030304040400010301040303 734.9 μs 740.5 μs +0.8%
semantics/0101080808040600020306010000000302050807010208060100070207080202 733.3 μs 743.4 μs +1.4%
semantics/0101020201010201010200010102000201000201010102000102010201010000 286.9 μs 289.5 μs +0.9%
semantics/0101010001010101010101000100010100000001010000010001000001000101 884.3 μs 885.7 μs +0.2%
semantics/004025fd712d6c325ffa12c16d157064192992faf62e0b991d7310a2f91666b8 762.4 μs 770.3 μs +1.0%
semantics/0003040402030103010203030303000200000104030002040304020400000102 982.7 μs 997.1 μs +1.5%
semantics/0001000101000000010101000001000001010101010100000001000001010000 427.1 μs 430.5 μs +0.8%
semantics/0000020002010200020101020201000100010001020101020201010000020102 302.2 μs 305.4 μs +1.1%
role-payout/ff38b1ec89952d0247630f107a90cbbeb92ecbfcd19b284f60255718e4ec7548 189.8 μs 190.9 μs +0.6%
role-payout/fc8c5f45ffcdb024c21e0f34b22c23de8045a94d5e1a5bda1555c45ddb059f82 162.8 μs 163.5 μs +0.4%
role-payout/f7275afb60e33a550df13a132102e7e925dd28965a4efbe510a89b077ff9417f 157.2 μs 158.1 μs +0.6%
role-payout/f53e8cafe26647ccce51e4c31db13608aea1f39034c0f52dee2e5634ef66e747 172.7 μs 173.7 μs +0.6%
role-payout/f2932e4ca4bbb94b0a9ffbe95fcb7bd5639d9751d75d56d5e14efa5bbed981df 153.3 μs 154.0 μs +0.5%
role-payout/f1a1e6a487f91feca5606f72bbb1e948c71abf043c6a0ea83bfea9ec6a0f08d8 156.7 μs 156.7 μs 0.0%
role-payout/ee3962fbd7373360f46decef3c9bda536a0b1daf6cda3b8a4bcfd6deeb5b4c53 182.1 μs 182.1 μs 0.0%
role-payout/ec4712ee820eb959a43ebedfab6735f2325fa52994747526ffd2a4f4f84dd58e 179.7 μs 181.0 μs +0.7%
role-payout/eabeeae18131af89fa57936c0e9eb8d2c7adba534f7e1a517d75410028fa0d6c 158.0 μs 157.8 μs -0.1%
role-payout/df487b2fd5c1583fa33644423849bc1ab5f02f37edc0c235f34ef01cb12604f6 163.8 μs 164.2 μs +0.2%
role-payout/dc45c5f1b700b1334db99f50823321daaef0e6925b9b2fabbc9df7cde65af62e 161.8 μs 163.3 μs +0.9%
role-payout/da353bf9219801fa1bf703fc161497570954e9af7e10ffe95c911a9ef97e77bd 163.4 μs 164.4 μs +0.6%
role-payout/d6bc8ac4155e22300085784148bbc9d9bbfea896e1009dd396610a90e3943032 181.6 μs 181.7 μs +0.1%
role-payout/d5cda74eb0947e025e02fb8ed365df39d0a43e4b42cd3573ac2d8fcb29115997 173.4 μs 174.6 μs +0.7%
role-payout/cc1e82927f6c65b3e912200ae30588793d2066e1d4a6627c21955944ac9bd528 178.1 μs 179.2 μs +0.6%
role-payout/cb2ab8e22d1f64e8d204dece092e90e9bf1fa8b2a6e9cba5012dbe4978065832 156.1 μs 156.9 μs +0.5%
role-payout/caa409c40e39aed9b0f59214b4baa178c375526dea6026b4552b88d2cc729716 149.0 μs 149.8 μs +0.5%
role-payout/c99ecc2146ce2066ba6dffc734923264f8794815acbc2ec74c2c2c42ba272e4d 193.3 μs 194.2 μs +0.5%
role-payout/c78eeba7681d2ab51b4758efa4c812cc041928837c6e7563d8283cce67ce2e02 167.0 μs 168.4 μs +0.8%
role-payout/c4d4c88c5fe378a25a034025994a0d0b1642f10c8e6e513f872327fa895bfc7e 169.6 μs 170.0 μs +0.2%
role-payout/c11490431db3a92efdda70933ba411a0423935e73a75c856e326dbcf6672f3bf 156.0 μs 156.8 μs +0.5%
role-payout/bd79f4a84db23b7c4cd219d498bd581e085cbc3437957e74a8862281a700700b 182.5 μs 183.6 μs +0.6%
role-payout/bd460b7549b70c52e37b312a4242041eac18fe4a266f018bcea0c78a9085a271 180.4 μs 181.0 μs +0.3%
role-payout/bcdbc576d63b0454100ad06893812edafc2e7e4934fec1b44e2d06eb34f36eb8 156.8 μs 157.3 μs +0.3%
role-payout/b869f3928200061abb1c3060425b9354b0e08cbf4400b340b8707c14b34317cd 235.5 μs 236.6 μs +0.5%
role-payout/b6243a5b4c353ce4852aa41705111d57867d2783eeef76f6d59beb2360da6e90 211.5 μs 212.9 μs +0.7%
role-payout/b43564af5f13cc5208b92b1ad6d45369446f378d3891e5cb3e353b30d4f3fb10 156.5 μs 157.7 μs +0.8%
role-payout/af2e072b5adfaa7211e0b341e1f7319c4f4e7364a4247c9247132a927e914753 188.5 μs 189.3 μs +0.4%
role-payout/a92b4072cb8601fa697e1150c08463b14ffced54eb963df08d322216e27373cb 156.5 μs 157.4 μs +0.6%
role-payout/a7cb09f417c3f089619fe25b7624392026382b458486129efcff18f8912bf302 156.7 μs 157.0 μs +0.2%
role-payout/a6f064b83b31032ea7f25921364727224707268e472a569f584cc6b1d8c017e8 157.6 μs 157.8 μs +0.1%
role-payout/a6664a2d2a82f370a34a36a45234f6b33120a39372331678a3b3690312560ce9 192.3 μs 192.6 μs +0.2%
role-payout/a27524cfad019df45e4e8316f927346d4cc39da6bdd294fb2c33c3f58e6a8994 155.8 μs 156.7 μs +0.6%
role-payout/a1b25347409c3993feca1a60b6fcaf93d1d4bbaae19ab06fdf50cedc26cee68d 150.1 μs 151.0 μs +0.6%
role-payout/a0fba5740174b5cd24036c8b008cb1efde73f1edae097b9325c6117a0ff40d3b 172.9 μs 174.0 μs +0.6%
role-payout/a004a989c005d59043f996500e110fa756ad1b85800b889d5815a0106388e1d7 168.2 μs 168.5 μs +0.2%
role-payout/996804e90f2c75fe68886fc8511304b8ab9b36785f8858f5cb098e91c159dde9 160.7 μs 161.6 μs +0.6%
role-payout/962c2c658b19904372984a56409707401e64e9b03c1986647134cfd329ec5139 172.2 μs 172.4 μs +0.1%
role-payout/8c0fa5d9d6724c5c72c67e055d4bfc36a385ded7c3c81c08cdbd8705829af6e6 188.7 μs 189.4 μs +0.4%
role-payout/87167fc5469adac97c1be749326fa79a6b7862ce68aa4abcb438e3c034bd0899 187.3 μs 187.5 μs +0.1%
role-payout/803eae94d62e2afc0e835c204af8362170301bc329e2d849d5f5a47dddf479ec 179.9 μs 180.3 μs +0.2%
role-payout/7b1dd76edc27f00eb382bf996378155baf74d6a7c6f3d5ec837c39d29784aade 156.6 μs 157.4 μs +0.5%
role-payout/73f044f34a30f26639c58bafe952047f74c7bf1eafebab5aadf5b73cfb9024ed 156.4 μs 156.8 μs +0.3%
role-payout/6d66bddb4269bdf77392d3894da5341cf019d39787522af4f83f01285991e93c 157.8 μs 157.7 μs -0.1%
role-payout/6c364699767a84059ffd99cf718562a8c09d96e343f23dc481e8ffda13af424f 156.6 μs 157.1 μs +0.3%
role-payout/6b7bc2b9002a71b33cfd535d43f26334a283d0b9ad189b7cd74baac232c3b9fc 148.8 μs 149.4 μs +0.4%
role-payout/674b0577409957172ad85223c765d17e94c27714276c49c38dfae0a47a561a1e 152.4 μs 153.6 μs +0.8%
role-payout/6621a69217f09d91f42876a9c0cecf79de0e29bdd5b16c82c6c52cf959092ec4 173.2 μs 173.1 μs -0.1%
role-payout/622a7f3bc611b5149253c9189da022a9ff296f60a5b7c172a6dc286faa7284fa 189.1 μs 190.8 μs +0.9%
role-payout/5efe992e306e31cc857c64a62436ad2f9325acc5b4a74a8cebccdfd853ce63d2 162.1 μs 162.1 μs 0.0%
role-payout/5d4c62a0671c65a14f6a15093e3efc4f1816d95a5a58fd92486bedaae8d9526b 185.0 μs 185.3 μs +0.2%
role-payout/5ade103e9530dd0d572fe1b053ea65ad925c6ebbe321e873ace8b804363fa82c 223.0 μs 223.9 μs +0.4%
role-payout/5a2aae344e569a2c644dd9fa8c7b1f129850937eb562b7748c275f9e40bed596 155.8 μs 157.2 μs +0.9%
role-payout/5a0725d49c733130eda8bc6ed5234f7f6ff8c9dd2d201e8806125e5fbcc081f9 165.8 μs 165.9 μs +0.1%
role-payout/4fbcfdb577a56b842d6f6938187a783f71d9da7519353e3da3ef0c564e1eb344 192.9 μs 195.3 μs +1.2%
role-payout/4dd7755b6ca1f0c9747c1fc0ee4da799f6f1c07108e980bd9f820911ad711ff2 210.4 μs 211.9 μs +0.7%
role-payout/49b8275d0cb817be40865694ab05e3cfe5fc35fb43b78e7de68c1f3519b536bd 161.6 μs 162.0 μs +0.2%
role-payout/47364cfaf2c00f7d633283dce6cf84e4fd4e8228c0a0aa50e7c55f35c3ecaa1c 156.6 μs 157.1 μs +0.3%
role-payout/46f8d00030436e4da490a86b331fa6c3251425fb8c19556080e124d75bad7bd6 156.2 μs 156.8 μs +0.4%
role-payout/452e17d16222a427707fa83f63ffb79f606cc25c755a18b1e3274c964ed5ec99 192.2 μs 193.3 μs +0.6%
role-payout/4299c7fcf093a5dbfe114c188e32ca199b571a7c25cb7f766bf49f12dab308be 170.8 μs 171.3 μs +0.3%
role-payout/4121d88f14387d33ac5e1329618068e3848445cdd66b29e5ba382be2e02a174a 183.3 μs 185.3 μs +1.1%
role-payout/3897ef714bba3e6821495b706c75f8d64264c3fdaa58a3826c808b5a768c303d 160.9 μs 160.9 μs 0.0%
role-payout/371c10d2526fc0f09dbe9ed59e44dcd949270b27dc42035addd7ff9f7e0d05e7 186.0 μs 186.3 μs +0.2%
role-payout/36866914aa07cf62ef36cf2cd64c7f240e3371e27bb9fff5464301678e809c40 153.6 μs 153.8 μs +0.1%
role-payout/3569299fc986f5354d02e627a9eaa48ab46d5af52722307a0af72bae87e256dc 154.4 μs 154.4 μs 0.0%
role-payout/3565ee025317e065e8555eef288080276716366769aad89e03389f5ec4ce26d7 165.4 μs 166.6 μs +0.7%
role-payout/332c2b1c11383d1b373e1315201f1128010e0e1518332f273f141b23243f2a07 150.0 μs 150.6 μs +0.4%
role-payout/224ce46046fab9a17be4197622825f45cc0c59a6bd1604405148e43768c487ef 155.7 μs 155.4 μs -0.2%
role-payout/21a1426fb3fb3019d5dc93f210152e90b0a6e740ef509b1cdd423395f010e0ca 172.7 μs 172.8 μs +0.1%
role-payout/211e1b6c10260c4620074d2e372c260d38643a3d605f63772524034f0a4a7632 162.6 μs 163.2 μs +0.4%
role-payout/1a20b465d48a585ffd622bd8dc26a498a3c12f930ab4feab3a5064cfb3bc536a 172.7 μs 172.6 μs -0.1%
role-payout/195f522b596360690d04586a2563470f2214163435331a6622311f7323433f1c 152.2 μs 152.5 μs +0.2%
role-payout/159e5a1bf16fe984b5569be7011b61b5e98f5d2839ca7e1b34c7f2afc7ffb58e 157.7 μs 157.5 μs -0.1%
role-payout/121a0a1b12030616111f02121a0e070716090a0e031c071419121f141409031d 154.4 μs 154.9 μs +0.3%
role-payout/1138a04a83edc0579053f9ffa9394b41df38230121fbecebee8c039776a88c0c 155.6 μs 155.9 μs +0.2%
role-payout/0f010d040810040b10020e040f0e030b0a0d100f0c080c0c05000d04100c100f 182.3 μs 182.5 μs +0.1%
role-payout/0e97c9d9417354d9460f2eb35018d3904b7b035af16ab299258adab93be0911a 171.8 μs 171.5 μs -0.2%
role-payout/0e72f62b0f922e31a2340baccc768104025400cf7fdd7dae62fbba5fc770936d 175.8 μs 176.7 μs +0.5%
role-payout/0e00171d0f1e1f14070d0a00091f07101808021d081e1b120219081312081e15 157.4 μs 157.6 μs +0.1%
role-payout/0dbb692d2bf22d25eeceac461cfebf616f54003077a8473abc0457f18e025960 189.6 μs 190.2 μs +0.3%
role-payout/0d0f01050a0a0a0b0b050d0404090e0d0506000d0a041003040e0f100e0a0408 165.2 μs 165.6 μs +0.2%
role-payout/0c9d3634aeae7038f839a1262d1a8bc724dc77af9426459417a56ec73240f0e0 163.3 μs 163.6 μs +0.2%
role-payout/0bdca1cb8fa7e38e09062557b82490714052e84e2054e913092cd84ac071b961 186.4 μs 185.0 μs -0.8%
role-payout/07658a6c898ad6d624c37df1e49e909c2e9349ba7f4c0a6be5f166fe239bfcae 148.6 μs 149.1 μs +0.3%
role-payout/06317060a8e488b1219c9dae427f9ce27918a9e09ee8ac424afa33ca923f7954 165.2 μs 165.2 μs 0.0%
role-payout/057ebc80922f16a5f4bf13e985bf586b8cff37a2f6fe0f3ce842178c16981027 153.5 μs 153.5 μs 0.0%
role-payout/04f592afc6e57c633b9c55246e7c82e87258f04e2fb910c37d8e2417e9db46e5 218.7 μs 219.0 μs +0.1%
role-payout/041a2c3b111139201a3a2c173c392b170e16370d300f2d28342d0f2f0e182e01 186.6 μs 187.4 μs +0.4%
role-payout/0405010105020401010304080005050800040301010800080207080704020206 184.2 μs 185.1 μs +0.5%
role-payout/0403020000030204010000030001000202010101000304030001040404030100 167.9 μs 168.7 μs +0.5%
role-payout/03d730a62332c51c7b70c16c64da72dd1c3ea36c26b41cd1a1e00d39fda3d6cc 180.8 μs 182.6 μs +1.0%
role-payout/031d56d71454e2c4216ffaa275c4a8b3eb631109559d0e56f44ea8489f57ba97 194.1 μs 194.7 μs +0.3%
role-payout/0303020000020001010201060303040208070100050401080304020801030001 154.8 μs 154.9 μs +0.1%
role-payout/0202010002010100020102020102020001010101020102010001010101000100 156.0 μs 156.8 μs +0.5%
role-payout/0201020201020000020000010201020001020200000002010200000101010100 167.3 μs 168.2 μs +0.5%
role-payout/01dcc372ea619cb9f23c45b17b9a0a8a16b7ca0e04093ef8ecce291667a99a4c 150.0 μs 149.9 μs -0.1%
role-payout/0101000100000101010000010101000100010101000001000001000000010101 181.9 μs 183.5 μs +0.9%
role-payout/0100000100010000000001000100010101000101000001000000010000010000 241.5 μs 242.3 μs +0.3%
role-payout/0004000402010401030101030100040000010104020201030001000204020401 171.4 μs 171.3 μs -0.1%
TOTAL 135.6 ms 136.1 ms +0.4%

@kwxm kwxm merged commit 00beff4 into master May 29, 2024
7 checks passed
@kwxm kwxm deleted the kwxm/provisional-conway-cost-model branch May 29, 2024 12:09
ramsay-t added a commit that referenced this pull request Aug 6, 2024
* Trace removal re-implemented as a IR rewrite rule (#5907)

* refactor: Internal module for RewriteRules, Monoid Instance

* Trace removal re-implemented as a IR rewrite rule

* Test case for an impure trace message, added note.

* CIP-0057 Howto: exporting a Plutus contract blueprint (#5817)

* Howto: exporting a Plutus contract blueprint

* howto/exporting-a-blueprint uses literal includes

* Changelog record

* Paragraph about `deriveArgumentBlueprint` / `deriveParameterBlueprint`

* Include plutus.json literally

* [Release] 1.26.0.0 (#5914)

Signed-off-by: Ana Pantilie <ana.pantilie95@gmail.com>

* A quick isabelle experiment. (#5913)

* PLT-8171: Combine PIR, PLC, and UPLC into a single executable (#5699)

Acked-by: Nikolaos Bezirgiannis <bezirg@users.noreply.github.com>

Co-authored-by: Nikolaos Bezirgiannis <bezirg@users.noreply.github.com>

* chore(deps): bump slackapi/slack-github-action from 1.25.0 to 1.26.0 (#5915)

Bumps [slackapi/slack-github-action](https://github.com/slackapi/slack-github-action) from 1.25.0 to 1.26.0.
- [Release notes](https://github.com/slackapi/slack-github-action/releases)
- [Commits](slackapi/slack-github-action@v1.25.0...v1.26.0)

---
updated-dependencies:
- dependency-name: slackapi/slack-github-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Kwxm/plc spec/bitwise conversions (#5911)

* Intial text for bitwise conversions

* Intial text for bitwise conversions

* Updates

* Tidying up

* Tidying up

* Deal with edge cases more concisely

* More tidying up

* Rearrange some cases

* Almost done

* More clarification

* Update specification date

* Some clarification after PR comments

* Use Int64 in CostModelParams (#5920)

* Change CMTooFewParamsError to a warning (#5912)

* [Costing] Provide support for multiple 'CostModel's (#5851)

* CaseOfCase kind mismatch error fix (#5923)

* Fix issue #5922

* test_extractTyArgs

* CaseOfCase: cover types with two type args

* Fix some Notes so they pass the check (#5930)

* Restore old cost model param names (#5932)

* Tidy up SimpleJSON.hs (#5936)

* chore: formatting (#5937)

* 1.27.0.0 (#5938)

* Do not build the plutus executable if GHC <9.6 (#5940)

* Update CONTRIBUTING.adoc (#5950)

* Add 'Note [Table of all possible ledger's states w.r.t. cost model parameters update]' (#5935)

* Remove annoying error message (#5956)

* Add plutus-tx-template Release Instructions and GH Workflow (#5952)

* [StdLib] Strictify 'fix' (#5939)


This makes `fix` stricter so that the body of the function that it takes always gets forced regardless of whether the necessary argument is provided or not.

Resolves #5961.

---------

Co-authored-by: Yura Lazaryev <Yuriy.Lazaryev@iohk.io>

* [PIR] Don't generate 'fixBy' if you don't need to (#5954)

Removes unnecessary generation of `fixBy` when we only need `fix`.

* Chore: formatting, imports, pragmas. (#5965)

* CaseOfCase UPLC transformation tests. (#5960)

* Avoid evaluating `nilCase` strictly in `matchList`, and rename the original `matchList` to `matchList'` (#5901)

* Improvements to plutus-metatheory site (#5959)

* Improvements to plutus-metatheory site

* Added markdown titles to markdown files so they get built properly. Not all of the titles are very interesting.

---------

Co-authored-by: Ramsay Taylor <ramsay.taylor@iohk.io>

* chore(deps): bump nixbuild/nix-quick-install-action from 27 to 28 (#5951)

Bumps [nixbuild/nix-quick-install-action](https://github.com/nixbuild/nix-quick-install-action) from 27 to 28.
- [Release notes](https://github.com/nixbuild/nix-quick-install-action/releases)
- [Changelog](https://github.com/nixbuild/nix-quick-install-action/blob/master/RELEASE)
- [Commits](nixbuild/nix-quick-install-action@v27...v28)

---
updated-dependencies:
- dependency-name: nixbuild/nix-quick-install-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* [Build] Remove the doctests runner of 'prettyprinter-configurable' (#5974)

* Kwxm/mainnet script budgets (#5973)

* Mainnet script budget analysis

* Comment

* Add a comment

* Release 1.28.0.0 (#5975)

* [PlutusTx] [Builtins] Split 'FromBuiltin' and 'ToBuiltin' (#5971)

This addresses the [inconsistencies](#5547 (comment)) that we got from using the now retired `FromBuiltin`/`ToBuiltin` classes for two mutually exclusive purposes. Now we have two versions of those classes: one is used for converting builtins to Plutus Tx types and back, while the other one is for making builtins transparent/opaque within Plutus Tx. These two purposes are very similar, but also subtly different and that is explained in the docs.

* Update README.md (#5997)

* chore(deps): bump cachix/install-nix-action from 26 to 27 (#5999)

Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action) from 26 to 27.
- [Release notes](https://github.com/cachix/install-nix-action/releases)
- [Commits](cachix/install-nix-action@v26...V27)

---
updated-dependencies:
- dependency-name: cachix/install-nix-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Script to prepare binary executables for uploading to the github release page. (#6015)

* Kwxm/mainnet script budgets 2 (#6057)

* Get the script analysis executable to print out actual execution costs

* Tidying up

* Empty comment

* Dot

* Output evaluation status too

* Oops

* Add integerToByteString and byteStringToInteger to PlutusV2 at PV10 (#6056)

* [Refactoring] Remove 'UnknownBuiltin' and 'UnknownBuiltinType' (#6064)

* Conditionally add 'triage' label to new issues (#6061)

* Add triage label only when the issue does not have any of the 'Internal' labels

* Fix bug in add-triage-label.yml (#6067)

* chore(deps): bump benchmark-action/github-action-benchmark (#6058)

Bumps [benchmark-action/github-action-benchmark](https://github.com/benchmark-action/github-action-benchmark) from 1.19.3 to 1.20.3.
- [Release notes](https://github.com/benchmark-action/github-action-benchmark/releases)
- [Changelog](https://github.com/benchmark-action/github-action-benchmark/blob/master/CHANGELOG.md)
- [Commits](benchmark-action/github-action-benchmark@v1.19.3...v1.20.3)

---
updated-dependencies:
- dependency-name: benchmark-action/github-action-benchmark
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add integerToByteString and byteStringToInteger to V2.ParamName (#6065)

* Add PlutusTx Map backed by Data (#5927)

Co-authored-by: Ziyang Liu <unsafeFixIO@gmail.com>
Signed-off-by: Ana Pantilie <ana.pantilie95@gmail.com>

* Let nightly.yml accept hedgehog-tests input (#6062)

* Let nightly.yml accept hedgehog-tests input
* Default tests from 10k to 50k

* Remove obsolete defer-plugin-errors flag (#6080)

* Add a Plutus Tx test utility package (#6086)

Signed-off-by: Ana Pantilie <ana.pantilie95@gmail.com>

* [Errors] polish evaluation errors (#6043)

We have this distinction of "user" vs "internal" errors that made some sense when TPLC was what was evaluated, but now that it's UPLC, all of those are "user" errors. So I was going to remove the distinction entirely just to realize that it in fact still makes sense, it's just now "operational" vs "structural". This PR clarifies this.

I've also tweaked errors a bit while I was here, plus removed a bunch of unsafe functions from the CEK machine API (they were convenient when they were exposed from a single module, but now that we have several of them, it's no longer worth the trouble, plus we really should use some different approach to calling the CEK machine in the benchmarks, but that's not within the scope of this PR).

* [Test] Add do-notation support for 'TestNested' (#5948)

This refactors the `TestNested` machinery, so that

1. it supports listing tests in a `do`-block, which is something that I need in a different PR to update a huge `do`-block so that some of the tests there become golden
2. the API is more granular and pushes the user in the right direction

I've also improved some of the tests while I was there and unified the formatting. Most of the tests we have use 4 spaces instead of 2, so I preserved that, we're probably going to run `fourmolu` over all the files eventually anyway and that'll make the indentation 2-space-based.

* Run nightly tests on plutus-benchmark (#6091)

* [Exe] Generalize 'withL' to 'withLangGeneral' (#5918)

* Kwxm/provisional conway cost model (#6087)

* Rename semantics variants

* Change some names

* Get uplc to use correct cost model for semvar

* Dumping cost models

* Dumping cost models

* Tidy up exports and tests

* Move a function

* More updates

* Fix some typos

* Update models.R

* Add updated cost models

* Add updated cost models

* Update test results

* Remove obsolete entries from V3.ParamName

* Fix cost model interface test

* Fix (sort of) plutus-ledger-api tests

* Various small fixes

* Forgot to update parameters

* Add changelog entries

* Fix the changelog entries

* Address PR review comments

* Add costs for new builtins to V1 and V2 cost model files

* Fix some dependencies in plutus-benchmark

* Fix partial reversion of #6086 caused by merge

* Remove old cost model files

* Update/rename benchmark CSV files

* Update issue templates (#6037)

* Remove reference to benching.csv in plutus-core.cabal (#6149)

* PlutusV3: Datum/Redeemer in ScriptContext, Datum Optional, Unified Script Type (#5934)

* Kwxm/costing/reduce CEK CPU step costs B (#6153)

* Make CEK step costs for models B anc C identical

* Add changelog entry

* Add changelog entry

* [Test] Dump UPLC for 'strictLetRec' (#5963)

* Use the most recent evaluation context for most of the benchmarks (#6152)

* [Builtins] Polish handling of integral types (#6036)

This

- adds support for throwing operational unlifting errors in the builtins machinery, which allows us to attach a message to an unlifting failure. Unfortunately this is still not enough to propagate proper error messages to the user, because they get erased by the evaluation machinery down the line, this is our 2018's legacy of the stupid idea to have raw evaluation failures that don't carry any content
- makes handling of integral types in `PlutusCore.Default.Universe` uniform (it was a mess before with a weird partial set of instances and morally the same instances being implemented differently)

* Tests for the `preserve-logging` flag. (#6162)

* Require PlutusV3 scripts to evaluate to BuiltinUnit (#6159)

* Quadratic costing for integer division functions (#6161)

* Quadratic costing for integer division functions

* Correct some typos

* Agda typo

* Fix V2's costModelParamsForTesting (#6166)

* Release 1.29.0.0 (#6170)

* Update update-version.sh to match package names less greedily (#6174)

* Update update-version.sh to match package names less greedily

* Allow whitespace after comma

* Allow whitespace after comma

* Clarify comment

* More error checking (#6179)

* Reorganized Plutus user guide on the Docusaurus platform initial deployment (#6177)

* Initial Docusaurus Setup

* uploaded docs files and images

* added code files and images

* cleaned up mermaid diagrams for platform page

* committed yarn.lock file

* Add markdown link styling

* Update Plutus styling and add GA plugin

* updating yarn.lock file

* CSV Rendering component

* adding cost model parameters page that imports CSV files

* Fix gradient overflow on tables for dark mode

* changing title to Plutus user guide

* Update favicon and social card assets

* Remove landing page and set /docs to base path

* Update literal include roots

* Rename Haddock workflow and update to include Docusaurus build

* Update docusaurus/README.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* Update docusaurus/docs/adr/adr-index.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* Update docusaurus/docs/adr/adr-index.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* Update docusaurus/docs/adr/adr-index.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* Update docusaurus/docs/adr/adr1.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* Update docusaurus/docs/adr/adr2.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* Update docusaurus/docs/essential-concepts/language-versions.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* Update docusaurus/docs/essential-concepts/language-versions.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* Update docusaurus/docs/essential-concepts/language-versions.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* Update docusaurus/docs/essential-concepts/language-versions.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* Update docusaurus/docs/adr/adr1.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* Update docusaurus/docs/adr/adr1.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* Update docusaurus/docs/adr/adr1.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* Update docusaurus/docs/adr/adr1.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* Update docusaurus/docs/adr/adr1.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* Update docusaurus/docs/adr/adr1.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* Update docusaurus/docs/adr/adr1.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* Update docusaurus/docs/adr/adr1.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* Update docusaurus/docs/adr/adr1.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* Update docusaurus/docs/adr/adr1.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* Update docusaurus/docs/adr/adr1.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* Update docusaurus/docs/adr/adr1.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* committing after running pre-commit run --all-files command to fix build errors

---------

Co-authored-by: ianhanssoniohk <ian.hansson@iohk.io>
Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* Initial version of new combined-haddock.yml workflow (#6182)

* [Builtins] Make 'BuiltinSuccess' the first constructor (#5885)

This makes `BuiltinSuccess` the first constructor of `BuiltinResult`, see the comment there of why we want that.

See [this](#5885 (comment)) comment for the very ambiguous benchmarking results.

* [PlutusLedgerApi] [Refactoring] Polish imports and exports (#6178)

This

- resolves #6098
- moves a bunch of stuff shared among `V1`/`V2`/`V3` into `Common` (see the PR review)
- makes all imports in the `Common`/`V1`/`V2`/`V3` modules qualified so that it's clear where definitions come from and whether they are inherited from `Common` or an earlier ledger language
- fixes some formatting, adds a definition for consistency etc

* Adding link to Haddock documentation to index.md (#6187)

* removing outdated and incorrect content from the Plutus platform page (#6188)

* Add `Data.Value` to `PlutusLedgerAPI` (#6143)

Signed-off-by: Ana Pantilie <ana.pantilie95@gmail.com>

* added the term Haddock where the public Plutus code libraries are mentioned since it is a term likely to be used in searches (#6190)

* Refactored Serialise/Flat-Via. Fixes #6083 (#6144)

Co-authored-by: Nikolaos Bezirgiannis <bezirg@users.noreply.github.com>

* Add Redeemer to V3 ScriptContext Pretty instance (#6191)

* Logical operations (#5970)

* Initial port of logical ops

* Add PlutusTx correspondents to the new builtins

* Tests for logical operations

* Rest of tests

* Formatting of denotations

* Rename byteStringReplicate to replicateByteString

* Correct references to CIP-121

* Changelogs, document tests

* Note commutativity for new operations

* Properly rename replicate builtin, add to plutus-tx-plugin

* Make new logical builtins available in V3

* Fix links to CIP-122, use toOpaque and fromOpaque instead

* Correct all references to CIP-122

* Rename bitwise builtins, use proper costing

* Bitwise primops will not be in Conway

* Rename tests to suit new primop names

* Combined Haddock Generation (#6146)

* Run nightly tests on plutus-shared instead of plutus-benchmark (#6195)

* Run combined-haddock.yml workflow on plutus-shared instead of plutus-runner (#6196)

* Fix combined_haddock.sh script (#6199)

* [Test] [Builtins] Add golden tests with unlifting errors (#6189)

This refactors a file with tests so that unit tests that are supposed to result in evaluation failure also become golden tests with the error message printed to a golden file. Need it to demonstrate that #6181 does indeed allow us to preserve operational unlifting errors.

* Changed the term "Documentation" to "User guide" in the upper left area of the docs site (#6200)

* Styling updates to docusaurus site

* Changed the term Documentation to User guide in the upper left corner of the docs site next to the PLUTUS wordmark logo.

* Add .yarn to .gitignore

---------

Co-authored-by: ianhanssoniohk <ian.hansson@iohk.io>

* Update Alert Message in longitudinal-benchmark.yml (#6201)

* [Test] Add missing bitwise builtins golden files (#6204)

* [Errors] Preserve operational unlifting errors (#6181)

* Docs raise visibility code libraries (#6203)

* added more visibility to Haddock Plutus code libraries on index.md page

* adding new Haddock documentation page under the Reference nav menu

* updated Reference top-level page description

* minor style edit update docusaurus/docs/index.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* style edits update docusaurus/docs/reference/haddock-documentation.md

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

---------

Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>

* [Test] [Builtin] Polish 'MakeRead' tests (#6202)

* Remove AssocMap comparison instances (#6173)



Signed-off-by: Ana Pantilie <ana.pantilie95@gmail.com>

* Update README.adoc (#6206)

Updated the link in README to point to the Plutus docs site on the docusaurus platform instead of Read the docs.

* Remove PyF as it depends on GHC and causes depenecy conflicts downstream. (#6208)

* Bitwise operations (#6090)

* Initial bitwise primitives

* Wire up new builtins

* Tests

* Changelogs

* Fix failing goldens

* Fix cost model for tests

* Bitwise primitives are not in Conway

* Finish shift tests

* Fix goldens

* Rest of tests

* Rename operations

* Note about split composition for shift property

* Explain bitwise tests in comments, remove AND and OR tests for finding and counting bits

* Goldens for bitwise primops

* Chop down property test running times a bit

* Add test for finding first in zero byte string, rename some tests for clarity

* Clarify implementation choices in the comments

* Tidy up helpers for property tests

* Consolidate all bitwise ops, retarget links to CIPs

* Reduce coverage limits for signature verification tests (#6209)

* moved the Getting Started page to immediately follow the Introduction page (#6211)

* Haskell Eq for AssocMap (#6213)



Signed-off-by: Ana Pantilie <ana.pantilie95@gmail.com>

* Shorten some filenames in the conformance tests (#6214)

Shorten some file names

* MK-5422 move getting started page fixing link (#6215)

* moved the Getting Started page to immediately follow the Introduction page

* fixed broken link

* [Evaluation] Move stuff under `enterComputeCek` (#6156)

This polishes the structure of the CEK machine code a little: moves definitions having CEK-specific constraints around (as per `Note [Compilation peculiarities]`), removes outdated comments and moves pragmas around.

* Release 1.30.0.0 (#6216)

* plutus-ir: fix redundant imports (#6218)

* Fix incorrect Note reference (#6217)

* Add documentation to `Data.Value` (#6220)

* [Builtins] Replace 'EvaluationResult' with 'BuiltinResult' (#5926)

This replaces several `Emitter (EvaluationResult a)` occurrences with `BuiltinResult`, something that I missed the last [time](#5728).

In addition to that, it also replaces `EvaluationResult` with `BuiltinResult` in general. It doesn't matter performance-wise (modulo a regression that we didn't notice some time ago), but `BuiltinResult`, unlike `EvaluationResult`, allows one to attach an error message to a failure, which we do in this PR as well, meaning we now get better error messages. And we also now respect the operational vs structural evaluation errors distinction.

The PR also replaces `Emitter` with `BuiltinResult`. And makes the GHC Core of builtins smaller by making error-throwing functions (not) inline (see `Note [INLINE and OPAQUE on error-related definitions]` for details).

* New `./scripts/combined-haddock.sh` (#6205)

* Add workflow for publishing Agda Metatheory site (#6223)

* Add workflow for publishing AGDA metatheory site

* wip

* wip

* Fixes to `metatheory-site.yml` workflow (#6228)

* Final changes to `metatheory-site.yml` workflow (#6229)

* Update RELEASE.adoc with instructions to delete unused branches and tags (#6230)

* Complete Migration from RDT to Docusaurus (#6227)

- Delete the contents of doc/read-the-docs-site, only keeping the README with a migration notice.
- Move docusaurus folder into doc folder.
- Update the GH workflows for publishing the haddock site and docusaurus site.
- Delete GH web hook and update redirects on RTD site.
- Remove mentions of read-the-docs and combined-haddock from nix code
- Update release process, mentioning how to publish Docusaurus and the Haddock site
- Update links in Docusaurus mentioning the new haddock site

* Fix broken links in docusaurus docs (#6232)

* Add flake.nix for doc/docusaurus (#6233)

* New shell for Docusaurus
* Fix broken links

* making a spelling correction on the doc/docusaurus README file (#6235)

* [Builtins] Remove 'Emitter' and 'MonadEmitter' (#6224)

* Refactor GitHub Workflows (#6124)

* Fix & simplify SOP encoding example comment (#6231)

Here's a small fix for the comment:

- use one variable for the type everywhere
- fix ordering of `constr` arguments

Additionally,

- align the corresponding parts in the text

* Update github-action-benchmark version (#6238)

* Make it build with ghc 9.10 (#6079)

* Make it build with ghc 9.10
* Nix updates
* Disable failing test (cseExpensive test in untyped-plutus-core-test suite)
* plutus-tx-plugin-tests: Accept some CSE golden changes

* Update version of github-action-benchmark to v1.20.3 (#6240)

* Update version of github-action-benchmark to v1.20.3

* Fix bug in triage-label.yml

* Add workflows to check broken links and deploy papers to GH Pages (#6236)

* Add workflows to check broken links and deploy papers to GH Pages

* Publish papers and specs on push to master only (#6246)

* Cabal project to compile docusaurus examples. (#6239)

* Added cardano-constitution package (#6234)

* Added cardano-constitution package

* Remove cardano-constitution checks from CI

* Restrist x-compiling

---------

Co-authored-by: Nikolaos Bezirgiannis <bezirg@users.noreply.github.com>
Co-authored-by: zeme <lorenzo.calegari@iohk.io>

* [Test] Turn off CSE for problematic tests (#6249)

* [Test] Turn off CSE for the 'patternMatching' test (#6251)

* [Optimization] Remove case-of-case (#6248)

* Spec that verifies various script sizes (#6247)

* Add cardano-constitution-tests and slack-message-broker workflows (#6253)

* Updates to slack-message-broker.yml (#6258)

* Update slackapi/slack-github-action version -> v1.26.0 (#6259)

* Improve messages in slack-message-broker.yml (#6260)

* Fix error message in slack-message-broker.yml (#6261)

* Fix another error in slack-message-broker.yml (#6262)

* Fix "un-rolling" a list type. (#6165)

* Fix "un-rolling" a list type.

* Un-roll other general types: [], Maybe, (,), BuiltinUnit, BuiltinPair

* constitution: Add executable that creates json envelope (#6267)

Co-authored-by: Jamie Bertram <jamie.bertram@tweag.io>

* Fix bug in ./script/combined-haddock.sh (#6263)

* Update baseUrl in docusaurus.config.ts (#6275)

* Improvements to haddock-site.yml (support auto-publish on push to master) (#6276)

* Better messages in slack-message-broker.yml (#6280)

* Remove --ignore-url's from linkchecker step in combined-haddock.sh (#6281)

* Add cabal update step in combined-haddock.sh (#6283)

* Fix CsvTable.tsx and LiteralInclde.tsx in docusaurus (#6282)

* Fix haddock documentation for cardano-constitution (#6284)

* Stronger docusaurus builds and general QOL improvements (#6287)

* Move package-lock.json from top-level to scripts/blueprints (#6289)

* Fix editUrl in docusaurus.config.ts (#6291)

* chore(deps): bump JamesIves/github-pages-deploy-action (#6292)

Bumps [JamesIves/github-pages-deploy-action](https://github.com/jamesives/github-pages-deploy-action) from 4.6.1 to 4.6.3.
- [Release notes](https://github.com/jamesives/github-pages-deploy-action/releases)
- [Commits](JamesIves/github-pages-deploy-action@v4.6.1...v4.6.3)

---
updated-dependencies:
- dependency-name: JamesIves/github-pages-deploy-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Fix typos (#6288)

* fix typo

* fix typos

* fix typo

* fix typo

* Detect broken links for haddock,metatheory,docusaurus + local repo files (#6294)

* Fix broken linkchecker workflows (#6295)

* Add .github/linkchecker/action.yml

* Add support for ghc910 to hydraJobs (#6293)

* Disable linkchecker on live sites (#6298)

* [Bug] Fix 'isNormalType' and add 'prop_normalizedTypeIsNormal' (#6272)

* Analyse script events supports PlutusLedgerLanguage V3 (#6300)

* fix: parameter 33 should be a Rational (#6302)

* Address guardrail script audit comments (#6305)

* All names are printed with their unique values by default. (#5972)

* chore: explicit imports

* Test demonstrates that without printed unique value a name won't roundtrip printing/parsing

* Pretty-printing with indexes by default, simple representation by
opt-in.

* Updated golden files

* fix: types in defaultConstitution (#6307)

More descriptive type names in the defaultConstitution

Co-authored-by: Nikolaos Bezirgiannis <329939+bezirg@users.noreply.github.com>

* Fix overflow bug in shiftByteString, rotateByteString, add tests to ensure it stays fixed (#6309)

* Fix overflow bug in shiftByteString, add tests to ensure it stays fixed

* Fix similar issue in rotations

* Add shift wrapper for bounds checks

* Fix rotations similarly, note in docs

* Fix typo, note about fromIntegral

* Release 1.31.0.0 (#6312)

* Re-export bitwise builtins from PlutusTx.Prelude (#6313)

* [Costing] Increase the cost of constructors of '[]' (#6285)

* Change writeBits to take changelists as two separate lists (#6317)

* fix: types in defaultConstitution (#6307)

More descriptive type names in the defaultConstitution

Co-authored-by: Nikolaos Bezirgiannis <329939+bezirg@users.noreply.github.com>

* Fix overflow bug in shiftByteString, rotateByteString, add tests to ensure it stays fixed (#6309)

* Fix overflow bug in shiftByteString, add tests to ensure it stays fixed

* Fix similar issue in rotations

* Add shift wrapper for bounds checks

* Fix rotations similarly, note in docs

* Fix typo, note about fromIntegral

* Release 1.31.0.0 (#6312)

* Modify writeBits to use two lists as arguments

* Fix writeBits in PlutusTx to match new API

* Fix goldens

---------

Co-authored-by: Romain Soulat <117812549+RSoulatIOHK@users.noreply.github.com>
Co-authored-by: Nikolaos Bezirgiannis <329939+bezirg@users.noreply.github.com>
Co-authored-by: Yura Lazarev <1009751+Unisay@users.noreply.github.com>

* [Costing] Remove the 'ExMemoryUsage' instance for 'SomeTypeIn' (#6318)

* feat: New version of VT-CC-01 (#6320)

Signed
Changed the defaultConstitution.json (+ random fixes in some $comment)
Changed the tests values
Changed the traceability documents and updated the versioning
New golden test values

"All 654 tests passed (99.02s)"

* [Test] Make tests take reasonable time (#6286)

This dramatically reduces the number of tests run locally making evaluation times of plutus-test drop by more than 10x.

The reduced number of tests run locally is balanced by running the old amount of tests in the nightly test suite.

* fix: haddock error (#6323)

* Reverse hunk test_multiSplitSound (#6324)

Co-authored-by: Nikolaos Bezirgiannis <bezirg@users.noreply.github.com>

* Kwxm/costing/bitwise 4 (#6301)

* Costing for new bitwise builtins

* Fix alignment problem

* Add changelog entry

* Update some CIP URLs

* Update some CIP URLs

* Remove outdated comment

* Address some review comments

* Address some review comments

* Fix for changes in main branch

* Update costing for revised version of writeBits

* Fix benchmark tests for integer division builtins

* Fix comments

* Update benchmark results for writeBits split updates

* Try removing zip in writeBits

* Remove wrapper

* Rearrange code again

* Tidying up

* Fix plutus-tx

* Make some helpers INLINEABLE

* Rearrange code again

* Simplify known type instances for 'ListCostedByLength'

---------

Co-authored-by: effectfully <effectfully@gmail.com>

* 8-queens using bitwise primops benchmark (#6311)

* Milestone 3 benchmark, test

* Fix cabal file

* Update writeBits use in NQueens

* [Plinth] [Builtins] Fix 'writeBits' (#6329)

* [Plinth] Ban using 'toBuiltin' and 'fromBuiltin' (#6342)

It used to be possible to use `toBuiltin`/`fromBuiltin` within a smart contract, but this is no longer the case, but this isn't obvious to the users as they already have code with `toBuiltin`/`fromBuiltin` that now just misbehaves instead of throwing a type error or breaking compilation some other way. This fixes the problem by throwing on any usage of `toBuiltin`/`fromBuiltin` with a suggestion to use `toOpaque`/`fromOpaque` instead.

* Kwxm/bitwise/enable nqueens benchmark (#6343)

This enables the bitwise `nqueens` benchmark following the fix for `writeBits` in Plinth in #6309.

```
$ cabal bench bitwise-bench
Build profile: -w ghc-9.6.6 -O1
In order, the following will be built (use -v for more details):
 - plutus-benchmark-0.1.0.0 (bench:bitwise-bench) (first run)
Preprocessing benchmark 'bitwise-bench' for plutus-benchmark-0.1.0.0...
Building benchmark 'bitwise-bench' for plutus-benchmark-0.1.0.0...
Running 1 benchmarks...
Benchmark bitwise-bench: RUNNING...
benchmarking 8-queens
time                 683.4 ms   (681.5 ms .. 685.0 ms)
                     1.000 R²   (1.000 R² .. 1.000 R²)
mean                 678.6 ms   (674.1 ms .. 680.4 ms)
std dev              3.211 ms   (92.63 μs .. 3.978 ms)
variance introduced by outliers: 19% (moderately inflated)

Benchmark bitwise-bench: FINISH
```

* [plc] Support for `Natural` numbers in the default universe, backed by `Integer`. (#6346)

Co-authored-by: Nikolaos Bezirgiannis <bezirg@users.noreply.github.com>

* nothunks ^>= 0.2 (#6349)

* Make NumBytesCostedAsNumWords use Integer instead of Int (#6350)

The `NumBytesCostedAsNumWords` wrapper contained an `Int`, but this changes it to `Integer` for consistency with the other wrappers.  This change also affects the type of `Bitwise.replicateByte`.

* [Benchmark] Reduce the number of benchmarks (#6328)

* [Test] Improve distribution of generated integers (#6315)

This improves distribution of generated integers, so that we more often hit important edge cases such as `2 ^ 16`, `2 ^ 32 - 1`, `2 ^ 32`, `2 ^ 64` etc.

* [Plinth] [Builtins] Add a general 'mkNil' (#6347)

This replaces the `mkNilInteger`, `mkNilData` etc boilerplate with a single `mkNil` function at the expense of moving the boilerplate to the compiler code.

* [Refactoring] Use 'KnownBuiltinTypeIn' instead of 'HasConstant' consistently (#6353)

* Restore auto generation of compiler option table (#6373)

* Add the bitwise builtins to the metatheory (#6368)

* Initial metatheory for rest of bitwise builtins

* Separate lists of expected failures for evaluation tests and budget tests

* Remove temporary test data

* Fix memory usage for lists in Agda

* Forgot about haskell-steppable-conformance

* Remove suprious s

* Restore CI checks for doc site code (#6376)

* andByteString conformance cases (#6356)

* andByteString conformance cases

* Move each case to its own directory

* Update goldens for merge

* Conformance cases for complementByteString (#6359)

* Conformance for orByteString (#6357)

* Conformance cases for readBit (#6360)

* Conformance for shiftByteString (#6363)

* Conformance for findFirstSetBit (#6366)

* Conformance for xorByteString (#6358)

* Conformance for countSetBits (#6365)

---------

Signed-off-by: Ana Pantilie <ana.pantilie95@gmail.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Yura Lazarev <Unisay@users.noreply.github.com>
Co-authored-by: Ana Pantilie <45069775+ana-pantilie@users.noreply.github.com>
Co-authored-by: Nikolaos Bezirgiannis <329939+bezirg@users.noreply.github.com>
Co-authored-by: Nikolaos Bezirgiannis <bezirg@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Kenneth MacKenzie <kwxm@inf.ed.ac.uk>
Co-authored-by: Ziyang Liu <unsafeFixIO@gmail.com>
Co-authored-by: effectfully <effectfully@gmail.com>
Co-authored-by: Yura Lazarev <1009751+Unisay@users.noreply.github.com>
Co-authored-by: zeme-wana <15709674+zeme-wana@users.noreply.github.com>
Co-authored-by: Yura Lazaryev <Yuriy.Lazaryev@iohk.io>
Co-authored-by: Joseph Fajen <104791413+joseph-fajen@users.noreply.github.com>
Co-authored-by: ianhanssoniohk <ian.hansson@iohk.io>
Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>
Co-authored-by: Koz Ross <koz.ross@retro-freedom.nz>
Co-authored-by: Samuel Leathers <samuel.leathers@iohk.io>
Co-authored-by: Vladimir Kalnitsky <klntsky@gmail.com>
Co-authored-by: Erik de Castro Lopo <erikd@mega-nerd.com>
Co-authored-by: zeme <lorenzo.calegari@iohk.io>
Co-authored-by: Jamie Bertram <jamie.bertram@tweag.io>
Co-authored-by: omahs <73983677+omahs@users.noreply.github.com>
Co-authored-by: Romain Soulat <117812549+RSoulatIOHK@users.noreply.github.com>
effectfully pushed a commit that referenced this pull request Aug 6, 2024
* Rename semantics variants

* Change some names

* Get uplc to use correct cost model for semvar

* Dumping cost models

* Dumping cost models

* Tidy up exports and tests

* Move a function

* More updates

* Fix some typos

* Update models.R

* Add updated cost models

* Add updated cost models

* Update test results

* Remove obsolete entries from V3.ParamName

* Fix cost model interface test

* Fix (sort of) plutus-ledger-api tests

* Various small fixes

* Forgot to update parameters

* Add changelog entries

* Fix the changelog entries

* Address PR review comments

* Add costs for new builtins to V1 and V2 cost model files

* Fix some dependencies in plutus-benchmark

* Fix partial reversion of #6086 caused by merge

* Remove old cost model files

* Update/rename benchmark CSV files
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Costing Anything relating to costs, fees, gas, etc. Internal
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants