[Webkit-unassigned] [Bug 112121] New: Keep a weak reference of decoded image in lazyDecodingPixelRef

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Mar 12 02:38:29 PDT 2013


https://bugs.webkit.org/show_bug.cgi?id=112121

           Summary: Keep a weak reference of decoded image in
                    lazyDecodingPixelRef
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: Unspecified
        OS/Version: Android
            Status: UNCONFIRMED
          Severity: Normal
          Priority: P2
         Component: New Bugs
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: kangyuan.shu at intel.com
                CC: hclam at google.com, senorblanco at chromium.org


LazyDecodingPixelRef need to do a map lookup every time to read image pixels. In some canvas2D cases, this can take 1/6 to 4/1 time of total canvas flush.

To avoid the map lookup, I suggest:
- make a weak reference of decoded image in lazyDecodingPixelRef, set it when the first time of onLockPixels, and don't to lookup into the map each time after that
- add a imagePruned() interface in lazyDecodingPixelRef
- ImageDecodingStore own the image memory and inform lazyDecodingPixelRef when the image memory get pruned


I attached two traces. One is a clean build, the other is I hacked code according to above plan.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list