<?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>50039</bug_id>
          
          <creation_ts>2010-11-24 13:50:25 -0800</creation_ts>
          <short_desc>[chromium] Disable antialiasing for compositor</short_desc>
          <delta_ts>2010-11-24 17:31:07 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Kenneth Russell">kbr</reporter>
          <assigned_to name="Kenneth Russell">kbr</assigned_to>
          <cc>dglazkov</cc>
    
    <cc>enne</cc>
    
    <cc>fishd</cc>
    
    <cc>jamesr</cc>
    
    <cc>senorblanco</cc>
    
    <cc>thakis</cc>
    
    <cc>vangelis</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>313447</commentid>
    <comment_count>0</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2010-11-24 13:50:25 -0800</bug_when>
    <thetext>Chromium&apos;s compositor uses GraphicsContext3D for its rendering, and by default requests antialiasing via GraphicsContext3D::Attributes. Currently antialiasing is only implemented for off-screen contexts, not those which render directly to the HostWindow -- except on Mac OS X, which has offscreen context behavior in both cases. This causes a feature disparity between platforms and also negatively impacts performance on Mac because multisampling consumes fill rate. To achieve platform parity we need to explicitly disable antialiasing for the compositor.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313458</commentid>
    <comment_count>1</comment_count>
      <attachid>74791</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2010-11-24 14:09:42 -0800</bug_when>
    <thetext>Created attachment 74791
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313463</commentid>
    <comment_count>2</comment_count>
      <attachid>74791</attachid>
    <who name="Vangelis Kokkevis">vangelis</who>
    <bug_when>2010-11-24 14:24:12 -0800</bug_when>
    <thetext>Comment on attachment 74791
Patch

Looks good.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313494</commentid>
    <comment_count>3</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2010-11-24 15:23:16 -0800</bug_when>
    <thetext>Committed r72703: &lt;http://trac.webkit.org/changeset/72703&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313522</commentid>
    <comment_count>4</comment_count>
    <who name="Nico Weber">thakis</who>
    <bug_when>2010-11-24 16:38:10 -0800</bug_when>
    <thetext>This makes us look considerably worse than Safari.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313525</commentid>
    <comment_count>5</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2010-11-24 16:43:13 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; This makes us look considerably worse than Safari.

As indicated in the comment, more work is needed in order for us to successfully enable antialiasing for the compositor. We need the on-screen case to work on Windows and Linux, but more importantly, we need to measure and address the significant performance issues particular to our Mac OS X port.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313532</commentid>
    <comment_count>6</comment_count>
    <who name="Nico Weber">thakis</who>
    <bug_when>2010-11-24 16:51:24 -0800</bug_when>
    <thetext>Other windows and linux browsers don&apos;t support compositing, so there&apos;s no direct comparison there. Do you have any data how much performance we get from this? On OS X, &quot;pretty&quot; usually beats &quot;a bit faster&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313548</commentid>
    <comment_count>7</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2010-11-24 17:17:51 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; Other windows and linux browsers don&apos;t support compositing, so there&apos;s no direct comparison there. Do you have any data how much performance we get from this? On OS X, &quot;pretty&quot; usually beats &quot;a bit faster&quot;.

