Bug 129074 - [UI-Side Compositing] 6% of main thread time spent copying LayerProperties when adding to hash table
Summary: [UI-Side Compositing] 6% of main thread time spent copying LayerProperties wh...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Simon Fraser (smfr)
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2014-02-19 16:38 PST by Simon Fraser (smfr)
Modified: 2014-02-21 00:46 PST (History)
7 users (show)

See Also:


Attachments
Patch (30.12 KB, patch)
2014-02-19 16:41 PST, Simon Fraser (smfr)
thorton: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Simon Fraser (smfr) 2014-02-19 16:38:38 PST
[UI-Side Compositing] 6% of main thread time spent copying LayerProperties when adding to hash table
Comment 1 Simon Fraser (smfr) 2014-02-19 16:39:13 PST
<rdar://problem/15741031>
Comment 2 Simon Fraser (smfr) 2014-02-19 16:41:41 PST
Created attachment 224691 [details]
Patch
Comment 3 Tim Horton 2014-02-19 16:49:05 PST
Comment on attachment 224691 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=224691&action=review

> Source/WebKit2/Shared/mac/RemoteLayerTreeTransaction.mm:214
>      if (changedProperties & BackingStoreChanged) {
> -        encoder << backingStore.hasFrontBuffer();
> -        if (backingStore.hasFrontBuffer())
> -            encoder << backingStore;
> +        encoder << backingStore->hasFrontBuffer();
> +        if (backingStore->hasFrontBuffer())
> +            encoder << *backingStore;
>      }

What if BackingStoreChanged because it went away?? I guess we'll still have one, it'll just be one that doesn't paint.
Comment 4 Simon Fraser (smfr) 2014-02-19 17:58:45 PST
https://trac.webkit.org/r164405
Comment 5 Ryosuke Niwa 2014-02-21 00:05:44 PST
Looks like this was ~1.5% performance improvement on DoYouEvenBench:
https://perf.webkit.org/#mode=charts&chartList=%5B%5B%22mac-mavericks%22%2C%22DoYouEvenBench%2FFull%3ATime%3ATotal%22%5D%5D
Comment 6 Tim Horton 2014-02-21 00:07:33 PST
(In reply to comment #5)
> Looks like this was ~1.5% performance improvement on DoYouEvenBench:
> https://perf.webkit.org/#mode=charts&chartList=%5B%5B%22mac-mavericks%22%2C%22DoYouEvenBench%2FFull%3ATime%3ATotal%22%5D%5D

That would be a bit concerning, as this code isn't used at all on Mac at the moment.
Comment 7 Ryosuke Niwa 2014-02-21 00:46:37 PST
(In reply to comment #6)
> (In reply to comment #5)
> > Looks like this was ~1.5% performance improvement on DoYouEvenBench:
> > https://perf.webkit.org/#mode=charts&chartList=%5B%5B%22mac-mavericks%22%2C%22DoYouEvenBench%2FFull%3ATime%3ATotal%22%5D%5D
> 
> That would be a bit concerning, as this code isn't used at all on Mac at the moment.

Okay. It's probably http://trac.webkit.org/changeset/164401 then.