Closed Bug 1830155 Opened 3 years ago Closed 3 years ago

Optimize the generalized casting instructions

Categories

(Core :: JavaScript: WebAssembly, task)

task

Tracking

()

RESOLVED FIXED
115 Branch
Tracking Status
firefox115 --- fixed

People

(Reporter: bvisness, Assigned: bvisness)

References

Details

Attachments

(1 file)

The generalized casting instructions implemented in 1799713 perform several unnecessary checks. These should be optimized out when the source type information indicates it is possible.

Assignee: nobody → bvisness
Blocks: wasm-gc

The version of the patch I have shows good results on barista3, -O3,
with worthwhile speedups and a particularly impressive 4.9% reduction
in instruction count; in fact more because those insn counts include
a circa 4.2 billion insn cost for compilation:

before
   6,727,808,665      cycles         #    4.177 GHz                       
  18,200,869,300      instructions   #    2.71  insn per cycle
  (top 3 of 50 runs):
  First frame:           296
  First frame:           297
  First frame:           297
  Frame average:           0.647
  Frame average:           0.650
  Frame average:           0.652

after
   6,653,682,636      cycles         #    4.173 GHz                       
  17,299,446,955      instructions   #    2.60  insn per cycle
  (top 3 of 50 runs):
  First frame:           290  # 2.0% reduction
  First frame:           290
  First frame:           290
  Frame average:           0.637  # 1.5% reduction
  Frame average:           0.638
  Frame average:           0.638
Attachment #9331841 - Attachment description: WIP: Bug 1830155: Optimize the new wasm GC cast instructions. → Bug 1830155: Optimize the new wasm GC cast instructions. r=rhunt
Pushed by bvisness@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/76344af6ea62 Optimize the new wasm GC cast instructions. r=rhunt
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 115 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: