Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 141fda8db93d166c18a50dca5231c9c4cd6db1ac
https://github.com/WebKit/WebKit/commit/141fda8db93d166c18a50dca5231c9c4cd6db1ac
Author: Keith Miller <[email protected]>
Date: 2024-11-04 (Mon, 04 Nov 2024)
Changed paths:
M Source/JavaScriptCore/wasm/WasmCalleeGroup.cpp
M Source/JavaScriptCore/wasm/WasmCalleeGroup.h
M Source/WTF/wtf/BitVector.h
Log Message:
-----------
Wasm CalleeGroup caller matrix should be sparse until its more efficient to
be dense
https://bugs.webkit.org/show_bug.cgi?id=282568
rdar://139241408
Reviewed by Yusuke Suzuki.
This patch fixes a significant memory growth for Wasm modules that have a large
number of functions.
Since the caller matrix was previously dense (stored as a FixedBitVector) we
could allocate a huge
matrix for such modules. This patch makes the caller graph sparse until it
becomes more efficient
to make it dense. For a test site with 270000 functions this brings the memory
footprint from
8-8.5GB to ~1GB.
* Source/JavaScriptCore/wasm/WasmCalleeGroup.cpp:
(JSC::Wasm::CalleeGroup::CalleeGroup):
(JSC::Wasm::CalleeGroup::updateCallsitesToCallUs):
(JSC::Wasm::CalleeGroup::reportCallees):
* Source/JavaScriptCore/wasm/WasmCalleeGroup.h:
* Source/WTF/wtf/BitVector.h:
Canonical link: https://commits.webkit.org/286131@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes