Closed Bug 517535 Opened 15 years ago Closed 11 years ago

Wow, the Oracle is bad!

Categories

(Core :: JavaScript Engine, defect)

x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: dvander, Unassigned)

Details

Attachments

(4 files)

The Oracle is a sight for sore eyes. It's non-deterministic, it can prevent nested trees from building (see bug 459301), and as Luke pointed out this morning, not even thread safe.

But what's really annoying is that it actually improves SunSpider in most cases, so we've never had lots of motivation to sit down and write something better.

I ran some tests with parts of the Oracle disabled to see how SunSpider is affected.
Thanks for doing this. Well, at least if it gives only a 5% speedup then if we need to get rid of it it will only cost that much. I see that disabling the oracle speeds up certain benchmarks, maybe by 1% total, so we know we could win at least 1% with a magically better algorithm.

What I would like to see is a limit study that shows the maximum performance we get on selected programs by making "perfect" demotion decisions. I'm not sure which programs to select, but bits-in-byte, bitwise-and, cube, aes, tofte, and partial-sums looks like an interesting set.
What does disabling do to v8 numbers?
(In reply to comment #0)
> 
> The Oracle is a sight for sore eyes.

A "sight for sore eyes" is something good, something that you are happy to see.  I think you meant the opposite.  This confused me for a minute.

Also, attachments 2 and 3 are identical, presumably you accidentally attached one of them twice.

(I'll go back into my hole now.)
Yup, you're right. I was looking for some other idiom but I forget what. 

Will test v8 numbers.
v8 with 10 runs. First column is with the Oracle, second column is without.



TEST              COMPARISON            FROM                 TO             DETAILS

=============================================================================

** TOTAL **:      -                 14091.0ms +/- 1.1%   13959.4ms +/- 1.0% 

=============================================================================

  v8:             -                 14091.0ms +/- 1.1%   13959.4ms +/- 1.0% 
    crypto:       1.070x as fast      695.2ms +/- 2.0%     649.9ms +/- 0.7%     significant
    deltablue:    -                  7587.1ms +/- 2.1%    7489.8ms +/- 1.8% 
    earley-boyer: *1.012x as slow*   1839.2ms +/- 0.3%    1861.6ms +/- 1.3%     significant
    raytrace:     *1.029x as slow*   1147.2ms +/- 1.0%    1180.1ms +/- 0.7%     significant
    regexp:       1.012x as fast      946.0ms +/- 0.2%     934.9ms +/- 0.1%     significant
    richards:     1.053x as fast      777.9ms +/- 0.3%     738.7ms +/- 0.3%     significant
    splay:        ??                 1098.4ms +/- 0.5%    1104.4ms +/- 0.6%     not conclusive: might be *1.005x as slow*
Tracer was removed
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: