[webkit-changes] [WebKit/WebKit] d98448: [WebGPU] MTLResource allocations should be attribu...
mwyrzykowski
noreply at github.com
Mon Mar 18 22:47:40 PDT 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: d9844889d42d79dc040865b5928b1da71fbdddf5
https://github.com/WebKit/WebKit/commit/d9844889d42d79dc040865b5928b1da71fbdddf5
Author: Mike Wyrzykowski <mwyrzykowski at apple.com>
Date: 2024-03-18 (Mon, 18 Mar 2024)
Changed paths:
M Source/WebCore/Modules/WebGPU/Implementation/WebGPUCreateImpl.cpp
M Source/WebCore/Modules/WebGPU/Implementation/WebGPUCreateImpl.h
M Source/WebCore/platform/ProcessIdentity.h
M Source/WebGPU/WebGPU.xcodeproj/project.pbxproj
M Source/WebGPU/WebGPU/Buffer.mm
M Source/WebGPU/WebGPU/Device.h
M Source/WebGPU/WebGPU/Device.mm
M Source/WebGPU/WebGPU/Instance.h
M Source/WebGPU/WebGPU/Instance.mm
A Source/WebGPU/WebGPU/MetalSPI.h
M Source/WebGPU/WebGPU/PresentationContext.h
M Source/WebGPU/WebGPU/PresentationContext.mm
M Source/WebGPU/WebGPU/PresentationContextIOSurface.h
M Source/WebGPU/WebGPU/PresentationContextIOSurface.mm
M Source/WebGPU/WebGPU/Queue.mm
M Source/WebGPU/WebGPU/Texture.mm
M Source/WebGPU/WebGPU/WebGPUExt.h
M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteGPU.cpp
M Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp
M Source/WebKitLegacy/mac/WebCoreSupport/WebChromeClient.mm
Log Message:
-----------
[WebGPU] MTLResource allocations should be attributed to the respective web process
https://bugs.webkit.org/show_bug.cgi?id=254219
<radar://107001772>
Reviewed by Tadeu Zagallo and Myles C. Maxfield.
Attribute memory used by IOSurfaces and MTLResource instances to the
corresponding web process, so we do not exceed jetsam limits on iOS.
Mostly this involves piping the web process ID which already is
accessible via RemoteGPU down to WebGPU.framework and then calling the
appropriate IOSurface and Metal SPIs.
* Source/WebCore/PAL/pal/graphics/WebGPU/Impl/WebGPUCreateImpl.cpp:
(PAL::WebGPU::create):
* Source/WebCore/PAL/pal/graphics/WebGPU/Impl/WebGPUCreateImpl.h:
* Source/WebGPU/WebGPU/Buffer.mm:
(WebGPU::Device::safeCreateBuffer const):
* Source/WebGPU/WebGPU/Device.h:
* Source/WebGPU/WebGPU/Device.mm:
(WebGPU::setOwnerWithIdentity):
(WebGPU::Device::setOwnerWithIdentity const):
(WebGPU::Device::newBufferWithBytes const):
(WebGPU::Device::newTextureWithDescriptor const):
* Source/WebGPU/WebGPU/Instance.h:
* Source/WebGPU/WebGPU/Instance.mm:
(WebGPU::Instance::create):
(WebGPU::Instance::Instance):
(WebGPU::m_webProcessID):
(WebGPU::Instance::createSurface):
(WebGPU::Instance::webProcessID const):
* Source/WebGPU/WebGPU/PresentationContext.h:
* Source/WebGPU/WebGPU/PresentationContext.mm:
(WebGPU::PresentationContext::create):
* Source/WebGPU/WebGPU/PresentationContextIOSurface.h:
* Source/WebGPU/WebGPU/PresentationContextIOSurface.mm:
(WebGPU::PresentationContextIOSurface::create):
(WebGPU::PresentationContextIOSurface::PresentationContextIOSurface):
(WebGPU::PresentationContextIOSurface::renderBuffersWereRecreated):
(WebGPU::PresentationContextIOSurface::configure):
* Source/WebGPU/WebGPU/Queue.mm:
(WebGPU::Queue::writeBuffer):
(WebGPU::Queue::writeTexture):
* Source/WebGPU/WebGPU/Texture.mm:
(WebGPU::Device::createTexture):
* Source/WebGPU/WebGPU/WebGPUExt.h:
* Source/WebKit/GPUProcess/graphics/WebGPU/RemoteGPU.cpp:
(WebKit::webProcessID):
(WebKit::RemoteGPU::workQueueInitialize):
* Source/WebGPU/WebGPU/MetalSPI.h:
Add SPI header.
Canonical link: https://commits.webkit.org/276332@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list