| Index: perf_insights/perf_insights/mappers/thread_grouping.html
|
| diff --git a/perf_insights/perf_insights/mappers/thread_grouping.html b/perf_insights/perf_insights/mappers/thread_grouping.html
|
| deleted file mode 100644
|
| index 3e5c6164b6416158e26832dd1d1d3eb4adfd8817..0000000000000000000000000000000000000000
|
| --- a/perf_insights/perf_insights/mappers/thread_grouping.html
|
| +++ /dev/null
|
| @@ -1,112 +0,0 @@
|
| -<!DOCTYPE html>
|
| -<!--
|
| -Copyright (c) 2015 The Chromium Authors. All rights reserved.
|
| -Use of this source code is governed by a BSD-style license that can be
|
| -found in the LICENSE file.
|
| --->
|
| -
|
| -<link rel="import" href="/tracing/base/iteration_helpers.html">
|
| -<link rel="import" href="/tracing/model/helpers/chrome_model_helper.html">
|
| -<link rel="import" href="/tracing/value/value.html">
|
| -
|
| -<script>
|
| -'use strict';
|
| -
|
| -tr.exportTo('pi.m', function() {
|
| - function ThreadGrouping() {
|
| - this.groupNameForThreadGUID_ = {};
|
| - }
|
| -
|
| - ThreadGrouping.prototype = {
|
| - autoInitUsingHelpers: function(model) {
|
| - // Everything is 'other' by default.
|
| - model.getAllThreads().forEach(function(thread) {
|
| - this.groupNameForThreadGUID_[thread.guid] = 'Other';
|
| - }, this);
|
| - var chromeHelper = model.getOrCreateHelper(
|
| - tr.model.helpers.ChromeModelHelper);
|
| -
|
| - if (chromeHelper) {
|
| - var browserHelper = chromeHelper.browserHelper;
|
| - this.addThreadsInProcessToGroup_(browserHelper.process, 'Browser');
|
| -
|
| - var gpuHelper = chromeHelper.gpuHelper;
|
| - if (gpuHelper) {
|
| - this.addThreadsInProcessToGroup_(gpuHelper.process, 'GPU');
|
| - }
|
| -
|
| - for (var pid in chromeHelper.rendererHelpers) {
|
| - var rendererHelper = chromeHelper.rendererHelpers[pid];
|
| - this.addThreadsInProcessToGroup_(rendererHelper.process, 'Renderer');
|
| - }
|
| -
|
| - // TODO(nduca): Modify the helpers to detect plugin processes
|
| - // and include those in separate processes.
|
| - }
|
| -
|
| - // It would be very easy to add processes recognized by android helper
|
| - // here, too.
|
| - },
|
| -
|
| - getGroupNameForThread: function(thread) {
|
| - if (!(thread instanceof tr.model.EventContainer))
|
| - return 'error';
|
| -
|
| - var groupName = this.groupNameForThreadGUID_[thread.guid];
|
| - if (groupName === undefined)
|
| - return 'Other';
|
| - return groupName;
|
| - },
|
| -
|
| - getGroupNameForEvent: function(event) {
|
| - var parentContainer = event.parentContainer;
|
| - if (parentContainer === undefined)
|
| - return 'Unknown';
|
| - return this.getGroupNameForThread(parentContainer);
|
| - },
|
| -
|
| - addThreadsInProcessToGroup_: function(process, groupName,
|
| - opt_predicate, opt_this) {
|
| - var predicate = opt_predicate || tr.b.identity;
|
| -
|
| - for (var tid in process.threads) {
|
| - var thread = process.threads[tid];
|
| - if (predicate.call(opt_this, thread))
|
| - this.groupNameForThreadGUID_[thread.guid] = groupName;
|
| - }
|
| - },
|
| -
|
| - divideEventSetIntoSubGroups: function(eventSet) {
|
| - var resultingEventSets = {
|
| - other: new tr.model.EventSet()
|
| - };
|
| - tr.b.iterItems(this.groupNameForThreadGUID_, function(guid, groupName) {
|
| - if (resultingEventSets[groupName] !== undefined)
|
| - return;
|
| - resultingEventSets[groupName] = new tr.model.EventSet();
|
| - });
|
| -
|
| - eventSet.forEach(function(event) {
|
| - var parentContainer = event.parentContainer;
|
| - if (parentContainer === undefined)
|
| - return;
|
| -
|
| - if (!(parentContainer instanceof tr.model.EventContainer))
|
| - return;
|
| -
|
| - var groupName = this.groupNameForThreadGUID_[parentContainer.guid];
|
| - if (groupName === undefined)
|
| - groupName = 'Other';
|
| - resultingEventSets[groupName].push(event);
|
| -
|
| - }, this);
|
| -
|
| - return resultingEventSets;
|
| - }
|
| - };
|
| -
|
| - return {
|
| - ThreadGrouping: ThreadGrouping
|
| - };
|
| -});
|
| -</script>
|
|
|