Commit 23971187 authored by Maggie Chen's avatar Maggie Chen Committed by Commit Bot

Add a Finch experiment V8HugeMaxOldGenerationSizefor V8 heap size increase

Increase max_old_space_size to 4 GB based on availability of physical memory.
The purpose of this finch is to support web apps that require more heap space
for their data sets

Bug:958974

Change-Id: I7f6bb9e69a306331242434cfc03acd68ad32333d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1592792Reviewed-by: default avatarZhenyao Mo <zmo@chromium.org>
Reviewed-by: default avatarScott Violet <sky@chromium.org>
Reviewed-by: default avatarBrian White <bcwhite@chromium.org>
Commit-Queue: Maggie Chen <magchen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#656851}
parent d4f6d8b4
......@@ -18,4 +18,8 @@ const base::Feature kV8FlushBytecode{"V8FlushBytecode",
const base::Feature kV8MemoryReducerForSmallHeaps{
"V8MemoryReducerForSmallHeaps", base::FEATURE_ENABLED_BY_DEFAULT};
// Increase V8 heap size to 4GB if the physical memory is bigger than 16 GB.
const base::Feature kV8HugeMaxOldGenerationSize{
"V8HugeMaxOldGenerationSize", base::FEATURE_DISABLED_BY_DEFAULT};
} // namespace features
......@@ -13,6 +13,7 @@ namespace features {
GIN_EXPORT extern const base::Feature kV8OptimizeJavascript;
GIN_EXPORT extern const base::Feature kV8FlushBytecode;
GIN_EXPORT extern const base::Feature kV8MemoryReducerForSmallHeaps;
GIN_EXPORT extern const base::Feature kV8HugeMaxOldGenerationSize;
} // namespace features
......
......@@ -232,6 +232,13 @@ void V8Initializer::Initialize(IsolateHolder::ScriptMode mode) {
sizeof(no_memory_reducer) - 1);
}
if (base::FeatureList::IsEnabled(features::kV8HugeMaxOldGenerationSize)) {
static const char huge_max_old_generation_size[] =
"--huge_max_old_generation_size";
v8::V8::SetFlagsFromString(huge_max_old_generation_size,
sizeof(huge_max_old_generation_size) - 1);
}
if (IsolateHolder::kStrictMode == mode) {
static const char use_strict[] = "--use_strict";
v8::V8::SetFlagsFromString(use_strict, sizeof(use_strict) - 1);
......
......@@ -5443,6 +5443,25 @@
]
}
],
"V8HugeMaxOldGenerationSize": [
{
"platforms": [
"android",
"chromeos",
"linux",
"mac",
"windows"
],
"experiments": [
{
"name": "Enabled",
"enable_features": [
"V8HugeMaxOldGenerationSize"
]
}
]
}
],
"V8Ignition": [
{
"platforms": [
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment