Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(206)

Side by Side Diff: chrome/browser/resources/gpu_internals/tracing_controller_tests.js

Issue 7555005: Moving the contents of chrome://gpu Profiling to chrome://tracing. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 9 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 cr.define('gpu', function() {
5 var dataSets = [
6 {
7 name: "big_trace",
8 events_url: "./tests/big_trace.json"
9 },
10 {
11 name: "trivial_trace",
12 events: [
13 {"name":"a","args":{},"pid":52,"ts":9524,"cat":"foo","tid":53,"ph":"B"},
14 {"name":"a","args":{},"pid":52,"ts":9560,"cat":"foo","tid":53,"ph":"E"},
15 {"name":"b","args":{},"pid":52,"ts":9629,"cat":"foo","tid":53,"ph":"B"},
16 {"name":"b","args":{},"pid":52,"ts":9631,"cat":"foo","tid":53,"ph":"E"}
17 ]
18 },
19 {
20 name: "simple_trace",
21 events: [
22 {"cat":"PERF","pid":22630,"tid":22630,"ts":826,"ph":"B",
23 "name":"A long name that doesn't fit but is exceedingly informative",
24 "args":{}},
25 {"cat":"PERF","pid":22630,"tid":22630,"ts":827,"ph":"B",
26 "name":"Asub with a name that won't fit","args":{}},
27 {"cat":"PERF","pid":22630,"tid":22630,"ts":828,"ph":"E",
28 "name":"Asub","args":{}},
29 {"cat":"PERF","pid":22630,"tid":22630,"ts":829,"ph":"B",
30 "name":"Asub","args":{}},
31 {"cat":"PERF","pid":22630,"tid":22630,"ts":832,"ph":"E",
32 "name":"Asub","args":{}},
33 {"cat":"PERF","pid":22630,"tid":22630,"ts":833,"ph":"E",
34 "name":"","args":{}},
35
36 {"cat":"PERF","pid":22630,"tid":22630,"ts":835,"ph":"I",
37 "name":"I1","args":{}},
38 {"cat":"PERF","pid":22630,"tid":22630,"ts":837,"ph":"I",
39 "name":"I2","args":{}},
40
41 {"cat":"PERF","pid":22630,"tid":22630,"ts":840,"ph":"B",
42 "name":"A not as long a name","args":{}},
43 {"cat":"PERF","pid":22630,"tid":22630,"ts":848,"ph":"E",
44 "name":"A not as long a name","args":{}},
45
46 {"cat":"PERF","pid":22630,"tid":22630,"ts":850,"ph":"B",
47 "name":"B","args":{}},
48 {"cat":"PERF","pid":22630,"tid":22630,"ts":854,"ph":"E",
49 "name":"B","args":{}},
50
51 {"cat":"PERF","pid":22630,"tid":22631,"ts":827,"ph":"B",
52 "name":"A","args":{}},
53 {"cat":"PERF","pid":22630,"tid":22631,"ts":835,"ph":"I",
54 "name":"Immediate Three","args":{}},
55 {"cat":"PERF","pid":22630,"tid":22631,"ts":845,"ph":"I",
56 "name":"I4","args":{}},
57 {"cat":"PERF","pid":22630,"tid":22631,"ts":854,"ph":"E",
58 "name":"A","args":{}},
59
60 {"cat":"__metadata","pid":22630,"tid":22630,"ts":0,"ph":"M",
61 "name":"thread_name","args":{"name": "threadA"}},
62 {"cat":"__metadata","pid":22630,"tid":22631,"ts":0,"ph":"M",
63 "name":"thread_name","args":{"name": "threadB"}},
64 {"cat":"__metadata","pid":22630,"tid":22632,"ts":0,"ph":"M",
65 "name":"thread_name","args":{"name": "threadC"}}
66 ]
67 },
68 {
69 name: "nonnested_trace",
70 events: [
71 {'cat':'PERF','pid':22630,'tid':22630,'ts':826,'ph':'B',
72 'name':'A','args':{}},
73 {'cat':'PERF','pid':22630,'tid':22630,'ts':827,'ph':'B',
74 'name':'Asub','args':{}},
75 {'cat':'PERF','pid':22630,'tid':22630,'ts':829,'ph':'B',
76 'name':'NonNest','args':{'id':'1','ui-nest':'0'}},
77 {'cat':'PERF','pid':22630,'tid':22630,'ts':830,'ph':'B',
78 'name':'NonNest','args':{'id':'2','ui-nest':'0'}},
79 {'cat':'PERF','pid':22630,'tid':22630,'ts':831,'ph':'E',
80 'name':'Asub','args':{}},
81 {'cat':'PERF','pid':22630,'tid':22630,'ts':832,'ph':'E',
82 'name':'NonNest','args':{'id':'1','ui-nest':'0'}},
83 {'cat':'PERF','pid':22630,'tid':22630,'ts':833,'ph':'E',
84 'name':'NonNest','args':{'id':'2','ui-nest':'0'}},
85 {'cat':'PERF','pid':22630,'tid':22630,'ts':834,'ph':'E',
86 'name':'A','args':{}},
87
88 {'cat':'PERF','pid':22630,'tid':22631,'ts':827,'ph':'B',
89 'name':'A','args':{}},
90 {'cat':'PERF','pid':22630,'tid':22631,'ts':854,'ph':'E',
91 'name':'A','args':{}}
92 ]
93 },
94 {
95 name: "tall_trace",
96 events: [
97 {"cat":"X","pid":30,"tid":30,"ts":826,"ph":"B","name":"A","args":{}},
98 {"cat":"X","pid":30,"tid":30,"ts":827,"ph":"B","name":"Asub","args":{}},
99 {"cat":"X","pid":30,"tid":30,"ts":828,"ph":"E","name":"Asub","args":{}},
100 {"cat":"X","pid":30,"tid":30,"ts":829,"ph":"B","name":"Asub","args":{}},
101 {"cat":"X","pid":30,"tid":30,"ts":832,"ph":"E","name":"Asub","args":{}},
102 {"cat":"X","pid":30,"tid":30,"ts":833,"ph":"E","name":"","args":{}},
103
104 {"cat":"X","pid":30,"tid":31,"ts":840,"ph":"B","name":"A","args":{}},
105 {"cat":"X","pid":30,"tid":31,"ts":848,"ph":"E","name":"A","args":{}},
106
107 {"cat":"X","pid":30,"tid":32,"ts":840,"ph":"B","name":"A","args":{}},
108 {"cat":"X","pid":30,"tid":32,"ts":848,"ph":"E","name":"A","args":{}},
109
110 {"cat":"X","pid":30,"tid":33,"ts":840,"ph":"B","name":"A","args":{}},
111 {"cat":"X","pid":30,"tid":33,"ts":848,"ph":"E","name":"A","args":{}},
112
113 {"cat":"X","pid":30,"tid":34,"ts":840,"ph":"B","name":"A","args":{}},
114 {"cat":"X","pid":30,"tid":34,"ts":848,"ph":"E","name":"A","args":{}},
115
116 {"cat":"X","pid":30,"tid":35,"ts":840,"ph":"B","name":"A","args":{}},
117 {"cat":"X","pid":30,"tid":35,"ts":848,"ph":"E","name":"A","args":{}},
118
119 {"cat":"X","pid":30,"tid":36,"ts":840,"ph":"B","name":"A","args":{}},
120 {"cat":"X","pid":30,"tid":36,"ts":848,"ph":"E","name":"A","args":{}},
121
122 {"cat":"X","pid":30,"tid":37,"ts":840,"ph":"B","name":"A","args":{}},
123 {"cat":"X","pid":30,"tid":37,"ts":848,"ph":"E","name":"A","args":{}},
124
125 {"cat":"X","pid":30,"tid":38,"ts":840,"ph":"B","name":"A","args":{}},
126 {"cat":"X","pid":30,"tid":38,"ts":848,"ph":"E","name":"A","args":{}},
127
128 {"cat":"X","pid":30,"tid":39,"ts":840,"ph":"B","name":"A","args":{}},
129 {"cat":"X","pid":30,"tid":39,"ts":848,"ph":"E","name":"A","args":{}},
130
131 {"cat":"X","pid":30,"tid":10,"ts":840,"ph":"B","name":"A","args":{}},
132 {"cat":"X","pid":30,"tid":10,"ts":848,"ph":"E","name":"A","args":{}},
133
134 {"cat":"X","pid":31,"tid":11,"ts":840,"ph":"B","name":"A","args":{}},
135 {"cat":"X","pid":31,"tid":11,"ts":848,"ph":"E","name":"A","args":{}},
136
137 {"cat":"X","pid":30,"tid":12,"ts":840,"ph":"B","name":"A","args":{}},
138 {"cat":"X","pid":30,"tid":12,"ts":848,"ph":"E","name":"A","args":{}},
139
140 {"cat":"X","pid":30,"tid":13,"ts":840,"ph":"B","name":"A","args":{}},
141 {"cat":"X","pid":30,"tid":13,"ts":848,"ph":"E","name":"A","args":{}},
142
143 {"cat":"X","pid":30,"tid":14,"ts":840,"ph":"B","name":"A","args":{}},
144 {"cat":"X","pid":30,"tid":14,"ts":848,"ph":"E","name":"A","args":{}},
145
146 {"cat":"X","pid":30,"tid":15,"ts":840,"ph":"B","name":"A","args":{}},
147 {"cat":"X","pid":30,"tid":15,"ts":848,"ph":"E","name":"A","args":{}},
148
149 {"cat":"__metadata","pid":30,"tid":14,"ts":0,"ph":"M",
150 "name":"thread_name","args":{"name": "threadB"}},
151 {"cat":"__metadata","pid":30,"tid":15,"ts":0,"ph":"M",
152 "name":"thread_name","args":{"name": "threadA"}}
153 ]
154 },
155 {
156 name: "huge_trace",
157 events_url: "./tests/huge_trace.json"
158 }
159 ];
160
161 // Create UI for controlling the test harness
162 var selectEl = document.createElement("select");
163 for (var i = 0; i < dataSets.length; ++i) {
164 var optionEl = document.createElement("option");
165 optionEl.textContent = dataSets[i].name;
166 optionEl.dataSet = dataSets[i];
167 selectEl.appendChild(optionEl);
168 }
169 selectEl.addEventListener("change", function() {
170 tracingController.beginTracing();
171 });
172 selectEl.addEventListener("keydown", function() {
173 window.setTimeout(function() {
174 tracingController.beginTracing();
175 }, 0);
176 });
177
178 var controlEl = document.createElement("div");
179 var textEl = document.createElement("span");
180 textEl.textContent = "Trace:";
181 controlEl.appendChild(textEl);
182 controlEl.appendChild(selectEl);
183
184 document.querySelector("#debug-div").appendChild(controlEl,
185 document.body.firstChild);
186
187 return {
188 tracingControllerTestHarness : {
189 beginTracing: function() {
190 var dataSet = dataSets[selectEl.selectedIndex];
191 if (dataSet.events) {
192 window.setTimeout(function() {
193 tracingController.onTraceDataCollected(dataSet.events);
194 tracingController.endTracing();
195 window.setTimeout(function() {
196 tracingController.onEndTracingComplete();
197 },0);
198 }, 0);
199 } else {
200 var req = new XMLHttpRequest();
201 req.open('GET', "./gpu_internals/" + dataSet.events_url, true);
202 req.onreadystatechange = function (aEvt) {
203 if (req.readyState == 4) {
204 tracingController.endTracing();
205 window.setTimeout(function() {
206 if(req.status == 200) {
207 var resp = JSON.parse(req.responseText);
208 if (resp.traceEvents)
209 tracingController.onTraceDataCollected(resp.traceEvents);
210 else
211 tracingController.onTraceDataCollected(resp);
212 } else {
213 console.log("collection failed.");
214 }
215 tracingController.onEndTracingComplete();
216 }, 0);
217 }
218 };
219 req.send(null);
220 }
221 },
222
223 endTracing: function() {
224 }
225 }
226 };
227 });
OLDNEW
« no previous file with comments | « chrome/browser/resources/gpu_internals/tracing_controller.js ('k') | chrome/browser/resources/tracing.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698