<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>34649</bug_id>
          
          <creation_ts>2010-02-05 07:06:16 -0800</creation_ts>
          <short_desc>Extremely slow DOM access compared to other non-webkit browsers</short_desc>
          <delta_ts>2015-03-24 09:50:40 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tables</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Windows XP</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WORKSFORME</resolution>
          
          
          <bug_file_loc>http://blog.jeneric.net/2010/02/05/ie8-beats-chrome-safari-in-performance-tests/</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Andrew Gryaznov">realgrandrew</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
    
    <cc>chad</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>188181</commentid>
    <comment_count>0</comment_count>
      <attachid>48232</attachid>
    <who name="Andrew Gryaznov">realgrandrew</who>
    <bug_when>2010-02-05 07:06:16 -0800</bug_when>
    <thetext>Created attachment 48232
Blog post with regression source and more info

access speed regresses over the size of the DOM table tree, It is down to 20x or 
more times slower than in every other modern browser, including Internet Explorer. 
It makes some DOM tricks unusable in WebKit completely</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>188182</commentid>
    <comment_count>1</comment_count>
      <attachid>48233</attachid>
    <who name="Andrew Gryaznov">realgrandrew</who>
    <bug_when>2010-02-05 07:07:14 -0800</bug_when>
    <thetext>Created attachment 48233
test case

the test case html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>188296</commentid>
    <comment_count>2</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2010-02-05 14:10:08 -0800</bug_when>
    <thetext>I don’t think this is a DOM issue as much as a repainting issue.  Profiling shows a large amount of time is spent repainting tables.  QuartzDebug doesn’t appear to show any unnecessary repainting though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>450828</commentid>
    <comment_count>3</comment_count>
    <who name="Chad von Nau">chad</who>
    <bug_when>2011-08-13 02:37:50 -0700</bug_when>
    <thetext>I&apos;m seeing the same problem.

I&apos;ve made some examples. These examples are the same content with different styling:

1) Normal scrolling. Solid borders and border-collapse:separate

 http://chadvonnau.com/projects/web/examples/webkit-table-bug/index.html

2) Slow scrolling. Solid borders and border-collapse:collapse

 http://chadvonnau.com/projects/web/examples/webkit-table-bug/bordercollapse.html

3) Very slow scrolling and beach ball of death.
   Semi-transparent RGBA borders and border-collapse:separate

 http://chadvonnau.com/projects/web/examples/webkit-table-bug/rgbaborders.html


I&apos;m testing with Safari 5.1 and OS X 10.6.8 (+update) on my Late 2006 MacBook Pro.

Firefox 4 sees roughly equal performance on on all of those examples.
Safari 5.0 and earlier sees about the same performance on each example.
Chrome 13.0.7 has similar performance issues with these examples.

Here is another page that exhibits performance problems because of border-collapse:collapse

 http://panlex.org/u


