Capture & Analysis Options dialog box settings
The Capture & Analysis Options dialog box enables you to change the capture session settings, including the IP address of the target, duration, sample rate, and buffer size.
Figure 3-2 The Capture & Analysis Options dialog box
The Connection section contains the following settings:
- The IP address of the target. You can alternatively enter the network name
of your target. 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
Data view, it replaces the value
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 Android ADB with USB, enter localhost in the Address field.
- Browse for a target button
- Use the Browse for a target button on the right side of the Address field to open the Connection Browser. Streamline searches your network and produces a list of possible targets. Selecting one populates the Address field.
- Target Type
- Click on the Target Type button to open the Target Type browser. If you are connected directly to your gator-enabled target, select Streamline Agent from the list. If you are connected to a target through a DSTREAM unit, select your hardware from the list.
- ADB Path
- The location of the ADB executable. You need to specify this in order for the Connection Browser and the Setup Target... dialogs to list targets connected using ADB.
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 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 buffers:
If you select one of these sizes, the capture ends when the buffer is full. This prevents the intrusion caused by streaming data from the target to the host.
NoteYou 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 session.
- Call stack unwinding
- Select this checkbox to ensure that Streamline
records call stacks. This greatly improves the visibility of the behavior of
the target, but increases the amount of raw data Streamline
sends from the target to the host. Make sure you compile your EABI images
and libraries with frame pointers enabled using the
-fno-omit-frame-pointercompilation option. If GCC is compiled with the
--with-mode=thumboption, you must also use the
NoteStreamline supports call stack unwinding for ARM binaries created using GCC, provided you compile them with frame pointers enabled. Streamline does not support call stack unwinding for code generated by armcc.
- Discard Data
If this option is enabled, Streamline discards all data when you terminate the capture. Use this option if you only want to see the data that streams during a capture session and do not want to generate a capture.
If you use this option, a red x appears over the Terminate Capture button in the Live view.
Figure 3-3 The Stop button in the Live view with Discard Data option enabled
- The length of the capture session, in minutes and 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, or the buffer is full.
The Command section contains the following controls:
- Working Directory
- The absolute path of the directory on the target in which to run the command.
- User Name
- The user account to run the command as.
- A command to run on the target. The command is run a few seconds after the
capture begins. When the command finishes, the capture is not automatically
terminated. You must use the
-acommand-line option when starting
gatordin order to use this feature.
Energy Capture settings
The following settings define your energy capture device:
- Energy Capture drop-down menu
- 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.
NoteWhen using ARM Energy Probe on Linux, enter /dev/ttyACM0 in the Device field, if required. When using NI-DAQ, the device name is usually Dev1.
- 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 executable, which is required 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 file system.
In addition to the settings that define your capture device, the Energy Probe section has configuration options that apply to each channel:
- When enabled, Streamline collects power data on this channel.
- When enabled, Streamline collects voltage data on this channel.
- When enabled, Streamline collects current information for this 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 Information (when available) checkbox
- If you enable this option, Streamline
processes DWARF debug information and line numbers. This provides a higher
level of detail in your captures, but results in higher memory usage. This
option does not affect the data collected during the capture session. It
only affects the report data automatically generated after the termination
of the capture session. This option can be changed when you re-analyze the
NoteYou must have built the image using the
-gcompiler option in order to enable this feature.
NoteIf you disable this feature, the source section of the Code view does not display the source code or source code statistics. The disassembly is still available with this option disabled, but the source section shows only a No source available message.
- High Resolution Timeline checkbox
If you select this checkbox, Streamline processes more data, enabling you to zoom in further in the Timeline view. By default, the highest resolution in the Timeline view is milliseconds, but with this option enabled, you can zoom in to microsecond bin sizes.
This option does not affect the data collected during the capture session. It only affects the report data 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 report data automatically generated after the termination of the capture session. These images can be changed when you re-analyze the stored capture.
NoteWhen compiling images on your host, make sure you set the
-gcompilation option to enable debug symbols.
NoteDisabling inlining with the
-fno-inlinecompiler setting substantially improves the call path quality.
The following buttons are included in the Program Images section of the Capture & Analysis Options dialog box:
- Add ELF Image...
- Opens a file system dialog box that you can use to choose images to add. Select the image, executable, or Android Package File (APK) and click Open to add the file to the list.
- Add ELF Image from Workspace...
- Opens a file from your Eclipse workspace.
- Toggle Symbol Loading
- Activates or deactivates symbol loading for the selected image,
executable, or APK. An eye appears next to any entry in the list with symbol
loading turned on.
Figure 3-4 Symbols loaded icon
Using this option instead of removing an entry from the list makes it easy to toggle an entry on and off over multiple runs, as it does not remove it from the Program Images list.
- Removes the selected entries.
- Use the resulting file system dialog box to find an existing session.xml file and import its settings to the Capture & Analysis Options dialog box.
- Saves the current settings as an xml file.
- Saves the settings and exits.
- Discards all changes and exits.