-
Notifications
You must be signed in to change notification settings - Fork 2.7k
[contracts] Remove stack height limiter wasm instrumentation #12957
Conversation
/cmd queue -c bench-bot $ pallet dev pallet_contracts |
@agryaznov https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2168849 was started for your command Comment |
@agryaznov Command |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 (code-wise; don't know enough to reason about business logic)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I resolved the merge conflict by choosing the upstream weight file. This didn't change the weight because the stack height limiter was already disabled (set to 0
). This PR merely removed the inactive code.
bot merge |
Is this correct? AFAIK we don't have any deterministic stack metering for runtimes, which should result in having indeterminism for this here as well? |
We do: substrate/client/executor/wasmtime/src/runtime.rs Lines 702 to 704 in 9443052
|
substrate/client/executor/src/wasm_runtime.rs Line 325 in 9443052
We don't use this for the runtimes right now :P And there is also this issue which we probably need to fix before: #9298 |
…ech#12957) * Remove stack height limiter from uploaded wasm * fix benchmarks * ".git/.scripts/bench-bot.sh" pallet dev pallet_contracts Co-authored-by: command-bot <> Co-authored-by: Alexander Theißen <[email protected]>
…ech#12957) * Remove stack height limiter from uploaded wasm * fix benchmarks * ".git/.scripts/bench-bot.sh" pallet dev pallet_contracts Co-authored-by: command-bot <> Co-authored-by: Alexander Theißen <[email protected]>
We don't really need a stack limiter, because:
hence there is no indeterminism chance caused by different stack heights, which was the case with client-sided engines;
in our case it is handled in wasmi;
hence getting rid of it we're saving the runtime resources (and therefore
upload_code
will take less weight);