Bug 171019 - Tune GC related JSC options for iOS
Summary: Tune GC related JSC options for iOS
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Michael Saboff
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2017-04-19 16:02 PDT by Michael Saboff
Modified: 2017-04-19 16:49 PDT (History)
6 users (show)

See Also:


Attachments
Patch (1.20 KB, patch)
2017-04-19 16:05 PDT, Michael Saboff
mark.lam: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Saboff 2017-04-19 16:02:17 PDT
Empirical tests show that iOS devices perform better with the options values overridden for a smaller number of cores in Options.cpp:overrideDefaults().

These are the options in question:
    Options::maximumMutatorUtilization() = 0.6;
    Options::concurrentGCMaxHeadroom() = 1.4;
    Options::minimumGCPauseMS() = 1;
    Options::useStochasticMutatorScheduler() = false;

<rdar://problem/31718721>
Comment 1 Michael Saboff 2017-04-19 16:05:29 PDT
Created attachment 307517 [details]
Patch
Comment 2 Mark Lam 2017-04-19 16:14:23 PDT
Comment on attachment 307517 [details]
Patch

r=me
Comment 3 JF Bastien 2017-04-19 16:14:56 PDT
Comment on attachment 307517 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=307517&action=review

r=me

> Source/JavaScriptCore/runtime/Options.cpp:335
> +    {

Would it be better to duplicate the block below for iOS and not iOS, or do we expect the tuning parameters to stay the same for both (only the condition above changes)?
Comment 4 Michael Saboff 2017-04-19 16:20:04 PDT
(In reply to JF Bastien from comment #3)
> Comment on attachment 307517 [details]
> Patch
> 
> View in context:
> https://bugs.webkit.org/attachment.cgi?id=307517&action=review
> 
> r=me
> 
> > Source/JavaScriptCore/runtime/Options.cpp:335
> > +    {
> 
> Would it be better to duplicate the block below for iOS and not iOS, or do
> we expect the tuning parameters to stay the same for both (only the
> condition above changes)?

I opted to do it this way since these are all GC related and don't expect them to change.
Comment 5 Michael Saboff 2017-04-19 16:23:41 PDT
Committed r215539: <http://trac.webkit.org/changeset/215539>
Comment 6 Filip Pizlo 2017-04-19 16:49:58 PDT
Comment on attachment 307517 [details]
Patch

R=me too