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

fix: restore instruction count functionality #3081

Merged
merged 4 commits into from
Oct 15, 2024
Merged

Conversation

joonazan
Copy link
Contributor

Brings back instruction counts that show that bytecode has changed rather than VM performance. They were previously disabled because vm2 didn't support tracers.

@joonazan joonazan requested review from slowli and koloz193 October 11, 2024 18:52
koloz193
koloz193 previously approved these changes Oct 11, 2024
@joonazan
Copy link
Contributor Author

heap_read_write is still N/A, which seems wrong.

Copy link
Contributor

Detected VM performance changes

Benchmark name change in estimated runtime change in number of opcodes executed
access_memory +0.1% +4747939 (+inf%)
heap_read_write N/A +4252541 (+inf%)
deploy_simple_contract +0.6% +16872 (+inf%)
event_spam +0.3% +2670258 (+inf%)
finish_eventful_frames +0.7% +786848 (+inf%)
slot_hash_collision +0.1% +4748952 (+inf%)
write_and_decode +0.1% +4748952 (+inf%)
decode_shl_sub +0.1% +4748033 (+inf%)
call_far +0.1% +320208 (+inf%)
finish_eventful_frames_legacy -3.6% N/A
decode_shl_sub_legacy -6.3% N/A
call_far_legacy -2.9% N/A
write_and_decode_legacy -6.0% N/A
access_memory_legacy -5.9% N/A
slot_hash_collision_legacy -6.0% N/A
event_spam_legacy -5.9% N/A

Changes in number of opcodes executed indicate that the gas price of the benchmark has changed, which causes it run out of gas at a different time. Or that it is behaving completely differently.

@joonazan joonazan added this pull request to the merge queue Oct 15, 2024
Merged via the queue into main with commit 6159f75 Oct 15, 2024
32 checks passed
@joonazan joonazan deleted the fix-opcode-count branch October 15, 2024 12:53
github-merge-queue bot pushed a commit that referenced this pull request Oct 23, 2024
🤖 I have created a release *beep* *boop*
---


##
[25.0.0](core-v24.29.0...core-v25.0.0)
(2024-10-23)


### ⚠ BREAKING CHANGES

* **contracts:** integrate protocol defense changes
([#2737](#2737))

### Features

* Add CoinMarketCap external API
([#2971](#2971))
([c1cb30e](c1cb30e))
* **api:** Implement eth_maxPriorityFeePerGas
([#3135](#3135))
([35e84cc](35e84cc))
* **api:** Make acceptable values cache lag configurable
([#3028](#3028))
([6747529](6747529))
* **contracts:** integrate protocol defense changes
([#2737](#2737))
([c60a348](c60a348))
* **external-node:** save protocol version before opening a batch
([#3136](#3136))
([d6de4f4](d6de4f4))
* Prover e2e test
([#2975](#2975))
([0edd796](0edd796))
* **prover:** Add min_provers and dry_run features. Improve metrics and
test. ([#3129](#3129))
([7c28964](7c28964))
* **tee_verifier:** speedup SQL query for new jobs
([#3133](#3133))
([30ceee8](30ceee8))
* vm2 tracers can access storage
([#3114](#3114))
([e466b52](e466b52))
* **vm:** Return compressed bytecodes from `push_transaction()`
([#3126](#3126))
([37f209f](37f209f))


### Bug Fixes

* **call_tracer:** Flat call tracer fixes for blocks
([#3095](#3095))
([30ddb29](30ddb29))
* **consensus:** preventing config update reverts
([#3148](#3148))
([caee55f](caee55f))
* **en:** Return `SyncState` health check
([#3142](#3142))
([abeee81](abeee81))
* **external-node:** delete empty unsealed batch on EN initialization
([#3125](#3125))
([5d5214b](5d5214b))
* Fix counter metric type to be Counter.
([#3153](#3153))
([08a3fe7](08a3fe7))
* **mempool:** minor mempool improvements
([#3113](#3113))
([cd16083](cd16083))
* **prover:** Run for zero queue to allow scaling down to 0
([#3115](#3115))
([bbe1919](bbe1919))
* restore instruction count functionality
([#3081](#3081))
([6159f75](6159f75))
* **state-keeper:** save call trace for upgrade txs
([#3132](#3132))
([e1c363f](e1c363f))
* **tee_prover:** add zstd compression
([#3144](#3144))
([7241ae1](7241ae1))
* **tee_verifier:** correctly initialize storage for re-execution
([#3017](#3017))
([9d88373](9d88373))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Co-authored-by: zksync-era-bot <zksync-era-bot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants