• Mike Wittman's avatar
    [Sampling profiler] Reland "Add profiler browser tests" · 75872141
    Mike Wittman authored
    Implements browser tests to verify that startup profiles taken in the
    browser and child processes are received by the metrics provider.
    
    To work within the test timeouts and to avoid non-determinism this
    requires a couple adaptations to be made to the code when run under
    these tests. The profiling period is reduced from 30 seconds to one
    second, and profiles are taken in all renderer processes. The behavior
    is enabled by providing a 'browser-test' argument to the existing
    'start-stack-profiler' switch.
    
    The main thread profiler for browser tests is moved later, after the
    command line is set up, to be able to observe the added switch
    argument. StackSamplingConfiguration is made responsible for the
    sampling parameters, reusing the GetSamplingParamsForCurrentProcess()
    function which was previously unused.
    
    This reland of https://crrev.com/716372 gates the tests on channel
    since the profiler is enabled only on trunk, canary, and dev, but
    the official continuous builders build as stable channel.
    
    Bug: 1011877, 1026575
    Change-Id: I1cce130ff035007a2935dfccb2f7e2dca56880ef
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1938077
    Commit-Queue: Mike Wittman <wittman@chromium.org>
    Reviewed-by: default avatarEtienne Pierre-Doray <etiennep@chromium.org>
    Reviewed-by: default avatarLei Zhang <thestig@chromium.org>
    Auto-Submit: Mike Wittman <wittman@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#721741}
    75872141
thread_profiler.cc 12.7 KB