Commit 4cec3b74 authored by gabadie's avatar gabadie Committed by Commit bot

Implements AddStartupEventsForTelemetry() in startup_metric_utils.cc for...

Implements AddStartupEventsForTelemetry() in startup_metric_utils.cc for in-coming startup telemetry benchmarks using TBM.

BUG=539287
CQ_EXTRA_TRYBOTS=tryserver.chromium.perf:linux_perf_bisect;tryserver.chromium.perf:mac_10_10_perf_bisect;tryserver.chromium.perf:win_perf_bisect;tryserver.chromium.perf:android_nexus5_perf_bisect

Review URL: https://codereview.chromium.org/1410943005

Cr-Commit-Position: refs/heads/master@{#360592}
parent 52be5423
......@@ -309,6 +309,12 @@
TRACE_EVENT_FLAG_COPY | scope, arg1_name, arg1_val, \
arg2_name, arg2_val)
#define TRACE_EVENT_INSTANT_WITH_TIMESTAMP0(category_group, name, scope, \
timestamp) \
INTERNAL_TRACE_EVENT_ADD_WITH_ID_TID_AND_TIMESTAMP( \
TRACE_EVENT_PHASE_INSTANT, category_group, name, 0, 0, timestamp, \
TRACE_EVENT_FLAG_NONE | scope)
// Syntactic sugars for the sampling tracing in the main thread.
#define TRACE_EVENT_SCOPED_SAMPLING_STATE(category, name) \
TRACE_EVENT_SCOPED_SAMPLING_STATE_FOR_BUCKET(0, category, name)
......
......@@ -319,6 +319,8 @@ void RecordMainEntryTimeHistogram() {
(browser_main_entry_time_raw_ms >> 1) & kLower31BitsMask);
// A timestamp is a 64 bit value, yet histograms can only store 32 bits.
// TODO(gabadie): Once startup_with_url.* benchmarks are replaced by
// startup_with_url2.*, remove this dirty hack (crbug.com/539287).
LOCAL_HISTOGRAM_TIMES("Startup.BrowserMainEntryTimeAbsoluteHighWord",
browser_main_entry_time_raw_ms_high_word);
LOCAL_HISTOGRAM_TIMES("Startup.BrowserMainEntryTimeAbsoluteLowWord",
......@@ -357,6 +359,22 @@ base::TimeTicks ExeMainEntryPointTicks() {
return base::TimeTicks();
}
void AddStartupEventsForTelemetry()
{
DCHECK(!g_browser_main_entry_point_ticks.Get().is_null());
TRACE_EVENT_INSTANT_WITH_TIMESTAMP0(
"startup", "Startup.BrowserMainEntryPoint", 0,
g_browser_main_entry_point_ticks.Get().ToInternalValue());
if (!g_process_creation_ticks.Get().is_null())
{
TRACE_EVENT_INSTANT_WITH_TIMESTAMP0(
"startup", "Startup.BrowserProcessCreation", 0,
g_process_creation_ticks.Get().ToInternalValue());
}
}
} // namespace
bool WasNonBrowserUIDisplayed() {
......@@ -394,6 +412,7 @@ void RecordExeMainEntryPointTime(const base::Time& time) {
void RecordBrowserMainMessageLoopStart(const base::TimeTicks& ticks,
bool is_first_run) {
AddStartupEventsForTelemetry();
RecordHardFaultHistogram(is_first_run);
RecordMainEntryTimeHistogram();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment