Bug 73764

Summary: DFG should optimize strict equality
Product: WebKit Reporter: Filip Pizlo <fpizlo>
Component: JavaScriptCoreAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Attachments:
Description Flags
the patch none

Filip Pizlo
Reported 2011-12-03 21:46:49 PST
Patch forthcoming.
Attachments
the patch (17.15 KB, patch)
2011-12-03 21:52 PST, Filip Pizlo
no flags
Filip Pizlo
Comment 1 2011-12-03 21:47:17 PST
Performance: Benchmark report for SunSpider, V8, and Kraken on nitroflex.local (MacBookPro8,2). VMs tested: "TipOfTree" at /Volumes/Data/pizlo/quinary/OpenSource/WebKitBuild/Release/jsc (r101941) "StrictEq" at /Volumes/Data/pizlo/quartary/OpenSource/WebKitBuild/Release/jsc (r101941) 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. TipOfTree StrictEq SunSpider: 3d-cube 6.9323+-0.1950 6.8258+-0.1168 might be 1.0156x faster 3d-morph 7.7808+-0.1310 7.6057+-0.1444 might be 1.0230x faster 3d-raytrace 7.2095+-0.2285 ? 7.2449+-0.1412 ? access-binary-trees 1.5190+-0.0531 ? 1.5205+-0.0456 ? access-fannkuch 6.3998+-0.0992 6.3726+-0.0952 access-nbody 3.1883+-0.0460 ? 3.2425+-0.1529 ? might be 1.0170x slower access-nsieve 2.5078+-0.0444 2.4955+-0.0388 bitops-3bit-bits-in-byte 1.2539+-0.0331 ? 1.2702+-0.0271 ? might be 1.0130x slower bitops-bits-in-byte 2.4069+-0.0753 2.3651+-0.0655 might be 1.0177x faster bitops-bitwise-and 3.5193+-0.0955 3.4204+-0.0665 might be 1.0289x faster bitops-nsieve-bits 5.3966+-0.1127 5.3858+-0.1208 controlflow-recursive 2.0642+-0.0389 2.0570+-0.0374 crypto-aes 6.9077+-0.1512 ? 6.9706+-0.3068 ? crypto-md5 2.4144+-0.0995 2.3924+-0.0552 crypto-sha1 2.1003+-0.0765 ? 2.1010+-0.0702 ? date-format-tofte 10.6994+-0.4402 10.2068+-0.1852 might be 1.0483x faster date-format-xparb 9.9395+-0.2505 9.8182+-0.3418 might be 1.0124x faster math-cordic 6.2878+-0.0545 ! 6.5924+-0.1110 ! definitely 1.0484x slower math-partial-sums 7.5167+-0.1188 ? 7.6744+-0.1654 ? might be 1.0210x slower math-spectral-norm 2.3594+-0.0652 2.2948+-0.0333 might be 1.0281x faster regexp-dna 11.1150+-0.1390 11.0333+-0.2120 string-base64 3.9360+-0.1301 3.9124+-0.1739 string-fasta 6.5948+-0.0735 6.5943+-0.1124 string-tagcloud 11.4289+-0.3142 11.1968+-0.2792 might be 1.0207x faster string-unpack-code 19.7935+-0.6190 19.3594+-0.5112 might be 1.0224x faster string-validate-input 5.2879+-0.0671 ? 5.4383+-0.1742 ? might be 1.0284x slower <arithmetic> * 6.0215+-0.0333 5.9766+-0.0299 might be 1.0075x faster <geometric> 4.7955+-0.0234 4.7752+-0.0210 might be 1.0043x faster <harmonic> 3.7771+-0.0328 3.7673+-0.0228 might be 1.0026x faster TipOfTree StrictEq V8: crypto 70.3478+-0.4708 ? 71.1741+-0.7620 ? might be 1.0117x slower deltablue 149.1885+-0.6366 ? 150.9677+-1.2435 ? might be 1.0119x slower earley-boyer 86.1584+-1.5846 ^ 81.2521+-0.8124 ^ definitely 1.0604x faster raytrace 52.5449+-0.3174 52.5310+-0.2737 regexp 105.8777+-0.9201 ^ 103.9017+-0.3709 ^ definitely 1.0190x faster richards 115.7194+-0.3089 115.6106+-0.3917 splay 74.4429+-0.7815 73.6127+-1.1551 might be 1.0113x faster <arithmetic> 93.4685+-0.3186 ^ 92.7214+-0.3343 ^ definitely 1.0081x faster <geometric> * 88.7326+-0.3108 ^ 87.8962+-0.3192 ^ definitely 1.0095x faster <harmonic> 84.2457+-0.3011 ^ 83.4420+-0.3066 ^ definitely 1.0096x faster TipOfTree StrictEq Kraken: ai-astar 497.9250+-6.0276 ? 498.8070+-5.3309 ? audio-beat-detection 188.6153+-3.0431 185.4334+-0.5227 might be 1.0172x faster audio-dft 272.5915+-7.7390 266.2961+-2.3100 might be 1.0236x faster audio-fft 120.9801+-0.5541 ? 121.2349+-1.0772 ? audio-oscillator 249.7702+-3.2990 ? 249.9946+-3.3012 ? imaging-darkroom 307.3386+-6.3388 304.3757+-5.0748 imaging-desaturate 216.9380+-0.7358 ? 218.1204+-1.2908 ? imaging-gaussian-blur 560.1900+-3.2296 557.8627+-4.5548 json-parse-financial 58.9333+-0.6396 58.4186+-0.2120 json-stringify-tinderbox 74.3975+-0.1989 ! 76.8076+-1.2100 ! definitely 1.0324x slower stanford-crypto-aes 99.7420+-0.8033 97.7437+-1.8397 might be 1.0204x faster stanford-crypto-ccm 101.9951+-0.5625 ? 103.5983+-1.6895 ? might be 1.0157x slower stanford-crypto-pbkdf2 192.2552+-1.4049 190.9705+-1.4355 stanford-crypto-sha256-iterative 85.3768+-1.4834 83.5442+-0.5721 might be 1.0219x faster <arithmetic> * 216.2178+-1.0320 215.2291+-0.6276 might be 1.0046x faster <geometric> 172.7627+-0.6533 172.1056+-0.5018 might be 1.0038x faster <harmonic> 139.8906+-0.5159 139.5563+-0.5263 might be 1.0024x faster TipOfTree StrictEq All benchmarks: <arithmetic> 81.6572+-0.3329 81.2266+-0.1992 might be 1.0053x faster <geometric> 21.5398+-0.0691 21.4347+-0.0654 might be 1.0049x faster <harmonic> 6.6508+-0.0564 6.6330+-0.0394 might be 1.0027x faster TipOfTree StrictEq Geomean of preferred means: <scaled-result> 48.7026+-0.1219 ^ 48.3545+-0.1261 ^ definitely 1.0072x faster
Filip Pizlo
Comment 2 2011-12-03 21:52:46 PST
Created attachment 117783 [details] the patch
WebKit Review Bot
Comment 3 2011-12-04 13:17:00 PST
Comment on attachment 117783 [details] the patch Clearing flags on attachment: 117783 Committed r101964: <http://trac.webkit.org/changeset/101964>
WebKit Review Bot
Comment 4 2011-12-04 13:17:04 PST
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.