The Capture Options dialog box enables you to change many capture session settings including address, duration, sample rate, and buffer size.
The Capture & Analysis Options dialog box is broken down into five
sections: Connection, Capture, Energy Capture, Analysis, and Program Images, each
providing a set of options.
Figure 3-2 The Capture & Analysis Options dialog box
The Connection and Capture sections contains the following
- The network address of the target. You can also enter the
network name of your target here. The value given in this field overwrites
the value in the Address field of the Streamline Data view, if one has been
given. The reverse is also true. If you enter a new address in the Address
field of the Streamline data view, it replaces the value entered here.
NoteBy default, Streamline uses port 8080 to connect to a target. To
use a different port, specify one here by entering a colon and a port number after
the IP address. For example, enter Your_IP_address:1010 to use port 1010
to connect to the target.
NoteIf you use the port forwarding of ADB with USB, enter localhost in the Address field.
The Capture section contains the following options:
- Sample Rate
- The target generates periodic measurement interrupts according to the
following settings: Normal=1kHz,
Low=100Hz, and None=0Hz. The Normal setting works well for most instances. Low is recommended if you have a slow
target, or if the target is heavily loaded, as the Low setting means less
intrusion by Streamline. The Low setting does necessitate a longer capture
to collect representative data. If you set Sample Rate to None, Streamline does not force the target
to generate any periodic measurement interrupts. This ensures that
Streamline has the lowest level of intrusion on your code, but also means
that resulting Analysis Reports show only zeroes in any report columns that
rely on sampling.
- Buffer Mode
The default setting is Streaming, which enables
unbounded streaming of target data directly to your host using a 1MB
buffer. You can also use one of the following store-and-forward
If you select one of these sizes the capture ends when
the buffer is full. This prevents the latency caused by streaming data
from the target to the host.
WarningYou must set the Buffer Mode to
Streaming to enable Live view. If you select one of the buffer sizes,
the Live view does not display real-time data during the capture
- The length of the capture session, in seconds. For example,
enter 1:05 for 1 minute and 5 seconds. If you do not provide a value here,
the capture session continues until you stop it manually.
- Call stack
- Select this checkbox to ensure that Streamline records call
stacks. This greatly improves your visibility into the behavior of your
target, but increases the amount of raw data Streamline sends from the
target to the host. Make sure to compile your EABI images and libraries with
frame pointers using the
-fno-omit-frame-pointer compilation option. If you compile
your code with the
option, you must also use the
NoteStreamline supports callstack unwinding for
ARM binaries created using gcc,
provided you compile them with frame pointers enabled. Streamline does
not support output from armcc.
Use the Keep drop-down menu to define the amount of data that you want to keep
when your capture terminates. Choose from the following values:
None, Last minute, Last 5 minutes, Last 15 minutes, or
All. If you choose None, Streamline discards all data does
not produce an Analysis Report when you terminate the capture. Use this
option if you only want to use the Live view to look at the data as it
is collected. If you select one of the time options, Streamline keeps
all data from the termination of the capture back to the time defined by
the Keep menu. For example, if you select Last 5 minutes, and the captures lasts for ten minutes,
Streamline would discard the first five minutes of data from the capture
and save the last five in the Capture. The default option, All, means Streamline keeps all data
from the capture session.
If you select one of the time options from the Keep drop-down menu, that
unit of time is displayed in the toolbar display of the Live view as a
reminder of how much data Streamline keeps when you trigger the
termination of the capture.
Figure 3-3 The Keep overlay on the Stop button in the Live view
Energy Capture settings
The following settings define your Energy Capture device:
- Energy Capture
- This menu has three options. Select No Energy Data Collection to turn Energy
Capture off. When you enable this option, all other Energy Capture options
are disabled. Select ARM Energy Probe
or National Instruments DAQ to match
your energy capture hardware.
- Use this field to give Streamline the name of your target
energy capture device. Streamline attempts to auto-detect your device if
this field is left blank.
NoteIt might be necessary to
specify the tty device in the
Device field when using Streamline on Linux. To do so, enter the
following command in the Device field: /dev/ttyACM0.
- The port Streamline uses to communicate with your chosen
energy capture device. The default port is 8081.
- Tool Path
- Use this field to define the path to the caiman.exe executable, necessary
to use either the ARM Energy Probe or a NI-Daq device to gather power output
statistics. The button to the right of this field enables you to search your
Figure 3-4 The Tool Path dialog box
In addition to the settings that define your capture device, the
Energy Probe section has configuration options that apply to each channel:
- When checked, Streamline collects power data on this
- Check this box to collect voltage data on this channel.
- When this option enabled, Streamline collects current
information for the chosen channel.
- Use this field to define the value, in milliohms, of the
shunt resistor that connects to each of the available channels. The default
setting is 20 milliohms.
The Analysis section contains the following controls:
- Process Debug
- If you select this checkbox, Streamline processes dwarf
debug information and line numbers. This provides a higher level of detail
in your Analysis Reports, but results in higher memory usage. This option
does not affect the data collected during the capture session. It only
affects the Analysis Report automatically generated after the termination of
the capture session. This option can be changed when you re-analyze the
stored Capture Data.
NoteMake sure to build images using
-g compiler option.
NoteIf you disable this option, the source section of the
Code view does not display the source code or source code statistics.
The disassembly code is still available with this option disabled, but
the source section shows only a No source
- High Resolution
- If you select this checkbox, Streamline processes more data, enabling you
to zoom in three more levels in the Timeline view. By default, the highest
resolution in the Timeline view is the millisecond, but with this option
enabled, you can zoom all the way to one microsecond bin sizes.
This option does not affect the data collected during
the capture session. It only affects the Analysis Report automatically
generated after the termination of the capture session. This option can
be changed when you re-analyze the stored Capture Data.
Program Images section
Use this area to explore your file system and define all of the
images and libraries that you want to profile.
The images defined here do not affect the data collected during the
capture session. They only affect the Analysis Report automatically generated after
the termination of the capture session. These images can be changed when you
re-analyze the stored Capture Data.
NoteWhen compiling images on your host, make sure to set the -g
compilation option to enable debug symbols. Disabling inlining with the
-fno-inline compiler setting substantially improves
the call path quality.
The following buttons are included in the Program Images section of
the Capture Options dialog box:
- Opens a file system dialog box that you can use to choose
images to add. Select the image or executable and click Open to add the
file to the list.
Add Program from Workspace...
- Opens an image from your Eclipse workspace.
Toggle Symbol Loading
- Activates or deactivates symbol loading for the selected
elf image. An eye appears next to any image or library in the list with
symbol loading turned on. Using this option instead of removing an image
from the list makes it easy to toggle an image on and off over multiple
runs, as it does not remove it from the list of program images.
- Removes the selected images and libraries.