[webkit-dev] JavaScriptCore slowdown
Rodney Dowdall
rdowdall at cranksoftware.com
Sun Jun 28 07:27:31 PDT 2015
So I ran the browser bench samples and the 184845 performed pretty well
there. I couldn't run it with the 145828 version as it crashed in
MarkBlock.isLive() while running the test.
I then remembered that we compile our port with -Os instead of -O3. I
figured this may have an impact on the inlining of code, so I recompiled
our port with -O3 and the improvement on the SunSpider tests were
dramatic. It went from an overall score of 511 to 306. So I think what
I was seeing was a result of the -Os option.
The only other question I have is if there is some sort of throttle on
the JavaScript callbacks. The reason I ask is because no matter what I
do, the following page:
http://bubblemark.com/dhtml.htm
I only get 60 fps. For this page the "fps" is a bit of misnomer because
they are just measuring the number of times they get a call in to their
JavaScript code. It doesn't seem to matter how many balls I draw on the
screen, I always get 60 fps .
Thanks,
Rodney
On 06/24/2015 05:56 PM, Filip Pizlo wrote:
> Couple of thoughts:
>
> 1) That’s unexpected. You should file a bug on bugs.webkit.org
> <http://bugs.webkit.org>.
>
> 2) SunSpider isn’t the best way to measure performance anymore. Try
> one of the tests on http://browserbench.org instead, they are more
> modern and we tend to use those instead of SunSpider these days.
>
> -Filip
>
>
>> On Jun 24, 2015, at 2:10 PM, Rodney Dowdall
>> <rdowdall at cranksoftware.com <mailto:rdowdall at cranksoftware.com>> wrote:
>>
>> Hello
>>
>> I have two ports of WebKit. The first is based off of revision
>> 145828 and the second is based off of 184845. I have compiled these
>> ports for Linux x86 32 bit. I would like to know why the port based
>> on revision 145828 is faster at running the JavaScriptCore tests. I
>> have the DFG JIT enabled for both, and I do not have the FTL JIT
>> turned on (obviously because it is not supported for 32 bit builds).
>> I was wondering if maybe I need to enable another setting the 184845
>> revision, but I think I have turned on all of the JavaScriptCore
>> enablements that I can. I can post these if it makes sense for me to
>> do so. Here are the numbers that I am getting from the two builds.
>> I am just wondering if this is what I should expect.
>>
>> 184845 Webkit
>>
>> Total: 522.9ms +/- 4.3%
>>
>> 3d: 115.8ms +/- 10.2%
>> cube: 57.1ms +/- 13.8%
>> morph: 26.5ms +/- 10.2%
>> raytrace: 32.2ms +/- 4.5%
>>
>> access: 45.3ms +/- 7.7%
>> binary-trees: 6.0 ms +/- 7.9%
>> fannkuch: 17.0 ms +/- 10.5%
>> nbody: 16.9 ms +/- 8.8%
>> nsieve: 5.4 ms +/- 9.3%
>>
>> bitops: 17.2 ms +/- 12.8%
>> 3bits-bits-in-byte: 3.6 ms +/- 31.3%
>> bits-in-byte: 4.4 ms +/- 15.7%
>> bitwise-and: 3.5 ms +/- 14.4%
>> nsieve-bits: 5.7 ms +/- 8.5%
>>
>> controlflow: 6.2 ms +/- 4.9%
>> recursive: 6.3 ms +/- 4.9%
>>
>> crypto: 57.9 ms +/- 4.8%
>> aes: 20.6 ms +/- 5.2%
>> md5: 23.5 ms +/- 4.8%
>> sha1: 13.8 ms +/- 5.3%
>>
>> date: 61.9 ms +/- 3.5%
>> format-tofte: 29.6 ms +/- 3.3%
>> format-xparb: 32.3 ms +/- 3.9%
>>
>> math: 33.4 ms +/- 5.1%
>> cordic: 6.4 ms +/- 14.1%
>> parial-sums: 22.3 ms +/- 4.5%
>> spectral-norm: 4.7 ms +/- 10.3%
>>
>> regexp: 12.2 ms +/- 3.7%
>> dna: 12.2 ms +/- 3.7%
>>
>> string: 173.0 ms +/- 2.2%
>> base64: 13.1 ms +/- 4.8%
>> fasta: 32.6 ms +/- 3.3%
>> tagcloud: 32.5 ms +/- 3.3%
>> unpack-code: 76.3 ms +/- 2.3%
>> validate-input 18.5 ms +/- 2.0%
>>
>>
>> 145828 WebKit
>> Total: 377.0 ms +/- 1.1%
>>
>> 3d: 56.2 ms +/- 3.1%
>> cube: 20.7 ms +/- 6.7%
>> morph: 15.8 ms +/- 2.9%
>> raytrace: 19.7 ms +/- 2.4%
>>
>> access: 26.3 ms +/- 2.9%
>> binary-trees: 2.1 ms +/- 10.8%
>> fannkuch: 11.2 ms +/- 5.9%
>> nbody: 8.3 ms +/- 4.2%
>> nsieve 4.7 ms +/- 14.4%
>>
>> bitops: 19.3 ms +/- 4.6%
>> 3bits-bits-in-byte: 2.1 ms +/- 10.8%
>> bits-in-byte: 11.2 ms +/- 14.6%
>> bitwise-and: 5.1 ms +/- 4.4%
>> nsieve-bits: 8.1 ms +/- 2.8%
>>
>> controlflow: 3.2 ms +/- 9.4%
>> recursive: 3.2 ms +/- 9.4%
>>
>> crypto: 31.2 ms +/- 3.4%
>> aes: 14.6 ms +/- 7.4%
>> md5: 9.5 ms +/- 4.0%
>> sha1: 7.1 ms +/- 3.2%
>>
>> date: 64.8 ms +/- 3.7%
>> format-tofte: 29.4 ms +/- 5.0%
>> format-xparb: 35.4 ms +/- 3.2%
>>
>> math: 39.8 ms +/- 3.8%
>> cordic: 5.8 ms +/- 5.2%
>> partial-sums: 30.2 ms +/- 4.7%
>> spectral-norm: 3.8 ms +/- 14.8%
>>
>> regexp: 11.6 ms +/- 5.2%
>> dns: 11.6 ms +/- 5.2%
>>
>> string: 124.6 ms +/- 1.8%
>> base64: 12.6 ms +/- 6.7%
>> fasta: 22.3 ms +/- 6.4%
>> tagcloud: 24.8 ms +/- 4.0%
>> unpack-code: 49.3 ms +/- 2.75
>> validate-input: 15.6 ms +/- 4.4%
>>
>> Thanks,
>> Rodney
>>
>> _______________________________________________
>> webkit-dev mailing list
>> webkit-dev at lists.webkit.org <mailto:webkit-dev at lists.webkit.org>
>> https://lists.webkit.org/mailman/listinfo/webkit-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-dev/attachments/20150628/09c05ffa/attachment.html>
More information about the webkit-dev
mailing list