Created attachment 64260 [details] Table hit testing graph Table hit testing performance in webkit is relatively poor especially when compared to Firefox. It is done currently by visiting every single cell in the table until a cell is found that is interested in the hit. This can perform horribly as the table size gets larger. I have attached a log-log graph showing before and after performance of table hit testing as well as a comparison with firefox.
Created attachment 64261 [details] Benchmark script
Created attachment 64263 [details] Patch For Faster Table Hit Testing
As a real-world demo, this site's performance is SIGNIFICANTLY improved with this patch: http://tekkub.net/
Created attachment 64277 [details] 128*128 table benchmark
Comment on attachment 64263 [details] Patch For Faster Table Hit Testing Minusing. Comments delivered on IRC. The code can incorrectly paint a little too much. Need some precise boundary detection and a simple repaint test etc.
Created attachment 64612 [details] Revised Patch Fixed as per dhyatt's comments.
Created attachment 64621 [details] Revised Patch (Fixes merge conflict)
Comment on attachment 64621 [details] Revised Patch (Fixes merge conflict) r=me
Comment on attachment 64621 [details] Revised Patch (Fixes merge conflict) Rejecting patch 64621 from commit-queue. Failed to run "[u'/Users/eseidel/Projects/CommitQueue/WebKitTools/Scripts/svn-apply', u'--reviewer', u'David Hyatt', u'--force']" exit_code: 255 Last 500 characters of output: ng file LayoutTests/ChangeLog Hunk #1 succeeded at 1 with fuzz 3. patching file LayoutTests/fast/table/simple_paint.html patching file LayoutTests/platform/chromium-linux/fast/table/simple_paint-expected.checksum literal is only avaliable with the XS version at /Library/Perl/5.8.8/Compress/Zlib.pm line 9 BEGIN failed--compilation aborted at /Library/Perl/5.8.8/Compress/Zlib.pm line 9. Compilation failed in require at /Users/eseidel/Projects/CommitQueue/WebKitTools/Scripts/VCSUtils.pm line 1662. Full output: http://queues.webkit.org/results/3736294
Comment on attachment 64621 [details] Revised Patch (Fixes merge conflict) Clearing flags on attachment: 64621 Committed r65539: <http://trac.webkit.org/changeset/65539>
All reviewed patches have been landed. Closing bug.
Landed by hand. Eric, why did the commit queue barf on this?
We thought we had fixed this. I just need to move the commit-queue to SnowLeopard to work around this and the CoreVideo media/compositing crash/timeouts.
This appears to be missing Mac results. :(
(In reply to comment #14) > This appears to be missing Mac results. :( Yup working on it.