RESOLVED FIXED 42856
Enable the jit on arm
https://bugs.webkit.org/show_bug.cgi?id=42856
Summary Enable the jit on arm
Riccardo Magliocchetti
Reported 2010-07-22 16:22:42 PDT
Created attachment 62357 [details] enable arm jit compilation The jit appears to work fine, compile and tested on debian sid armel. FYI, These are the results from sunspider-0.9 with GtkLauncher on qemu virtual machine with 128MB: ============================================ RESULTS (means and 95% confidence intervals) -------------------------------------------- Total: 30555.4ms +/- 0.7% -------------------------------------------- 3d: 6582.0ms +/- 4.3% cube: 2696.4ms +/- 7.8% morph: 1830.2ms +/- 5.9% raytrace: 2055.4ms +/- 2.8% access: 3339.4ms +/- 4.7% binary-trees: 289.4ms +/- 12.5% fannkuch: 341.2ms +/- 4.4% nbody: 2590.8ms +/- 5.2% nsieve: 118.0ms +/- 5.9% bitops: 956.6ms +/- 2.0% 3bit-bits-in-byte: 81.2ms +/- 1.3% bits-in-byte: 107.2ms +/- 1.0% bitwise-and: 86.4ms +/- 3.9% nsieve-bits: 681.8ms +/- 2.2% controlflow: 72.4ms +/- 3.6% recursive: 72.4ms +/- 3.6% crypto: 2289.8ms +/- 3.0% aes: 594.0ms +/- 5.0% md5: 804.8ms +/- 1.2% sha1: 891.0ms +/- 6.5% date: 2014.6ms +/- 1.6% format-tofte: 850.4ms +/- 2.2% format-xparb: 1164.2ms +/- 2.0% math: 9396.0ms +/- 2.8% cordic: 2426.4ms +/- 7.6% partial-sums: 5880.4ms +/- 2.3% spectral-norm: 1089.2ms +/- 3.7% regexp: 266.0ms +/- 3.4% dna: 266.0ms +/- 3.4% string: 5638.6ms +/- 1.5% base64: 691.4ms +/- 4.7% fasta: 1395.2ms +/- 3.8% tagcloud: 887.2ms +/- 0.8% unpack-code: 1605.2ms +/- 2.0% validate-input: 1059.6ms +/- 2.1%
Attachments
enable arm jit compilation (1.11 KB, patch)
2010-07-22 16:22 PDT, Riccardo Magliocchetti
riccardo.magliocchetti: review-
enable arm jit compilation v2 (1.20 KB, patch)
2010-07-23 05:30 PDT, Riccardo Magliocchetti
no flags
Riccardo Magliocchetti
Comment 1 2010-07-23 02:19:03 PDT
And these are the results on openmoko freerunner gta02, not a fair comparison since the webit version is older, 1.2.1 vs 1.3.3+git and i've used different browsers, midori vs gtklauncher. Said that the improvement is huge i'm pretty confident the arm jit helps. The numbers are on par with chromium (bit slower actually) on the same hardware and same os. See http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=589057 midori + libwebkit 1.2.1: ============================================ RESULTS (means and 95% confidence intervals) -------------------------------------------- Total: 53543.0ms +/- 1.3% -------------------------------------------- 3d: 13435.8ms +/- 1.2% cube: 2088.2ms +/- 2.0% morph: 8976.8ms +/- 1.7% raytrace: 2370.8ms +/- 0.8% access: 5891.8ms +/- 5.1% binary-trees: 356.0ms +/- 11.9% fannkuch: 2096.2ms +/- 12.1% nbody: 2597.6ms +/- 2.2% nsieve: 842.0ms +/- 0.2% bitops: 2918.4ms +/- 0.4% 3bit-bits-in-byte: 578.0ms +/- 2.0% bits-in-byte: 424.0ms +/- 0.4% bitwise-and: 415.2ms +/- 2.3% nsieve-bits: 1501.2ms +/- 0.6% controlflow: 520.8ms +/- 0.2% recursive: 520.8ms +/- 0.2% crypto: 2478.8ms +/- 0.4% aes: 763.0ms +/- 0.5% md5: 856.2ms +/- 1.0% sha1: 859.6ms +/- 0.1% date: 4053.2ms +/- 2.0% format-tofte: 1796.8ms +/- 0.4% format-xparb: 2256.4ms +/- 3.7% math: 12089.8ms +/- 2.4% cordic: 2014.8ms +/- 6.6% partial-sums: 8216.4ms +/- 3.9% spectral-norm: 1858.6ms +/- 0.1% regexp: 3336.2ms +/- 1.2% dna: 3336.2ms +/- 1.2% string: 8818.2ms +/- 0.3% base64: 597.4ms +/- 1.7% fasta: 1124.8ms +/- 0.2% tagcloud: 1757.6ms +/- 0.3% unpack-code: 3239.4ms +/- 1.0% validate-input: 2099.0ms +/- 0.3% GtkLauncher WebKit git master + arm jit ============================================ RESULTS (means and 95% confidence intervals) -------------------------------------------- Total: 31712.8ms +/- 0.5% -------------------------------------------- 3d: 5926.8ms +/- 1.2% cube: 2025.0ms +/- 1.4% morph: 1619.2ms +/- 2.9% raytrace: 2282.6ms +/- 2.4% access: 3267.0ms +/- 1.9% binary-trees: 196.8ms +/- 1.4% fannkuch: 330.2ms +/- 1.2% nbody: 2510.8ms +/- 1.7% nsieve: 229.2ms +/- 15.5% bitops: 850.8ms +/- 6.6% 3bit-bits-in-byte: 70.2ms +/- 3.2% bits-in-byte: 140.2ms +/- 38.3% bitwise-and: 93.2ms +/- 2.9% nsieve-bits: 547.2ms +/- 0.3% controlflow: 55.8ms +/- 4.0% recursive: 55.8ms +/- 4.0% crypto: 1414.2ms +/- 1.0% aes: 461.0ms +/- 3.4% md5: 513.0ms +/- 0.3% sha1: 440.2ms +/- 0.5% date: 3756.0ms +/- 1.5% format-tofte: 1420.2ms +/- 0.9% format-xparb: 2335.8ms +/- 2.2% math: 10277.8ms +/- 0.4% cordic: 1431.4ms +/- 3.1% partial-sums: 7924.4ms +/- 0.4% spectral-norm: 922.0ms +/- 5.2% regexp: 361.8ms +/- 1.0% dna: 361.8ms +/- 1.0% string: 5802.6ms +/- 0.3% base64: 338.0ms +/- 0.7% fasta: 854.6ms +/- 0.1% tagcloud: 1162.4ms +/- 0.4% unpack-code: 1843.8ms +/- 0.5% validate-input: 1603.8ms +/- 1.3%
Alejandro G. Castro
Comment 2 2010-07-23 03:11:21 PDT
I have not tested it but the patch looks good to me. WRT style check the information about changelogs in this URL to create an entry and set review+ flag: http://webkit.org/coding/contributing.html#changelogs
Riccardo Magliocchetti
Comment 3 2010-07-23 05:30:19 PDT
Created attachment 62417 [details] enable arm jit compilation v2
Xan Lopez
Comment 4 2010-07-24 03:50:34 PDT
Comment on attachment 62417 [details] enable arm jit compilation v2 Looks good to me, thank you!
WebKit Commit Bot
Comment 5 2010-07-24 05:54:48 PDT
Comment on attachment 62417 [details] enable arm jit compilation v2 Clearing flags on attachment: 62417 Committed r64008: <http://trac.webkit.org/changeset/64008>
WebKit Commit Bot
Comment 6 2010-07-24 05:54:52 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.