-
-
Notifications
You must be signed in to change notification settings - Fork 33
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
Runtime doesn't need to know properties name #90
Comments
giann
added a commit
that referenced
this issue
Jun 12, 2024
closes #90 We never needed to known the property name at runtime, this is an artifact of the 'Crafting Interpreters' heritage. This results in a performance boost of about 40% on some benches: Before: → hyperfine --warmup 10 'buzz tests/bench/001-btree.buzz 15 Benchmark 1: buzz tests/bench/001-btree.buzz 15 Time (mean ± σ): 1.221 s ± 0.022 s [User: 1.028 s, System: 0.174 s] Range (min … max): 1.195 s … 1.271 s 10 runs After: → hyperfine --warmup 10 'buzz tests/bench/001-btree.buzz 15 Benchmark 1: buzz tests/bench/001-btree.buzz 15 Time (mean ± σ): 795.5 ms ± 7.7 ms [User: 725.1 ms, System: 62.9 ms] Range (min … max): 785.3 ms … 811.7 ms 10 runs
giann
added a commit
that referenced
this issue
Jun 12, 2024
closes #90 We never needed to known the property name at runtime, this is an artifact of the 'Crafting Interpreters' heritage. This results in a performance boost of about 40% on some benches: Before: → hyperfine --warmup 10 'buzz tests/bench/001-btree.buzz 15 Benchmark 1: buzz tests/bench/001-btree.buzz 15 Time (mean ± σ): 1.221 s ± 0.022 s [User: 1.028 s, System: 0.174 s] Range (min … max): 1.195 s … 1.271 s 10 runs After: → hyperfine --warmup 10 'buzz tests/bench/001-btree.buzz 15 Benchmark 1: buzz tests/bench/001-btree.buzz 15 Time (mean ± σ): 795.5 ms ± 7.7 ms [User: 725.1 ms, System: 62.9 ms] Range (min … max): 785.3 ms … 811.7 ms 10 runs
giann
added a commit
that referenced
this issue
Jun 12, 2024
closes #90 We never needed to known the property name at runtime, this is an artifact of the 'Crafting Interpreters' heritage. This results in a performance boost of about 40% on some benches: Before: → hyperfine --warmup 10 'buzz tests/bench/001-btree.buzz 15 Benchmark 1: buzz tests/bench/001-btree.buzz 15 Time (mean ± σ): 1.221 s ± 0.022 s [User: 1.028 s, System: 0.174 s] Range (min … max): 1.195 s … 1.271 s 10 runs After: → hyperfine --warmup 10 'buzz tests/bench/001-btree.buzz 15 Benchmark 1: buzz tests/bench/001-btree.buzz 15 Time (mean ± σ): 795.5 ms ± 7.7 ms [User: 725.1 ms, System: 62.9 ms] Range (min … max): 785.3 ms … 811.7 ms 10 runs
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Field access doesn't need to rely on a name lookup at runtime. It could be an index generated at compile time juste like we do for locals.
The text was updated successfully, but these errors were encountered: