[webkit-changes] [WebKit/WebKit] e97b07: Lazily allocate the SharedVideoFrameWriter in Remo...
Simon Fraser
noreply at github.com
Thu Jun 22 15:03:25 PDT 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: e97b0792a67c3bc32d69a2f6cc61d350f629402c
https://github.com/WebKit/WebKit/commit/e97b0792a67c3bc32d69a2f6cc61d350f629402c
Author: Simon Fraser <simon.fraser at apple.com>
Date: 2023-06-22 (Thu, 22 Jun 2023)
Changed paths:
M Source/WebKit/WebProcess/GPU/graphics/RemoteDisplayListRecorderProxy.cpp
M Source/WebKit/WebProcess/GPU/graphics/RemoteDisplayListRecorderProxy.h
Log Message:
-----------
Lazily allocate the SharedVideoFrameWriter in RemoteDisplayListRecorderProxy
https://bugs.webkit.org/show_bug.cgi?id=258379
rdar://111133625
Reviewed by Youenn Fablet.
Every RemoteImageBufferProxy has a RemoteDisplayListRecorderProxy, and every RemoteDisplayListRecorderProxy has
a SharedVideoFrameWriter, which owns an IPC::Semaphore. The creation and destruction time for this semaphore
was significant when creating/destroying ImageBuffers.
Since SharedVideoFrameWriter is only rarely used, in the case where video frames are drawing into a buffer,
we can lazily allocate it.
* Source/WebKit/WebProcess/GPU/graphics/RemoteDisplayListRecorderProxy.cpp:
(WebKit::RemoteDisplayListRecorderProxy::recordPaintVideoFrame):
(WebKit::RemoteDisplayListRecorderProxy::disconnect):
(WebKit::RemoteDisplayListRecorderProxy::ensureSharedVideoFrameWriter):
* Source/WebKit/WebProcess/GPU/graphics/RemoteDisplayListRecorderProxy.h:
Canonical link: https://commits.webkit.org/265427@main
More information about the webkit-changes
mailing list