Update JIT options and thresholds for improved performance

This commit is contained in:
ownedbywuigi 2026-03-28 08:48:09 +00:00
commit 6b25e2373b
4 changed files with 13 additions and 4 deletions

View file

@ -446,6 +446,15 @@ pref("browser.ghostbuster.enabled", true);
// misbehave. Should also avoid spurious GCs during ghostbusting.
pref("javascript.options.gc_on_memory_pressure", false);
pref("javascript.options.baselinejit.unsafe_eager_compilation", false);
pref("javascript.options.ion.unsafe_eager_compilation", false);
pref("javascript.options.baselinejit.threshold", 4);
pref("javascript.options.ion.threshold", 25);
pref("javascript.options.mem.high_water_mark", 256);
pref("javascript.options.mem.gc_incremental", false);
pref("javascript.options.mem.gc_compacting", false);
pref("javascript.options.mem.gc_incremental_slice_ms", 40);
// This is the pref to control the location bar, change this to true to
// force this - this makes the origin of popup windows more obvious to avoid
// spoofing. We would rather not do it by default because it affects UE for web

View file

@ -48,7 +48,7 @@ OptimizationInfo::initNormalOptimizationInfo()
smallFunctionMaxInlineDepth_ = 10;
compilerWarmUpThreshold_ = CompilerWarmupThreshold;
compilerSmallFunctionWarmUpThreshold_ = CompilerSmallFunctionWarmupThreshold;
inliningWarmUpThresholdFactor_ = 0.125;
inliningWarmUpThresholdFactor_ = 0.10;
inliningRecompileThresholdFactor_ = 4;
}

View file

@ -128,14 +128,14 @@ class OptimizationInfo
uint32_t compilerWarmUpThreshold_;
// Default compiler warmup threshold, unless it is overridden.
static const uint32_t CompilerWarmupThreshold = 1000;
static const uint32_t CompilerWarmupThreshold = 700;
// How many invocations or loop iterations are needed before small functions
// are compiled.
uint32_t compilerSmallFunctionWarmUpThreshold_;
// Default small function compiler warmup threshold, unless it is overridden.
static const uint32_t CompilerSmallFunctionWarmupThreshold = 100;
static const uint32_t CompilerSmallFunctionWarmupThreshold = 40;
// How many invocations or loop iterations are needed before calls
// are inlined, as a fraction of compilerWarmUpThreshold.

View file

@ -168,7 +168,7 @@ DefaultJitOptions::DefaultJitOptions()
SET_DEFAULT(osrPcMismatchesBeforeRecompile, 6000);
// The bytecode length limit for small function.
SET_DEFAULT(smallFunctionMaxBytecodeLength_, 130);
SET_DEFAULT(smallFunctionMaxBytecodeLength_, 200);
// An artificial testing limit for the maximum supported offset of
// pc-relative jump and call instructions.