On 10/17/2012 6:55 PM, Dave Mandelin wrote:
Following the recent discussion about PGO, I really wanted to understand what benefits
PGO gives Firefox on Windows, if any--I was skeptical. Rafael (IIRC) posted some Talos
numbers, but I didn't know how to interpret them. So I decided to try a few simple
experiments to try to falsify the hypothesis that "PGO has user-perceivable
benefits".
Experimental setup: Windows builds from
http://hg.mozilla.org/mozilla-central/rev/5f4a6a474455 on a Windows 7 Xeon. I
took opt and pgo builds from the tbpl links.
Experiment 1: cold startup time
I used a camera to measure time from pressing enter on a
a command line until the Fx window was completely shown.
results:
opt: 3.025 seconds
pgo: 1.841
- A clear win for PGO. I'm told that there is a startup
time optimization that orders omni.ja that only runs
in PGO builds. So it's not necessarily from the PGO
itself, but at least it means the current PGO builds
really are better.
That's omni.ja funkyness with startup-cache, etc. Glad to see it still
works. If the compiler was doing anything startup-smart to the binary,
your fast system could probably startup in ~1s. Compilers do not care
about startup(though there is interest among gcc people), so we have to
do https://bugzilla.mozilla.org/show_bug.cgi?id=662397 & something
similar on every platform
Experiment 2: JS benchmarks
I ran SunSpider and V8. I would have run Kraken too, but
it takes longer to run and I already had significant
results by then. I did 1-2 runs. Below I show the average,
rounded off to not show noise digits.
results:
opt pgo
SunSpider 250 200 (seconds)
V8 8900 9400 ("score")
- Another clear win for PGO.
(Side note: I've recorded startup times for myself, with my normal profile, of
~30 seconds. I assumed that was just normal, so today I looked on Telemetry and
saw that only 5-8% of startup times are that long. (I wish I knew what % of
cold startups that is.) Today's results were with a clean profile, so it seems
like my normal profile must be busting my startups (and others') badly. It
would be really nice to make startup time independent of profile.)
you can measure what goes wrong in your profile with work going-on in
https://bugzilla.mozilla.org/show_bug.cgi?id=799638
That's really great that you have such a repeatable+slow profile. I
never had the pleasure of having a fast machine that can start firefox
this slowly.
Taras
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform