Closed Bug 663074 Opened 13 years ago Closed 13 years ago

TI: avoid calling js_Array for 'new Array()' in v8-deltablue

Categories

(Core :: JavaScript Engine, defect)

defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 677006

People

(Reporter: luke, Unassigned)

References

(Blocks 1 open bug)

Details

When running deltablue (hacked to not be rate-based, but run a similar number of iterations as a non-valgrind run) callgrind shows 6.25% of our instructions under js_Array.  Doing s/new Array()/[]/ in the benchmark shows a 6% improvement in the v8 score.  Type information (or even just plain JM ic tricks) should let us make this optimization pretty easily.

Unfortunately, even with this predicted speedup, d8 w/ crankshaft is still 67% faster.  According to callgrind, we actually execute 36% fewer insns and make 2x fewer data references; however, we make up for it by having 80 TIMES more simulated L1 cache misses and 13 TIMES more simulated last-level cache misses.  42% of this is under GC, 34% under CreateThis, and 14% under NewDenseEmptyArray, so this will need GC/obj-shrink work.
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.