Bug 129074

Summary: [UI-Side Compositing] 6% of main thread time spent copying LayerProperties when adding to hash table
Product: WebKit Reporter: Simon Fraser (smfr) <simon.fraser>
Component: New BugsAssignee: Simon Fraser (smfr) <simon.fraser>
Status: RESOLVED FIXED    
Severity: Normal CC: barraclough, kling, koivisto, rniwa, simon.fraser, thorton, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch thorton: review+

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.