With two copies of the aquarium demo open ( http://webglsamples.googlecode.com/hg/aquarium/aquarium.html ) on my MacBook Pro, with antialiasing on and http://codereview.chromium.org/5317007 landed we get 15 FPS per window. With antialiasing off we get 20 FPS per window. Firefox 4.0b7, which does all of its compositing in-process, gets 45 FPS per window. The performance impact is significant. However, we are still far behind even with antialiasing disabled.

I&apos;ve filed http://crbug.com/64385 to track one necessary performance optimization on our side. Once that is landed we can re-measure and consider turning antialiasing back on for the compositor. I don&apos;t think we should do so before this.

We also need to figure out whether there is anything we can be doing differently or better with IOSurfaces. I have a feeling that their copying semantics are causing us to run into fill rate limitations more quickly than browsers that can do all of their compositing in a single process.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313552</commentid>
    <comment_count>8</comment_count>
    <who name="Nico Weber">thakis</who>
    <bug_when>2010-11-24 17:31:07 -0800</bug_when>
    <thetext>Thanks for the data and the pointer to that bug. SGTM.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>74791</attachid>
            <date>2010-11-24 14:09:42 -0800</date>
            <delta_ts>2010-11-24 15:13:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-50039-20101124140941.patch</filename>
            <type>text/plain</type>
            <size>3492</size>
            <attacher name="Kenneth Russell">kbr</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZwkocmV2aXNpb24gNzI2OTcpCisrKyBXZWJLaXQvY2hyb21pdW0vQ2hh
bmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTAtMTEtMjQgIEtlbm5l
dGggUnVzc2VsbCAgPGtickBnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFtjaHJvbWl1bV0gRGlzYWJsZSBhbnRpYWxpYXNpbmcgZm9y
IGNvbXBvc2l0b3IKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTUwMDM5CisKKyAgICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Z2V0Q29tcG9zaXRvckNvbnRleHRBdHRyaWJ1dGVzKToKKyAgICAgICAgKFdlYktpdDo6
V2ViVmlld0ltcGw6OnNldElzQWNjZWxlcmF0ZWRDb21wb3NpdGluZ0FjdGl2ZSk6CisgICAgICAg
IChXZWJLaXQ6OldlYlZpZXdJbXBsOjpncmFwaGljc0NvbnRleHQzRCk6CisKIDIwMTAtMTEtMjQg
IFNhdGlzaCBTYW1wYXRoICA8c2F0aXNoQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdl
ZCBieSBTdGV2ZSBCbG9jay4KSW5kZXg6IFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCShy
ZXZpc2lvbiA3MjY4OSkKKysrIFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0xMzksNiArMTM5LDI3IEBACiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJD
b3JlOwogCituYW1lc3BhY2UgeworCitHcmFwaGljc0NvbnRleHQzRDo6QXR0cmlidXRlcyBnZXRD
b21wb3NpdG9yQ29udGV4dEF0dHJpYnV0ZXMoKQoreworICAgIC8vIEV4cGxpY2l0bHkgZGlzYWJs
ZSBhbnRpYWxpYXNpbmcgZm9yIHRoZSBjb21wb3NpdG9yLiBBcyBvZiB0aGUgdGltZSBvZgorICAg
IC8vIHRoaXMgd3JpdGluZywgdGhlIG9ubHkgcGxhdGZvcm0gdGhhdCBzdXBwb3J0ZWQgYW50aWFs
aWFzaW5nIGZvciB0aGUKKyAgICAvLyBjb21wb3NpdG9yIHdhcyBNYWMgT1MgWCwgYmVjYXVzZSB0
aGUgb24tc2NyZWVuIE9wZW5HTCBjb250ZXh0IGNyZWF0aW9uCisgICAgLy8gY29kZSBwYXRocyBv
biBXaW5kb3dzIGFuZCBMaW51eCBkaWRuJ3QgeWV0IGhhdmUgbXVsdGlzYW1wbGluZyBzdXBwb3J0
LgorICAgIC8vIE1hYyBPUyBYIGVzc2VudGlhbGx5IGFsd2F5cyBiZWhhdmVzIGFzIHRob3VnaCBp
dCdzIHJlbmRlcmluZyBvZmZzY3JlZW4uCisgICAgLy8gTXVsdGlzYW1wbGluZyBoYXMgYSBoZWF2
eSBjb3N0IGVzcGVjaWFsbHkgb24gZGV2aWNlcyB3aXRoIHJlbGF0aXZlbHkgbG93CisgICAgLy8g
ZmlsbCByYXRlIGxpa2UgbW9zdCBub3RlYm9va3MsIGFuZCB0aGUgTWFjIGltcGxlbWVudGF0aW9u
IHdvdWxkIG5lZWQgdG8KKyAgICAvLyBiZSBvcHRpbWl6ZWQgdG8gcmVzb2x2ZSBkaXJlY3RseSBp
bnRvIHRoZSBJT1N1cmZhY2Ugc2hhcmVkIGJldHdlZW4gdGhlCisgICAgLy8gR1BVIGFuZCBicm93
c2VyIHByb2Nlc3Nlcy4gRm9yIHRoZXNlIHJlYXNvbnMgYW5kIHRvIGF2b2lkIHBsYXRmb3JtCisg
ICAgLy8gZGlzcGFyaXRpZXMgd2UgZXhwbGljaXRseSBkaXNhYmxlIGFudGlhbGlhc2luZy4KKyAg
ICBHcmFwaGljc0NvbnRleHQzRDo6QXR0cmlidXRlcyBhdHRyaWJ1dGVzOworICAgIGF0dHJpYnV0
ZXMuYW50aWFsaWFzID0gZmFsc2U7CisgICAgcmV0dXJuIGF0dHJpYnV0ZXM7Cit9CisKK30gLy8g
YW5vbnltb3VzIG5hbWVzcGFjZQorCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogLy8gQ2hhbmdlIHRo
ZSB0ZXh0IHpvb20gbGV2ZWwgYnkga1RleHRTaXplTXVsdGlwbGllclJhdGlvIGVhY2ggdGltZSB0
aGUgdXNlcgpAQCAtMjM3Niw3ICsyMzk3LDcgQEAgdm9pZCBXZWJWaWV3SW1wbDo6c2V0SXNBY2Nl
bGVyYXRlZENvbXBvcwogCiAgICAgUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNEPiBjb250ZXh0ID0g
bV90ZW1wb3JhcnlPbnNjcmVlbkdyYXBoaWNzQ29udGV4dDNELnJlbGVhc2UoKTsKICAgICBpZiAo
IWNvbnRleHQpIHsKLSAgICAgICAgY29udGV4dCA9IEdyYXBoaWNzQ29udGV4dDNEOjpjcmVhdGUo
R3JhcGhpY3NDb250ZXh0M0Q6OkF0dHJpYnV0ZXMoKSwgbV9wYWdlLT5jaHJvbWUoKSwgR3JhcGhp
Y3NDb250ZXh0M0Q6OlJlbmRlckRpcmVjdGx5VG9Ib3N0V2luZG93KTsKKyAgICAgICAgY29udGV4
dCA9IEdyYXBoaWNzQ29udGV4dDNEOjpjcmVhdGUoZ2V0Q29tcG9zaXRvckNvbnRleHRBdHRyaWJ1
dGVzKCksIG1fcGFnZS0+Y2hyb21lKCksIEdyYXBoaWNzQ29udGV4dDNEOjpSZW5kZXJEaXJlY3Rs
eVRvSG9zdFdpbmRvdyk7CiAgICAgICAgIGlmIChjb250ZXh0KQogICAgICAgICAgICAgY29udGV4
dC0+cmVzaGFwZShzdGQ6Om1heCgxLCBtX3NpemUud2lkdGgpLCBzdGQ6Om1heCgxLCBtX3NpemUu
aGVpZ2h0KSk7CiAgICAgfQpAQCAtMjUxMyw4ICsyNTM0LDcgQEAgV2ViR3JhcGhpY3NDb250ZXh0
M0QqIFdlYlZpZXdJbXBsOjpncmFwaAogICAgICAgICBlbHNlIGlmIChtX3RlbXBvcmFyeU9uc2Ny
ZWVuR3JhcGhpY3NDb250ZXh0M0QpCiAgICAgICAgICAgICBjb250ZXh0ID0gbV90ZW1wb3JhcnlP
bnNjcmVlbkdyYXBoaWNzQ29udGV4dDNELmdldCgpOwogICAgICAgICBlbHNlIHsKLSAgICAgICAg
ICAgIEdyYXBoaWNzQ29udGV4dDNEOjpBdHRyaWJ1dGVzIGF0dHJpYnV0ZXM7Ci0gICAgICAgICAg
ICBtX3RlbXBvcmFyeU9uc2NyZWVuR3JhcGhpY3NDb250ZXh0M0QgPSBHcmFwaGljc0NvbnRleHQz
RDo6Y3JlYXRlKEdyYXBoaWNzQ29udGV4dDNEOjpBdHRyaWJ1dGVzKCksIG1fcGFnZS0+Y2hyb21l
KCksIEdyYXBoaWNzQ29udGV4dDNEOjpSZW5kZXJEaXJlY3RseVRvSG9zdFdpbmRvdyk7CisgICAg
ICAgICAgICBtX3RlbXBvcmFyeU9uc2NyZWVuR3JhcGhpY3NDb250ZXh0M0QgPSBHcmFwaGljc0Nv
bnRleHQzRDo6Y3JlYXRlKGdldENvbXBvc2l0b3JDb250ZXh0QXR0cmlidXRlcygpLCBtX3BhZ2Ut
PmNocm9tZSgpLCBHcmFwaGljc0NvbnRleHQzRDo6UmVuZGVyRGlyZWN0bHlUb0hvc3RXaW5kb3cp
OwogICAgICAgICAgICAgaWYgKG1fdGVtcG9yYXJ5T25zY3JlZW5HcmFwaGljc0NvbnRleHQzRCkK
ICAgICAgICAgICAgICAgICBtX3RlbXBvcmFyeU9uc2NyZWVuR3JhcGhpY3NDb250ZXh0M0QtPnJl
c2hhcGUoc3RkOjptYXgoMSwgbV9zaXplLndpZHRoKSwgc3RkOjptYXgoMSwgbV9zaXplLmhlaWdo
dCkpOwogICAgICAgICAgICAgY29udGV4dCA9IG1fdGVtcG9yYXJ5T25zY3JlZW5HcmFwaGljc0Nv
bnRleHQzRC5nZXQoKTsK
</data>
<flag name="review"
          id="65477"
          type_id="1"
          status="+"
          setter="fishd"
    />
    <flag name="commit-queue"
          id="65478"
          type_id="3"
          status="-"
          setter="kbr"
    />
          </attachment>
      

    </bug>

</bugzilla>