Closed Bug 1587738 Opened 4 months ago Closed 3 months ago

[BinAST] Add a cache for MultiLookupHuffmanTable

Categories

(Core :: JavaScript Engine, task, P1)

task

Tracking

()

RESOLVED FIXED
mozilla71
Tracking Status
firefox71 --- fixed

People

(Reporter: Yoric, Assigned: Yoric)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

In each MultiLookupHuffmanTable, we know that the values used most often are the ones with the shortest paths. We could add a cache of these values in MultiLookupHuffmanTable to cut on the time spent resolving these most commonly used values.

Assignee: nobody → dteller
Priority: -- → P1

By definition of Huffman encoding, the shortest keys are reserved for the most common values.
This patch changes how we store these shortest keys in a MultiLookupHuffmanTable to
improve lookup speed: instead of storing short keys in a subtable by extending them,
we store them in a SingleLookupHuffmanTable.

Pushed by dteller@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/ded00ff91429
Adding a fastpath for the most common prefixes of a `MultiLookupHuffmanTable`;r=arai

Sorry, typo in the other bug. Should be able to reland.

Flags: needinfo?(dteller)
Pushed by dteller@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/58fc2e7b4956
Adding a fastpath for the most common prefixes of a `MultiLookupHuffmanTable`;r=arai
Status: NEW → RESOLVED
Closed: 3 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla71
You need to log in before you can comment on or make changes to this bug.