Overview

This article will guide you on different filtering options for the main Statoscope graph.

Plot selection

In the treeview tabs on the right hand side, e.g. Overview & Function Profile, use the tick boxes to enable/disable plots.

For a plot to be drawn, it and all its parents in the tree must be ticked.

There are a couple of shortcuts for selecting items:

 

In the Function Profile treeview, Shift+Left click a label to collapse its sub-items into a single bar colour. This will cause the label to have a grey background. Useful for seeing the cost of a whole thread or profile module.

In the pictures below, the datagroup displayed is e_StatoscopeDataGroups S+ (texture memory usage).

Note the Collapsed group (grey background on the text) into 1 colour (Rocks)

Check History

This is the Undo/Redo button pair in the top left (of the control panel) underneath the Overview tab.(see above picture).

Each tab has its own Undo/Redo feature (if applicable to the tab, as some don't need this feature). 

Item Info

This is in the lower right hand tab group and allows you to control how a data item is displayed and shows you some basic stats.

It is based on the currently selected treeview item, in either the Overview or Function Profile tabs.

Overview vs Function Profile item info:

           

The line/bar color can be changed by clicking on the color button to get a color picker, or the Rnd (Random) button to choose a colour at random.

Items are given random colors as they are processed, however these can often end up being too similar and the Rnd button is an easy way to pick a different one.

Basic stats are given in a table: the number of frames the stat is present for in the log, and the corresponding min/max/avg.

These will update in real-time when logging over a socket. In the case of hierarchical bar stats it will represent the total of the ticked children.

Item Info - Filtering the Line Statistics

Line stats can have some simple filtering applied to make it easier to see trends. 

Moving Average shows the same line averaged out using the values from a number of frames either side, 5 by default. 

Local Maximum is useful for things that vary consistently each frame, such as time sliced shadows. A moving average in this case isn't useful when the range of variation is large as it makes the line look misleadingly low.

Enabling either of these stats will hide the base item by default. You can only display the information in 1 mode at a time. Off, MA or LM.

Screenshots

These are useful for seeing what happened while the log was being recorded. They are only captured at 1/8 resolution to keep log size down.

To enable them, set: e_StatoscopeScreenshotCapturePeriod - number of seconds between screenshots, -1 to disable, 0 to capture constantly.

To view the screenshots during the captured session, roll the mouse over the timeline horizontally, and observe the picture updating.

Don't left click on a frame if you want to stay on the screenshot tab, as this will bring the Item info page to the forefront.

Buckets

The 5fps clamp referred to in some columns treats frames whose length is longer than 200ms (5fps) as if it was 200ms. This is useful to stop very long frames from skewing the stats too much.

Buckets will appear depending what data the log contains. Available buckets are: Overall fps, RT fps, GPU fps, Triangles, Total Draw Calls, Shadow Draw Calls, Draw Calls and Texture Pool.

Target Lines

As mentioned above, these are used as a reference for set targets. They are found as a tab in the same group as Overview & Function Profile

Below you can see the target lines being used as a reference while displaying data.

By default we have included a selection of target lines already. 

FPS will show lines at 60, 30, 25, 20, 15, 10 and 5 FPS, (or rather the equivalent ms values), memory at 211 and 240 Mb (PS3 high levels for main and RSX), and so on.


You also have the ability to add your own target lines to fine tune the view to your preference.

At the top of the tab next to the undo / redo buttons You have 3 buttons, Add Target Line / Add Folder (node) / delete item.

The item info panel controls what you want to display.


If you enter a non-number in the value field, the box will highlight in red. 

User Markers

These are used to indicate where interesting game events occur. They appear as vertical grey lines in the plot window, show up in the tool tip, and are selectable in the User Markers tab.

For them to appear in logs, the 'u' data group must be enabled.

They can be added either in code by calling:

gEnv->pStatoscope->AddUserMarker("Path", "Name");

or in the console (with quotes around Path and/or Name if they include spaces):

e_StatoscopeAddUserMarker Path Name

Path determines the hierarchy, delimited by the / character. Name can contain /s and that won't affect the hierarchy.

Many exist already, such as level start/end, invalid file access, menu navigation, etc.

Profiles

You can save out your preferred filter selections from the Profile menu.

 Simply select the data you want to display in Overview / Function Profile etc... and in the profile menu, save the layout (in xml form).

Then when you want to apply the filter on another Statoscope log, just pick it from the Profile drop down menu.