aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteven Rostedt <srostedt@redhat.com>2010-04-09 14:40:25 -0400
committerSteven Rostedt <rostedt@goodmis.org>2010-04-09 15:04:54 -0400
commit04b2e439a93677bc6ef5035729bf05e7427ac13e (patch)
tree8b6fd8c6011fae3f28b37acac8d71914e44a3fba
parentd2c42a8b5238abd33f33e6fe9ae8b48b8670f981 (diff)
doc: Fixed more types and cleared up some explanations
Reported-by: Darren Hart <dvhltc@us.ibm.com> Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
-rw-r--r--Documentation/HTML/index.html100
1 files changed, 61 insertions, 39 deletions
diff --git a/Documentation/HTML/index.html b/Documentation/HTML/index.html
index 8b3062d..331baf4 100644
--- a/Documentation/HTML/index.html
+++ b/Documentation/HTML/index.html
@@ -16,7 +16,7 @@
16<li><a name="ToC_2_4" href="#graph-cursor">Graph Cursor</a> 16<li><a name="ToC_2_4" href="#graph-cursor">Graph Cursor</a>
17<li><a name="ToC_2_5" href="#graph-plots">Graph Plots</a> 17<li><a name="ToC_2_5" href="#graph-plots">Graph Plots</a>
18<menu> 18<menu>
19<li><a name="ToC_2_5_1" href="#graph-plot-task">Process Plots</a> 19<li><a name="ToC_2_5_1" href="#graph-plot-task">Task Plots</a>
20<li><a name="ToC_2_5_2" href="#graph-plot-cpu">CPU Plots</a> 20<li><a name="ToC_2_5_2" href="#graph-plot-cpu">CPU Plots</a>
21</menu> 21</menu>
22</menu> 22</menu>
@@ -27,7 +27,7 @@
27</menu> 27</menu>
28<p><b><a name="ToC_4" href="#filters">Filters</a></b></br> 28<p><b><a name="ToC_4" href="#filters">Filters</a></b></br>
29<menu> 29<menu>
30<li><a name="ToC_4_1" href="#filter-task">Task Filter (filtering processes)</a> 30<li><a name="ToC_4_1" href="#filter-task">Task Filter</a>
31<li><a name="ToC_4_2" href="#filter-event">Event Filter</a> 31<li><a name="ToC_4_2" href="#filter-event">Event Filter</a>
32<menu> 32<menu>
33<li><a name="ToC_4_2_1" href="#filter-adv-event">Advance Event Filter</a> 33<li><a name="ToC_4_2_1" href="#filter-adv-event">Advance Event Filter</a>
@@ -79,7 +79,7 @@ and the plot area:
79 79
80<p> 80<p>
81The plot area contains the data of the given plot, where plots can be per CPU or 81The plot area contains the data of the given plot, where plots can be per CPU or
82per process. The top of the plot area shows a time line. The numbers in the time 82per task. The top of the plot area shows a time line. The numbers in the time
83line are seconds. The time in the time line is taken from the timestamps within 83line are seconds. The time in the time line is taken from the timestamps within
84the trace.dat file which are architecture dependent. The time usually is the timestamp 84the trace.dat file which are architecture dependent. The time usually is the timestamp
85from when the system started. 85from when the system started.
@@ -108,7 +108,7 @@ list.
108 108
109<p> 109<p>
110The graph view of kernelshark shows graphical plots of the data stored in 110The graph view of kernelshark shows graphical plots of the data stored in
111the trace.dat file. The data plots are per CPU or per process. 111the trace.dat file. The data plots are per CPU or per task.
112When there are too many events within the resolution of the graph, 112When there are too many events within the resolution of the graph,
113the plots will appear as a rainbow colored bar. To make more sense out of 113the plots will appear as a rainbow colored bar. To make more sense out of
114the graphs, you need to zoom into a given location to see the details of 114the graphs, you need to zoom into a given location to see the details of
@@ -139,11 +139,17 @@ in until you get more details.
139<img src="images/kshark-zoom-in-3.png"> 139<img src="images/kshark-zoom-in-3.png">
140 140
141<p> 141<p>
142If a plot contains no events within the zoomed in radius, then the line will be empty, 142To save on resources, when zooming in, the beginning
143as CPU 1 is in the above image. CPU 0 shows two tasks that were running. One task 143and end of the full trace may not be reachable with the horizontal scroll bar.
144is given a pink/red color and the other a green color. The colored box represents 144If a plot contains no events within the reachable area, then the line will be empty,
145a task other than idle was running. The small lines that jet out of the box are 145as CPU 1 is in the above image.
146where events occur. 146</p>
147
148<p>
149CPU 0 shows two tasks that were running. One task
150is given a pink/red color and the other a green color. The think colored
151horizontal bar represents a task other than idle was running. The small
152lines that jet out of the bar are where events occur.
147</p> 153</p>
148 154
149<p> 155<p>
@@ -165,8 +171,8 @@ Zoom out will stop at the width of the full trace.
165 171
166<p> 172<p>
167When the mouse is over an event, a tool tip will appear showing the event name, 173When the mouse is over an event, a tool tip will appear showing the event name,
168the <a href="#latency">latency data</a>, the event info, the timestamp and the process 174the <a href="#latency">latency data</a>, the event info, the timestamp and the task
169name and process ID. 175name and task process ID.
170</p> 176</p>
171 177
172<img src="images/kshark-zoom-in-2.png"> 178<img src="images/kshark-zoom-in-2.png">
@@ -218,60 +224,60 @@ Note that setting the cursor with double click will also set Marker A.
218 224
219<p> 225<p>
220The graph data is represented by plots. The data on the plots is either CPU specific or 226The graph data is represented by plots. The data on the plots is either CPU specific or
221process specific. If it is CPU specific, then the data is the time line of events that 227task specific. If it is CPU specific, then the data is the time line of events that
222happened on a given CPU (which CPU is shown in the <a href="#graph-plot-title">plot title area</a>). 228happened on a given CPU (which CPU is shown in the <a href="#graph-plot-title">plot title area</a>).
223If the plot is process specific, then the time line of events is for the given 229If the plot is task specific, then the time line of events is for the given
224process regardless of what CPU it was on at the time. The process name is also shown 230task regardless of what CPU it was on at the time. The task name is also shown
225in the plot title area. 231in the plot title area.
226</p> 232</p>
227 233
228<p> 234<p>
229By default, all the CPUs within the loaded trace.dat file are plotted. 235By default, all the CPUs within the loaded trace.dat file are plotted.
230There are two ways to plot a process. One way is to right mouse click over a 236There are two ways to plot a task. One way is to right mouse click over a
231displayed process in the graph and select the plot option. This will add the 237displayed task in the graph and select the plot option. This will add the
232process plot directly underneath the CPU plot that the process was on where 238task plot directly underneath the CPU plot that the task was on where
233the right mouse click took place. The other way is to use the Plots menu. 239the right mouse click took place. The other way is to use the Plots menu.
234</p> 240</p>
235 241
236<img src="images/kshark-plot-menu.png"> 242<img src="images/kshark-plot-menu.png">
237 243
238<h3><a name="graph-plot-task">Process Plots</a></h3> 244<h3><a name="graph-plot-task">Task Plots</a></h3>
239 245
240<p> 246<p>
241Selecting the "Tasks" menu item will bring up a dialog with all the processes (also referred 247Selecting the "Tasks" menu item will bring up a dialog with all the tasks
242to as tasks) that were found in the trace data. 248that were found in the trace data.
243</p> 249</p>
244 250
245<img src="images/kshark-plot-task-select.png"> 251<img src="images/kshark-plot-task-select.png">
246 252
247<p> 253<p>
248Selecting a process in this dialog will add the task plot to the bottom of the graph 254Selecting a task in this dialog will add the task plot to the bottom of the graph
249area. Unselecting a process in this dialog will remove the plot. 255area. Unselecting a task in this dialog will remove the plot.
250</p> 256</p>
251 257
252<img src="images/kshark-plot-task-result.png"> 258<img src="images/kshark-plot-task-result.png">
253 259
254<p> 260<p>
255The colors in the process plots are different depending on what CPU the process 261The colors in the task plots are different depending on which CPU the task
256was on at the time. The CPU plots change colors as different processes run 262was on at the time. The CPU plots change colors as different tasks run
257on the CPU, and the process plots change color depending on what CPU the process 263on the CPU, and the task plots change color depending on what CPU the task
258is running on at a time. This makes it easy to see how much a process 264is running on. This makes it easy to see how much a task
259bounces around the CPUs. Zooming in on a process plot also shows some more 265bounces around the CPUs. Zooming in on a task plot also shows some more
260characteristics of the process. 266characteristics of the task.
261</p> 267</p>
262 268
263<img src="images/kshark-plot-task-zoom-1.png"> 269<img src="images/kshark-plot-task-zoom-1.png">
264 270
265<p> 271<p>
266The hollow green box that is shown in front of some events in the process 272The hollow green bar that is shown in front of some events in the task
267plot represents when the task was woken up from a sleeping state to 273plot represents when the task was woken up from a sleeping state to
268when it actually ran. The hollow red box between some events shows that 274when it actually ran. The hollow red bar between some events shows that
269the process was preempted by another process even though that process 275the task was preempted by another task even though that task
270was still runnable. 276was still runnable.
271</p> 277</p>
272 278
273<p> 279<p>
274Since the hollow green box shows the wake up latency of the task, the 280Since the hollow green bar shows the wake up latency of the task, the
275<a href="#graph-marker">A,B markers</a> can be used to measure that time. 281<a href="#graph-marker">A,B markers</a> can be used to measure that time.
276</p> 282</p>
277 283
@@ -284,7 +290,7 @@ latency. The same can be done with the preemption latency.
284 290
285<img src="images/kshark-plot-task-measure-preempt.png"> 291<img src="images/kshark-plot-task-measure-preempt.png">
286 292
287<h3><a name="graph-plot-cpu">CPU Plots</a></h2> 293<h3><a name="graph-plot-cpu">CPU Plots</a></h3>
288 294
289<p> 295<p>
290Selecting the "CPUs" plot menu item pops up a dialog that shows the available CPUs that 296Selecting the "CPUs" plot menu item pops up a dialog that shows the available CPUs that
@@ -332,12 +338,12 @@ resolution.
332 <ol> 338 <ol>
333 <li>Interrupts disabled - 'd' if interrupts are disabled, otherwise '.' 339 <li>Interrupts disabled - 'd' if interrupts are disabled, otherwise '.'
334 <li>Need reschedule - 'N' if the kernel was notified that a schedule is needed, otherwise '.' 340 <li>Need reschedule - 'N' if the kernel was notified that a schedule is needed, otherwise '.'
335 <li>In IRQ - 'h' if in a hard IRQ (hardware triggerred), 's' if in a soft IRQ 341 <li>In IRQ - 'h' if in a hard IRQ (hardware triggered), 's' if in a soft IRQ
336 (context where the kernel initiated a the IRQ handler) or if soft IRQs 342 (context where the kernel initiated a the IRQ handler) or if soft IRQs
337 are disabled, 'H' if in a hard IRQ and soft IRQs are disabled or the hard IRQ 343 are disabled, 'H' if in a hard IRQ and soft IRQs are disabled or the hard IRQ
338 triggerred while processing a soft IRQ, otherwise '.' 344 triggered while processing a soft IRQ, otherwise '.'
339 <li>Preemption counter - The index of the preemption counter. If it is other 345 <li>Preemption counter - The index of the preemption counter. If it is other
340 than zero, then the kernel will not preempt the running processes, even 346 than zero, then the kernel will not preempt the running tasks, even
341 if a schedule has been requested by some event. If the counter is zero, 347 if a schedule has been requested by some event. If the counter is zero,
342 then '.' is shown. 348 then '.' is shown.
343 <li>Lock depth - The depth of the big kernel lock being held. The big kernel 349 <li>Lock depth - The depth of the big kernel lock being held. The big kernel
@@ -394,16 +400,16 @@ cursor.
394<p> 400<p>
395The amount of data that can be stored in a trace.dat file can be enormous. 401The amount of data that can be stored in a trace.dat file can be enormous.
396To make any sense out of some traces, it may be required to only display various 402To make any sense out of some traces, it may be required to only display various
397events. The same can be true about processes. 403events. The same can be true about tasks.
398Kernelshark has filters for tasks as well as for events. The task filter 404Kernelshark has filters for tasks as well as for events. The task filter
399affects both the graph and the list, but the graph and list each have a separate 405affects both the graph and the list, but the graph and list each have a separate
400event filter. 406event filter.
401<p> 407<p>
402 408
403<h2><a name="filter-task">Task Filter (filtering processes)</a></h2> 409<h2><a name="filter-task">Task Filter</a></h2>
404 410
405<p> 411<p>
406The task (process) filter is currently set by a right mouse click over 412The task filter is currently set by a right mouse click over
407an event on either the graph or the list view, and by selecting the option to add or remove the 413an event on either the graph or the list view, and by selecting the option to add or remove the
408task to/from the task filter. The tasks within the task filter are the same for 414task to/from the task filter. The tasks within the task filter are the same for
409both the graph and list, but each can be enabled separately. 415both the graph and list, but each can be enabled separately.
@@ -432,6 +438,18 @@ When either filter contains a task, the filter can be enabled.
432 438
433<img src="images/kshark-list-enable-filter-1.png"> 439<img src="images/kshark-list-enable-filter-1.png">
434 440
441<p>
442When a task is not in the "Task Filter", the pop up will show the
443menu item "Add task". When a task is in the "Task Filter" the
444pop up will show "Remove task".
445</p>
446
447<p>
448When a task is not in the "Hide Tasks", the pop up will show the
449menu item "Hide task". When a task is in the "Hide Tasks", the
450pop up will show "Show task".
451</p>
452
435<h4>The scheduling events</h4> 453<h4>The scheduling events</h4>
436 454
437<p> 455<p>
@@ -600,6 +618,10 @@ String fields can have regular expressions used in their comparing if
600</pre> 618</pre>
601 619
602<p> 620<p>
621The available regular expressions are described in <b>regex(7)</b>.
622</p>
623
624<p>
603Note: When adding an advanced filter, all non-advanced filters 625Note: When adding an advanced filter, all non-advanced filters
604(added by the event filter dialog box) will be removed, and only the advanced 626(added by the event filter dialog box) will be removed, and only the advanced
605filters will stay. But non-advanced filters may be added after advanced 627filters will stay. But non-advanced filters may be added after advanced