Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Made a couple small tweaks to the VM to improve performance. Numbers running it on an M1 MacBook Pro:
main
This PR
… which makes it faster than the Go implementation on the same machine:
How did we get here?
current_frame
rather than computing it each time, avoiding many bounds checks on both integer addition and array indexing. This was the single largest contributor to performance improvement.One other change that didn't seem to do much for performance but that I left in anyway was to replace a few
case self
with plain-old type inheritance.