elliottt edited PR #4496 from trevor/x64-inst-size
to main
:
Experimenting with shrinking down the size of
Instr
for the x64 backend. The current state of this PR is that it shrinks the size ofInstr
to 40 bytes, but costs some compile performance as it puts every SyntheticAmode behind a box. This isn't really acceptable, so I'm going to investigate a new representation for SyntheticAmode that doesn't require 20 bytes.
<!--Please ensure that the following steps are all taken care of before submitting
the PR.
[ ] This has been discussed in issue #..., or if not, please tell us why
here.[ ] A short description of what this does, why it is needed; if the
description becomes long, the matter should probably be discussed in an issue
first.[ ] This PR contains test cases, if meaningful.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so. The list of
suggested reviewers on the right can help you.Please ensure all communication adheres to the code of conduct.
-->
elliottt updated PR #4496 from trevor/x64-inst-size
to main
.
elliottt updated PR #4496 from trevor/x64-inst-size
to main
.
elliottt updated PR #4496 from trevor/x64-inst-size
to main
.
elliottt updated PR #4496 from trevor/x64-inst-size
to main
.
elliottt updated PR #4496 from trevor/x64-inst-size
to main
.
elliottt edited PR #4496 from trevor/x64-inst-size
to main
:
Experimenting with shrinking down the size of
Instr
for the x64 backend. The current state of this PR is that it shrinks the size ofInstr
to 40 bytes by packing theSyntheticAmode
into 12 bytes instead of 20. There appears to be no change relative to the main branch in terms of compilation performance when running the spidermonkey benchmark:compilation :: cycles :: benchmarks/spidermonkey/benchmark.wasm Δ = 57577216.56 ± 40606058.89 (confidence = 99%) branch.so is 0.99x to 1.00x faster than main.so! main.so is 1.00x to 1.01x faster than branch.so! [10309078912 10526961950.50 10728893296] branch.so [10257691628 10469384733.94 10666653846] main.so compilation :: nanoseconds :: benchmarks/spidermonkey/benchmark.wasm Δ = 15991943.37 ± 11279098.93 (confidence = 99%) branch.so is 0.99x to 1.00x faster than main.so! main.so is 1.00x to 1.01x faster than branch.so! [2863534784 2924059356.84 2980149200] branch.so [2849263391 2908067413.47 2962864337] main.so
<!--
Please ensure that the following steps are all taken care of before submitting
the PR.
[ ] This has been discussed in issue #..., or if not, please tell us why
here.[ ] A short description of what this does, why it is needed; if the
description becomes long, the matter should probably be discussed in an issue
first.[ ] This PR contains test cases, if meaningful.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so. The list of
suggested reviewers on the right can help you.Please ensure all communication adheres to the code of conduct.
-->
bjorn3 submitted PR review.
bjorn3 created PR review comment:
These don't seem to be used. Could you remove them to avoid exposing that mem flags currently fit in a u8. They may not anymore in the future.
elliottt updated PR #4496 from trevor/x64-inst-size
to main
.
elliottt updated PR #4496 from trevor/x64-inst-size
to main
.
elliottt edited PR #4496 from trevor/x64-inst-size
to main
:
Experimenting with shrinking down the size of
Instr
for the x64 backend. The current state of this PR is that it shrinks the size ofInstr
to 40 bytes by packing theSyntheticAmode
into 12 bytes instead of 20. There appears to be very little change relative to the main branch in terms of compilation performance when running the spidermonkey benchmark:compilation :: cycles :: benchmarks/spidermonkey/benchmark.wasm Δ = 57577216.56 ± 40606058.89 (confidence = 99%) branch.so is 0.99x to 1.00x faster than main.so! main.so is 1.00x to 1.01x faster than branch.so! [10309078912 10526961950.50 10728893296] branch.so [10257691628 10469384733.94 10666653846] main.so compilation :: nanoseconds :: benchmarks/spidermonkey/benchmark.wasm Δ = 15991943.37 ± 11279098.93 (confidence = 99%) branch.so is 0.99x to 1.00x faster than main.so! main.so is 1.00x to 1.01x faster than branch.so! [2863534784 2924059356.84 2980149200] branch.so [2849263391 2908067413.47 2962864337] main.so
<!--
Please ensure that the following steps are all taken care of before submitting
the PR.
[ ] This has been discussed in issue #..., or if not, please tell us why
here.[ ] A short description of what this does, why it is needed; if the
description becomes long, the matter should probably be discussed in an issue
first.[ ] This PR contains test cases, if meaningful.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so. The list of
suggested reviewers on the right can help you.Please ensure all communication adheres to the code of conduct.
-->
elliottt updated PR #4496 from trevor/x64-inst-size
to main
.
elliottt updated PR #4496 from trevor/x64-inst-size
to main
.
elliottt closed without merge PR #4496.
Last updated: Dec 23 2024 at 12:05 UTC