GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GeezerVison is showing github.com — bpo-46841: Improve the failure stats for `COMPARE_OP` by brandtbucher · Pull Request #31663 · python/cpython Conversation
|
| Kind | Count | Ratio |
|---|---|---|
| unquickened | 7348739 | 0.4% |
| specialization.deferred | 359371048 | 21.7% |
| specialization.deopt | 15730 | 0.0% |
| hit | 1289210975 | 77.8% |
| miss | 943057 | 0.1% |
| Count | Ratio | |
|---|---|---|
| Success | 289083 | 4.8% |
| Failure | 5723386 | 95.2% |
| Failure kind | Count | Ratio |
|---|---|---|
| extended arg | 2473174 | 43.2% |
| not followed by cond jump | 1258612 | 22.0% |
| float long | 671682 | 11.7% |
| set | 579241 | 10.1% |
| different types | 165539 | 2.9% |
| bool | 137038 | 2.4% |
| tuple | 119632 | 2.1% |
| other | 115566 | 2.0% |
| big int | 95547 | 1.7% |
| bytes | 46481 | 0.8% |
| baseobject | 37335 | 0.7% |
| list | 22634 | 0.4% |
| string | 704 | 0.0% |
| long float | 201 | 0.0% |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Looks good.
We could also consider packing extended opargs into the top 13 bits of cache->mask when it fits there.
Edit: I suppose it would be difficult to do next_instr++ the correct number of times in ceval. Store how far to jump ahead for that branch as well?
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
@markshannon is already brainstorming ideas for how to tackle the general problem of longer jumps in faster-cpython/ideas#297 and faster-cpython/ideas#301. We should probably wait to see how that pans out first before adding a bunch of new logic to the different |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
Feel free to add suggestions to faster-cpython/ideas#301. faster-cpython/ideas#297 is more about giving the bytecode compiler freedom to lay out basic blocks. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
There was an error while loading. Please reload this page.