Open Bug 1751728 Opened 3 years ago Updated 1 year ago

Make Vector asserts into release asserts

Categories

(Core :: MFBT, task)

task

Tracking

()

People

(Reporter: mccr8, Unassigned)

References

Details

Attachments

(1 file)

It would be nice if we could make at least the bounds checks for the MFBT Vectors into release asserts, like we have for nsTArray.

Summary: Make Vector asserts into release assert → Make Vector asserts into release asserts
See Also: → 1751699

I'm a little concerned that this will negatively impact JS and wasm compile times, but I guess we'll see.

That is something to keep in mind, but release assert bounds checks were added to nsTArrays without any noticeable performance impact.

(In reply to Andrew McCreight [:mccr8] from comment #2)

That is something to keep in mind, but release assert bounds checks were added to nsTArrays without any noticeable performance impact.

JS engine code might be more performance-sensitive (on average) than other code in Gecko though...

SegmentedVector and Buffer also have the same kind of bounds check asserts.

Assignee: nobody → continuation

What benchmarks should I check before trying to land this?

Flags: needinfo?(lhansen)
Flags: needinfo?(jdemooij)

(In reply to Andrew McCreight [:mccr8] from comment #5)

What benchmarks should I check before trying to land this?

The ones in CI that come to mind are:

  • speedometer
  • jsshell-bench-*-sm
  • matrix-react-bench
  • sunspider
  • wasm-godot-*

It would be nice to have a before vs after Perfherder URL.

Flags: needinfo?(jdemooij)

We do a lot of vector operations during compilation in general. Wasm baseline compilation time will be interesting for sure, I forget whether the wasm-godot-* benchmarks display that or if baseline compilation time is reported separately. If need be I can also apply the patch locally and generate some timings on misc relevant hardware here.

Flags: needinfo?(lhansen)
Assignee: continuation → nobody
See Also: → 1845436
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: