[Webkit-unassigned] [Bug 228240] New: 3.5 MB system-wide footprint impact due to thread-locals in libANGLE

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Jul 23 11:28:58 PDT 2021


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

            Bug ID: 228240
           Summary: 3.5 MB system-wide footprint impact due to
                    thread-locals in libANGLE
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: ANGLE
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: dino at apple.com
                CC: dino at apple.com, kbr at google.com, kkinnunen at apple.com

>From the macOS system memory folks:

Because of the way thread-locals are implemented in dyld today, they are dirty on process launch, even if the process does not use the functionality provided by your framework at all.

/System/Library/PrivateFrameworks/WebCore.framework/Frameworks/libANGLE-shared.dylib has recently added these symbols:

  100.0%: __ZN2gl20gCurrentValidContextE
  97.5%: __ZN3egl14gCurrentThreadE

(gl::gCurrentValidContext and egl::gCurrentThread)

Which are thread-local.

This is a regression in macOS Monterey.

Is it possible to switch to a different mechanism, or to use pthread TLVs manually instead of thread-locals?
Because of this, libANGLE-shared used to be dirty in 172 processes and is now dirtied in 355.

Overall it is a 3.5MB regression.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20210723/1a64cdd7/attachment-0001.htm>


More information about the webkit-unassigned mailing list