[Webkit-unassigned] [Bug 72709] DFG JIT fails speculation on InstanceOf if the base is not an object

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Nov 18 14:46:33 PST 2011


https://bugs.webkit.org/show_bug.cgi?id=72709





--- Comment #3 from Filip Pizlo <fpizlo at apple.com>  2011-11-18 14:46:33 PST ---
This ends up being a much bigger deal on 32-64:



Benchmark report for SunSpider, V8, and Kraken on oldmac.local (MacPro4,1).

VMs tested:
"TipOfTree32" at /Volumes/Data/pizlo/quinary/OpenSource/WebKitBuild/Release/jsc (r100733)
"FixInstanceOf32" at /Volumes/Data/pizlo/senary/OpenSource/WebKitBuild/Release/jsc (r100733)

Collected 12 samples per benchmark/VM, with 4 VM invocations per benchmark. Emitted a call to gc() between sample
measurements. Used 1 benchmark iteration per VM invocation for warm-up. Used the jsc-specific preciseTime()
function to get microsecond-level timing. Reporting benchmark execution times with 95% confidence intervals in
milliseconds.

                                           TipOfTree32           FixInstanceOf32                                 
SunSpider:
   3d-cube                               11.0565+-0.0299    ^    10.9706+-0.0216       ^ definitely 1.0078x faster
   3d-morph                              13.2514+-0.0265         13.2316+-0.0434       
   3d-raytrace                           12.1318+-0.0743    ^    11.9606+-0.0105       ^ definitely 1.0143x faster
   access-binary-trees                    2.2790+-0.0137          2.2753+-0.0140       
   access-fannkuch                       10.4670+-0.0196         10.4511+-0.0317       
   access-nbody                           6.8477+-0.0034    ?     6.8616+-0.0438       ?
   access-nsieve                          3.7028+-0.0046    ?     3.7084+-0.0062       ?
   bitops-3bit-bits-in-byte               1.5467+-0.0237          1.5414+-0.0256       
   bitops-bits-in-byte                    6.0429+-0.0211          6.0359+-0.0215       
   bitops-bitwise-and                     4.6970+-0.0295          4.6806+-0.0102       
   bitops-nsieve-bits                     8.1776+-0.0088    ?     8.1850+-0.0094       ?
   controlflow-recursive                  3.8011+-0.0085    ?     3.8234+-0.0388       ?
   crypto-aes                            11.3316+-0.0411         11.2732+-0.0304       
   crypto-md5                             3.9076+-0.0214    ?     3.9386+-0.0328       ?
   crypto-sha1                            3.2138+-0.0117          3.2057+-0.0163       
   date-format-tofte                     14.4072+-0.3327         14.2207+-0.1071         might be 1.0131x faster
   date-format-xparb                     14.6767+-0.0894    ^    14.0995+-0.0918       ^ definitely 1.0409x faster
   math-cordic                           12.0391+-0.0448         12.0278+-0.0305       
   math-partial-sums                     15.0837+-0.0323    ^    14.9921+-0.0081       ^ definitely 1.0061x faster
   math-spectral-norm                     3.2535+-0.0042          3.2525+-0.0133       
   regexp-dna                            14.7461+-0.0388    !    14.8953+-0.0641       ! definitely 1.0101x slower
   string-base64                          5.4465+-0.0255    ?     5.4520+-0.0296       ?
   string-fasta                          11.6805+-0.0770         11.6651+-0.0407       
   string-tagcloud                       17.8951+-0.1342         17.6676+-0.1127         might be 1.0129x faster
   string-unpack-code                    28.6359+-0.1221    ?    28.6707+-0.0910       ?
   string-validate-input                  7.6607+-0.0558          7.6206+-0.0340       

   <arithmetic> *                         9.5377+-0.0206    ^     9.4887+-0.0193       ^ definitely 1.0052x faster
   <geometric>                            7.6546+-0.0178          7.6278+-0.0204         might be 1.0035x faster
   <harmonic>                             5.8857+-0.0224          5.8754+-0.0272         might be 1.0018x faster

                                           TipOfTree32           FixInstanceOf32                                 
V8:
   crypto                               117.8071+-0.4663    ?   118.0608+-0.5587       ?
   deltablue                            225.9921+-2.0347        225.3533+-0.7155       
   earley-boyer                         237.4998+-0.3201    ^   211.0544+-2.9183       ^ definitely 1.1253x faster
   raytrace                              82.8744+-0.4197    ?    83.1744+-0.4439       ?
   regexp                               156.3446+-0.2260    ^   154.9049+-0.2450       ^ definitely 1.0093x faster
   richards                             243.1000+-1.1683        242.1290+-1.0782       
   splay                                116.0900+-0.9075        115.6935+-1.7122       

   <arithmetic>                         168.5297+-0.3302    ^   164.3386+-0.5964       ^ definitely 1.0255x faster
   <geometric> *                        156.6193+-0.2530    ^   153.6933+-0.5753       ^ definitely 1.0190x faster
   <harmonic>                           144.8763+-0.2079    ^   143.1380+-0.5643       ^ definitely 1.0121x faster

                                           TipOfTree32           FixInstanceOf32                                 
Kraken:
   ai-astar                             987.4732+-1.8545    ?   987.9623+-1.4814       ?
   audio-beat-detection                 495.2940+-0.4341        495.0814+-0.8846       
   audio-dft                            476.3770+-2.1062    ?   476.9451+-2.4131       ?
   audio-fft                            325.9456+-0.1807    ?   326.1011+-0.2349       ?
   audio-oscillator                     602.9375+-2.5446        601.9519+-2.4284       
   imaging-darkroom                     522.2273+-4.5220    ?   523.4006+-4.6703       ?
   imaging-desaturate                  1203.9462+-1.6900    ?  1204.3335+-2.6716       ?
   imaging-gaussian-blur               1041.1411+-1.0568    ?  1041.4093+-1.3214       ?
   json-parse-financial                  90.6251+-0.1707    ?    90.8215+-0.1234       ?
   json-stringify-tinderbox             139.8089+-0.2583    ?   140.4707+-0.5278       ?
   stanford-crypto-aes                  165.6960+-0.7367    ?   165.7563+-0.4304       ?
   stanford-crypto-ccm                  157.1189+-0.4360    !   159.0179+-0.5495       ! definitely 1.0121x slower
   stanford-crypto-pbkdf2               316.5895+-0.6521    ?   316.8845+-0.2622       ?
   stanford-crypto-sha256-iterative     127.9855+-0.5210        127.8547+-0.2938       

   <arithmetic> *                       475.2261+-0.4900    ?   475.5708+-0.5859       ? might be 1.0007x slower
   <geometric>                          349.1768+-0.3579    ?   349.7284+-0.3707       ? might be 1.0016x slower
   <harmonic>                           253.9755+-0.3082    !   254.6060+-0.2736       ! definitely 1.0025x slower

                                           TipOfTree32           FixInstanceOf32                                 
All benchmarks:
   <arithmetic>                         171.9330+-0.1741    ^   171.3844+-0.2220       ^ definitely 1.0032x faster
   <geometric>                           37.4431+-0.0565    ^    37.2831+-0.0692       ^ definitely 1.0043x faster
   <harmonic>                            10.3961+-0.0387         10.3773+-0.0469         might be 1.0018x faster

                                           TipOfTree32           FixInstanceOf32                                 
Geomean of preferred means:
   <scaled-result>                       89.2062+-0.0913    ^    88.5165+-0.1512       ^ definitely 1.0078x faster

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list