• Egor Pasko's avatar
    startup_metric_utils: remove main entry computed ticks · f86681ce
    Egor Pasko authored
    For a little while we have been recording startup metrics based on main
    entry point time using two techniques:
    * (old way) by converting process creation wall time using
      StartupTimeToTimeTicks()
    * (new way) by calling base::TimeTicks::Now()
    
    The new way is theoretically cleaner and removes a few possible skews
    (see details in the bug). During a few months of overlap we have been
    computing these two histograms for the identical time interval:
    * (old way) Startup.BrowserMessageLoopStartTimeFromMainEntry2
    * (new way) Startup.BrowserMessageLoopStartTimeFromMainEntry3
    
    On Windows the skew between the two is super tiny (2-3 UMA samples with
    difference during the day).
    
    On Android the difference is between 0.5% and 0.7% for the same day for
    various quantiles. The overflow bucket (1 hour and more) for the new
    histogram is 3.5x smaller - nice. Also the new histogram looks a tiny
    bit smoother on Android. Overall the shape of the distribution does not
    change our subjective perception of the startup metrics on Android.
    
    Based on these observations this change proposes to:
    * Switch the remaining calculations based on the main entry point to the
      new way - calling base::TimeTicks::Now() (no conversion to ticks, not
      using the wallclock)
    * Avoid renaming the histograms because the expected difference is
      likely not worth worrying
    * Celebrate cleanup :)
    
    Bug: 797762
    Change-Id: I5c32541280c359d6571cbcc5c6e7500b79002011
    Reviewed-on: https://chromium-review.googlesource.com/1104696Reviewed-by: default avatarFrançois Doray <fdoray@chromium.org>
    Commit-Queue: Egor Pasko <pasko@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#568189}
    f86681ce
startup_metric_utils.cc 32.9 KB