This is the same bug on Google&apos;s bug tracker:

 http://code.google.com/p/chromium/issues/detail?id=34736</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>450830</commentid>
    <comment_count>4</comment_count>
    <who name="Chad von Nau">chad</who>
    <bug_when>2011-08-13 02:40:34 -0700</bug_when>
    <thetext>*** Bug 66184 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>450838</commentid>
    <comment_count>5</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-08-13 07:55:36 -0700</bug_when>
    <thetext>This bug is about DOM access performance, not scrolling performance. Please file another bug on the latter.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1079575</commentid>
    <comment_count>6</comment_count>
    <who name="Chad von Nau">chad</who>
    <bug_when>2015-03-24 00:56:22 -0700</bug_when>
    <thetext>I just revisited this today and both Andrew&apos;s original DOM access issue, and my scrolling issue (Comment #3) appear to be resolved in Safari 8. On my machine, I&apos;m getting over 60FPS on Andrew&apos;s demo, and the scrolling examples I linked are as smooth as can be.

I put Andrew&apos;s demo on Codepen for ease of testing: http://codepen.io/cvn/full/vEbKJz/

I think this can be closed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1079629</commentid>
    <comment_count>7</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-03-24 09:50:40 -0700</bug_when>
    <thetext>Thank you, looks good to me in Safari 7.1.4 too.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>48232</attachid>
            <date>2010-02-05 07:06:16 -0800</date>
            <delta_ts>2010-02-05 07:06:16 -0800</delta_ts>
            <desc>Blog post with regression source and more info</desc>
            <filename>url.txt</filename>
            <type>text/plain</type>
            <size>80</size>
            <attacher name="Andrew Gryaznov">realgrandrew</attacher>
            
              <data encoding="base64">aHR0cDovL2Jsb2cuamVuZXJpYy5uZXQvMjAxMC8wMi8wNS9pZTgtYmVhdHMtY2hyb21lLXNhZmFy
aS1pbi1wZXJmb3JtYW5jZS10ZXN0cy8=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>48233</attachid>
            <date>2010-02-05 07:07:14 -0800</date>
            <delta_ts>2010-02-05 07:07:14 -0800</delta_ts>
            <desc>test case</desc>
            <filename>ddp.html</filename>
            <type>text/html</type>
            <size>3988</size>
            <attacher name="Andrew Gryaznov">realgrandrew</attacher>
            
              <data encoding="base64">PGh0bWw+DQo8Ym9keT4NCjxkaXYgaWQ9InlvIj48L2Rpdj4NCjxzY3JpcHQ+DQoNCi8vIEREUA0K
DQovKg0KDQpERFA6IERpcmVjdCBET00gUGl4ZWxlciBicm93c2VyIHBlcmZvcm1hbmNlIHRlc3QN
CihDKSAyMDEwIEFuZHJldyBHcnlhem5vdiAocmVhbGdyYW5kcmV3QGdtYWlsLmNvbSkNCkNvZGUg
bGljZW5zZTogR1BMIHYuIDMgb3IgaGlnaGVyLg0KDQpUT0RPOg0KLSB3cml0ZSBET00gcGVyZm9y
bWFuY2UgcmVncmVzc2lvbiB0ZXN0IGJhc2VkIG9uIGRyYXcgYnVmZmVyIGRpbWVuc2lvbnMgZ3Jv
d3RoDQoqLw0KDQppc0lFOCA9IChuYXZpZ2F0b3IudXNlckFnZW50LmluZGV4T2YoIk1TSUUgOCIp
ICE9IC0xKTsNCg0KZnVuY3Rpb24gRERQKHdyYXBwZWRFbGVtZW50KSB7DQogICAgdGhpcy5lbCA9
IHdyYXBwZWRFbGVtZW50Ll9fX2xpbms7DQogICAgdGhpcy5jcmVhdGVERFBDYW52YXMod3JhcHBl
ZEVsZW1lbnQpOw0KfTsNCg0KRERQLnByb3RvdHlwZSA9IHsNCg0KICAgIGNyZWF0ZUREUENhbnZh
czogZnVuY3Rpb24gKHdyYXBwZWRFbGVtZW50KSB7DQogICAgICAgIHZhciBlbCA9IHdyYXBwZWRF
bGVtZW50Ll9fX2xpbms7DQogICAgICAgIGVsLmlubmVySFRNTCA9ICIiOw0KICAgICAgICBlbC5h
cHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJESVYiKSk7DQogICAgfSwNCiAgICAN
CiAgICBjcmVhdGVERFBCdWZmZXI6IGZ1bmN0aW9uICh3LCBoLCBydywgcmgpIHsNCiAgICAgICAg
dmFyIGVsID0gdGhpcy5lbC5maXJzdENoaWxkOw0KICAgICAgICAgICAgaWYoIWlzSUU4KSB7DQog
ICAgICAgICAgICBlbC5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJUQUJMRSIp
KTsNCiAgICAgICAgICAgIHZhciB0YmwgPSBlbC5maXJzdENoaWxkOw0KICAgICAgICAgICAgdGJs
LnN0eWxlLmJvcmRlckNvbGxhcHNlPSJjb2xsYXBzZSI7DQogICAgICAgICAgICB0Ymwuc3R5bGUu
Ym9yZGVyPSIwcHgiOw0KICAgICAgICAgICAgdGJsLnN0eWxlLndpZHRoPXc7DQogICAgICAgICAg
ICB0Ymwuc3R5bGUuaGVpZ2h0PWg7DQogICAgICAgICAgICB2YXIgdHIsdGQ7DQogICAgICAgICAg
ICBmb3IodmFyIGk9MDtpPHJoO2krKykgew0KICAgICAgICAgICAgICAgIHRyID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgiVFIiKTsNCiAgICAgICAgICAgICAgICBmb3IodmFyIGo9MDtqPHJ3O2or
KykgeyAgDQogICAgICAgICAgICAgICAgICAgIHRkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
VEQiKTsNCiAgICAgICAgICAgICAgICAgICAgdGQuc3R5bGUuYmFja2dyb3VuZENvbG9yID0gIiMw
MDAwMDAiOw0KICAgICAgICAgICAgICAgICAgICB0ci5hcHBlbmRDaGlsZCh0ZCk7DQogICAgICAg
ICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIHRibC5hcHBlbmRDaGlsZCh0cik7DQogICAgICAg
ICAgICB9DQogICAgICAgICAgICB0aGlzLnQgPSB0ci5wYXJlbnROb2RlOw0KICAgICAgICB9IGVs
c2Ugew0KICAgICAgICAgICAgdmFyIHRhYmxlID0gJzx0YWJsZSBpZD0idHR0IiBzdHlsZT0id2lk
dGg6Jyt3KydweDsgaGVpZ2h0OiAnK2grJ3B4OyBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlIj4n
Ow0KICAgICAgICAgICAgdmFyIHRyLHRkOw0KICAgICAgICAgICAgZm9yKHZhciBpPTA7aTxyaDtp
KyspIHsNCiAgICAgICAgICAgICAgICB0ciA9ICc8dHI+JzsNCiAgICAgICAgICAgICAgICBmb3Io
dmFyIGo9MDtqPHJ3O2orKykgeyAgDQogICAgICAgICAgICAgICAgICAgIHRyID0gdHIgKyAnPHRk
IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwIj48L3RkPic7DQogICAgICAgICAgICAg
ICAgfQ0KICAgICAgICAgICAgICAgIHRhYmxlID0gdGFibGUgKyB0ciArICI8L3RyPiI7DQogICAg
ICAgICAgICB9DQogICAgICAgICAgICB0YWJsZSA9IHRhYmxlICsgIjwvdGFibGU+IjsNCiAgICAg
ICAgICAgIGVsLmlubmVySFRNTCA9IHRhYmxlOw0KICAgICAgICAgICAgdGhpcy50ID0gdGhpcy5l
bC5maXJzdENoaWxkLmZpcnN0Q2hpbGQuZmlyc3RDaGlsZDsNCiAgICAgICAgfQ0KICAgIH0sDQog
ICAgICAgIA0KICAgIHBpeGVsOiBmdW5jdGlvbiAoeCx5LCBjb2xvcikgeyAvLyBUT0RPOiBjaG9v
c2UgYnVmZmVyIG51bWJlciENCiAgICAgICAgdGhpcy50LmNoaWxkTm9kZXNbeV0uY2hpbGROb2Rl
c1t4XS5zdHlsZS5iYWNrZ3JvdW5kQ29sb3IgPSBjb2xvcjsNCiAgICB9LCANCiAgICAgICAgDQog
ICAgZHJhdzogZnVuY3Rpb24gKGltZ2RhdGEsIHcsIHgsIHkpIHsNCiAgICAgICAgdmFyIGNvbG9y
LCB4cG9zLCB5cG9zOw0KICAgICAgICBmb3IodmFyIGk9MDsgaTxpbWdkYXRhLmxlbmd0aDsgaSsr
KSB7DQogICAgICAgICAgICB5cG9zID0gcGFyc2VJbnQoaS93KTsNCiAgICAgICAgICAgIHhwb3Mg
PSBpICUgdzsNCiAgICAgICAgICAgIHRoaXMucGl4ZWwoeHBvcyt4LCB5cG9zK3ksIGltZ2RhdGFb
aV0pOw0KICAgICAgICB9DQogICAgICAgIA0KICAgIH0NCn0NCg0KV0UgPSB7X19fbGluazogZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInlvIil9Ow0KZCA9IG5ldyBERFAoV0UpOw0KDQpNWCA9IDMy
MDsNCk1ZID0gMjQwOw0KSVggPSAzOw0KSVkgPSAzOw0KDQpkLmNyZWF0ZUREUEJ1ZmZlcigxMDAs
MTAwLE1YLE1ZKTsNCg0KaW1nID0gWyAnIzAwMDBmZicsICcjZmZmZmZmJywgJyMwMDAwZmYnLA0K
ICAgICAgICAnI2ZmZmZmZicsICcjZmZmZmZmJywgJyNmZmZmZmYnLA0KICAgICAgICAnIzAwZmYw
MCcsICcjZmZmZmZmJywgJyMwMGZmMDAnXTsNCg0KYmxrID0gWyAnI2RlZGVkZScsICcjZGUwMGRl
JywgJyNkZWRlMDAnLA0KICAgICAgICAnIzAwZGVkZScsICcjZGVkZWRlJywgJyMwMGRlZGUnLA0K
ICAgICAgICAnI2RlZGUwMCcsICcjZGUwMGRlJywgJyNkZWRlZGUnXTsNCg0KYnIgPSBbICcjMDBm
ZmZmJywgJyNmZjAwZmYnLCAnIzAwZmZmZicsDQogICAgICAgICcjMDBmZmZmJywgJyNmZmZmZmYn
LCAnIzAwZmZmZicsDQogICAgICAgICcjMDBmZmZmJywgJyNmZjAwZmYnLCAnIzAwZmZmZiddOw0K
DQogICAgICAgIA0KZC5kcmF3KGJyLCAzLCAzLDMpOw0KDQpkLmRyYXcoYnIsIDMsIDEzLDEzKTsN
CmQuZHJhdyhiciwgMywgMTMsNDUpOw0KZC5kcmF3KGJyLCAzLCAxMyw3MCk7DQovL2QucGl4ZWwo
MCwwLCcjZmYwMDAwJyk7DQovL2QucGl4ZWwoMTAsMTAsJyNmZjAwMDAnKTsNCi8vZC5waXhlbCgx
NCwxNCwnI2ZmMDAwMCcpOw0KDQppeD0zOw0KaXk9MDsNCnZ4PTE7DQp2eT0tMjsNCg0KZnBzZGl2
ID0gZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJESVYi
KSk7DQoNCmZ1bmN0aW9uIGRvX2xvb3AoKSB7DQogICAgZC5kcmF3KGJsaywgMywgaXgsIGl5KTsN
CiAgICBpeCs9dng7DQogICAgaXkrPXZ5Ow0KICAgIGlmKGl4ID49IE1YLUlYKSB7DQogICAgICAg
IGl4ID0gTVgtMS1JWDsNCiAgICAgICAgdnggPSAtdng7DQogICAgfQ0KICAgIGlmKGl4IDwgMCkg
ew0KICAgICAgICBpeCA9IDA7DQogICAgICAgIHZ4ID0gLXZ4Ow0KICAgICAgICAvLyBjb21wdXRl
IGZwcw0KICAgICAgICBkdCA9IChuZXcgRGF0ZSgpKS5nZXRUaW1lKCkgLSB0Ow0KICAgICAgICBm
cHMgPSBNWC8oZHQvMTAwMCk7DQogICAgICAgIGZwc2Rpdi5pbm5lckhUTUwgPSAoIiBGUFM6ICIr
ZnBzKTsNCiAgICAgICAgdCA9IChuZXcgRGF0ZSgpKS5nZXRUaW1lKCk7DQogICAgfQ0KICAgIGlm
KGl5IDwgMCkgew0KICAgICAgICBpeSA9IDA7DQogICAgICAgIHZ5ID0gLXZ5Ow0KICAgIH0NCiAg
ICBpZihpeSA+PSBNWS1JWSkgew0KICAgICAgICBpeSA9IE1ZLTEtSVk7DQogICAgICAgIHZ5ID0g
LXZ5Ow0KICAgIH0NCiAgICBkLmRyYXcoaW1nLCAzLCBpeCwgaXkpOw0KICAgIA0KICAgIHNldFRp
bWVvdXQoZG9fbG9vcCwgMSk7DQp9DQoNCnQgPSAobmV3IERhdGUoKSkuZ2V0VGltZSgpOw0Kc2V0
VGltZW91dChkb19sb29wLCAxMDApOw0KDQo8L3NjcmlwdD4NCg0KPC9ib2R5Pg0KPC9odG1sPg==
</data>

          </attachment>
      

    </bug>

</bugzilla>