Changeset 222618 in webkit


Ignore:
Timestamp:
Sep 28, 2017 11:25:28 AM (7 years ago)
Author:
mark.lam@apple.com
Message:

[Re-landing] Turn on exception scope verification for JSC tests.
https://bugs.webkit.org/show_bug.cgi?id=162351
<rdar://problem/29563911>

Reviewed by Saam Barati.

Update: I'm re-landing this patch now that test262 exception check validation
failures have been fixed in r222617. testapi still has some validation failures,
but this patch does not affect testapi.

Added the option to --validateExceptionChecks=true option to BASE_OPTIONS in
run-jsc-stress-tests. This turns on exception scope verification on JSC test
runs (which currently does not include testapi).

Some stats on time to run JSC stress and mozilla tests:

  1. Release build w/o --validateExceptionChecks=true: real 16m22.544s, user 156m24.080s, sys 123m3.649s
  2. Debug build w/o --validateExceptionChecks=true: real 78m34.206s, user 1661m57.008s, sys 73m21.177s
  3. Debug build w/ --validateExceptionChecks=true: real 77m41.106s, user 1656m13.924s, sys 73m42.309s
  4. Debug build w/ --validateExceptionChecks=true --dumpSimulatedThrows=true: real 92m56.918s, user 2012m56.441s, sys 75m14.174s

The stats shows that (2) and (3) has effectively no time difference. Hence, the
cost of enabling --validateExceptionChecks=true is not significant.

It would be nice to enable --dumpSimulatedThrows=true as well, but (4) is about
21% slower than (3). To avoid making debug test runs a lot slower, we'll leave
--dumpSimulatedThrows=true off. We can manually add that when we see a regression
and need to debug the issue. Otherwise, we wont pay the price for it.

  • Scripts/run-jsc-stress-tests:
Location:
trunk/Tools
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Tools/ChangeLog

    r222602 r222618  
     12017-09-28  Mark Lam  <mark.lam@apple.com>
     2
     3        [Re-landing] Turn on exception scope verification for JSC tests.
     4        https://bugs.webkit.org/show_bug.cgi?id=162351
     5        <rdar://problem/29563911>
     6
     7        Reviewed by Saam Barati.
     8
     9        Update: I'm re-landing this patch now that test262 exception check validation
     10        failures have been fixed in r222617.  testapi still has some validation failures,
     11        but this patch does not affect testapi.
     12
     13        Added the option to --validateExceptionChecks=true option to BASE_OPTIONS in
     14        run-jsc-stress-tests.  This turns on exception scope verification on JSC test
     15        runs (which currently does not include testapi).
     16
     17        Some stats on time to run JSC stress and mozilla tests:
     18        1. Release build w/o --validateExceptionChecks=true: real 16m22.544s, user 156m24.080s, sys 123m3.649s
     19        2. Debug build w/o --validateExceptionChecks=true: real 78m34.206s, user 1661m57.008s, sys 73m21.177s
     20        3. Debug build w/ --validateExceptionChecks=true: real 77m41.106s, user 1656m13.924s, sys 73m42.309s
     21        4. Debug build w/ --validateExceptionChecks=true --dumpSimulatedThrows=true: real 92m56.918s, user 2012m56.441s, sys 75m14.174s
     22
     23        The stats shows that (2) and (3) has effectively no time difference.  Hence, the
     24        cost of enabling --validateExceptionChecks=true is not significant.
     25
     26        It would be nice to enable --dumpSimulatedThrows=true as well, but (4) is about
     27        21% slower than (3).  To avoid making debug test runs a lot slower, we'll leave
     28        --dumpSimulatedThrows=true off.  We can manually add that when we see a regression
     29        and need to debug the issue.  Otherwise, we wont pay the price for it.
     30
     31        * Scripts/run-jsc-stress-tests:
     32
    1332017-09-27  Alex Christensen  <achristensen@webkit.org>
    234
  • trunk/Tools/Scripts/run-jsc-stress-tests

    r222371 r222618  
    452452
    453453# We force all tests to use a smaller (1.5M) stack so that stack overflow tests can run faster.
    454 BASE_OPTIONS = ["--useFTLJIT=false", "--useFunctionDotArguments=true", "--maxPerThreadStackUsage=1572864"]
     454BASE_OPTIONS = ["--useFTLJIT=false", "--useFunctionDotArguments=true", "--validateExceptionChecks=true", "--maxPerThreadStackUsage=1572864"]
    455455EAGER_OPTIONS = ["--thresholdForJITAfterWarmUp=10", "--thresholdForJITSoon=10", "--thresholdForOptimizeAfterWarmUp=20", "--thresholdForOptimizeAfterLongWarmUp=20", "--thresholdForOptimizeSoon=20", "--thresholdForFTLOptimizeAfterWarmUp=20", "--thresholdForFTLOptimizeSoon=20", "--maximumEvalCacheableSourceLength=150000", "--useEagerCodeBlockJettisonTiming=true"]
    456456# NOTE: Tests rely on this using scribbleFreeCells.
Note: See TracChangeset for help on using the changeset viewer.