IonMonkey: Enable native dense int32 when ic isn't monitored

RESOLVED FIXED in mozilla24

Status

()

Core
JavaScript Engine
RESOLVED FIXED
4 years ago
4 years ago

People

(Reporter: h4writer, Unassigned)

Tracking

(Blocks: 1 bug)

unspecified
mozilla24
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Reporter)

Description

4 years ago
Created attachment 747989 [details] [diff] [review]
Patch

In bug 870627 we have slow performance, because of an ic not getting added in a cache that isn't monitored.
(Reporter)

Comment 1

4 years ago
Comment on attachment 747989 [details] [diff] [review]
Patch

I think attachDenseElement doesn't depend on the value of cache.monitoredResult. So that this is correct...
Attachment #747989 - Attachment is patch: true
Attachment #747989 - Flags: review?(jdemooij)
(Reporter)

Comment 2

4 years ago
Brings the performance down from 50s to 15s of linpack. It's a start. (v8 performance is 0.8s)
(Looking at the performance of v8, I assume we don't want a cache here, but somehow we should be able to predict this is actually monomorphic during compilation.)
Blocks: 870627
Comment on attachment 747989 [details] [diff] [review]
Patch

Review of attachment 747989 [details] [diff] [review]:
-----------------------------------------------------------------

Looks good.

(In reply to Hannes Verschore [:h4writer] from comment #2)
> (Looking at the performance of v8, I assume we don't want a cache here, but
> somehow we should be able to predict this is actually monomorphic during
> compilation.)

We should be able to use Baseline IC's here: if the IC only saw dense accesses, Ion should inline the dense path directly.
Attachment #747989 - Flags: review?(jdemooij) → review+
(Reporter)

Comment 4

4 years ago
https://hg.mozilla.org/integration/mozilla-inbound/rev/bf0bcf4ecf28

I'll look if I can add this optimization to look at Baseline IC's for dense accesses. Good way to look at Baseline code again ;).
This was a nice 3-4% win on Dromaeo-CSS, for what it's worth.  Thank you!
https://hg.mozilla.org/mozilla-central/rev/bf0bcf4ecf28
Status: NEW → RESOLVED
Last Resolved: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla24
(Reporter)

Comment 7

4 years ago
(In reply to Boris Zbarsky (:bz) from comment #5)
> This was a nice 3-4% win on Dromaeo-CSS, for what it's worth.  Thank you!

Cool. I hope the next patches for the GWT benchmarks also improve Dramaeo-css :D
You need to log in before you can comment on or make changes to this bug.