IntersectMBO / plutus

The Plutus language implementation and tools
Apache License 2.0
1.55k stars 466 forks source link

V3 script size increased in 1.30 #6242

Closed Unisay closed 5 days ago

Unisay commented 1 week ago

@mgmeier :

So this snippet is now the scaffolding for our V3 benchmarking scripts (validtor, spending script) - we only need the redeemer

mkValidator :: BuiltinData -> BuiltinUnit
mkValidator arg =
  [...]
  where
    PlutusV3.ScriptContext _txInfo (PlutusV3.Redeemer redeemer) _scriptInfo
      = PlutusV3.unsafeFromBuiltinData arg

Now, when submitting transactions as opposed to before CIP-69, for the same script, the tx size increases from 968 bytes to 3401 bytes, which is a size increase by ~350%.

Add: in our benchmarking setup, for the HashOntoG2AndAdd benchmark, this correlates with a tx fee increase by ~21%. (edited)

This task is to investigate such a size increase and conclude if this is expected and justified or if something fishy is going on.

effectfully commented 1 week ago

This seems to be expected behavior, see this comment.

Unisay commented 5 days ago

Here is the Spec which shows: