Using the VTune(TM) Performance Analyzer Sampling Collector for Mobile Internet Device (MID)

User's Guide

The VTune™ Performance Analyzer sampling data collector for Mobile Internet Device (MID) is a standalone command-line tool that provides the event-based sampling (EBS) functionality on a local system. The hardware-based sampling is a low-overhead, system- wide profiling that helps to identify which modules and functions are consuming the most time, giving a detailed look at the and application. This tool enables you to configure the data collection, perform the system-wide profiling, and store the results in a file.

The goal of this guide is to introduce you to all the sampling collector command-line options and explain how to use them to get more useful results.

Contents

1 Sampling Collector Command-line Options...... 4 1.1 Generic Collector Options ...... 4 [-d | -duration ] ...... 4 [-nb | -non-blocking]...... 4 [-c | -count] ...... 4 [-ce | -count-emon] ...... 4 [-rc | -rerun-based-on-count] ...... 5 [-si | -sampling-interval ] ...... 5 [-sb | -sample-buffer-size ]...... 6 [-sd | -sampling-delay ]...... 6 [-msc | -max-samples-to-collect ] 6 [-sm | -sampling-method ] ...... 6 [-sp | -start-paused] ...... 6 [-cm | -cpu-mask <”text to specify the cpu mask”>] ...... 7 [-out | -output-file ] ...... 7 [-of | -options-from-file ] ...... 7 [-app ]...... 8 [-em | -event-multiplexing] ...... 8 1.2 Event Specific Options...... 9 [-ec | -event-config ...... 9

Using the VTune(TM) Performance Analyzer Sampling Collector for Mobile Internet Device (MID)

[-dc | -data-config...... 9 Syntax 10 1.2.1 Generic Event Modifiers...... 10 :sa | sample-after = ...... 10 1.2.2 Event Modifiers for P6 Processor Family ...... 10 2 Using the VTune Analyzer Sampling Collector for Mobile Internet Device (MID) ...... 12 2.1 Starting Data Collection...... 12 2.1.1 Output...... 12 2.2 Duration Considerations ...... 12 2.2.1 Pause ...... 12 2.2.2 Start Delay...... 13 2.2.3 Zero Duration and Multiple Runs...... 13 2.3 Data Collection Considerations ...... 13 2.3.1 Starting Applications with the Sampling Collector ...... 13 2.3.2 Calculating Sample After Value...... 14 2.3.3 Event Count and Re-run Based on Count...... 14 2.3.4 The Event Count File Format ...... 14 2.3.5 Fixed Counter Support ...... 15 2.4 Usage Examples...... 15 3 Viewing Collected Data ...... 17 3.1 Using vtl to View Sampling Data ...... 17 3.2 Using vtlec to View Sampling Data ...... 17

2 Document Number: 318121-002US

Sampling Collector Command-line Options

Disclaimer and Legal Information INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL® PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL'S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER, AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO SALE AND/OR USE OF INTEL PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT. UNLESS OTHERWISE AGREED IN WRITING BY INTEL, THE INTEL PRODUCTS ARE NOT DESIGNED NOR INTENDED FOR ANY APPLICATION IN WHICH THE FAILURE OF THE INTEL PRODUCT COULD CREATE A SITUATION WHERE PERSONAL INJURY OR DEATH MAY OCCUR. Intel may make changes to specifications and product descriptions at any time, without notice. Designers must not rely on the absence or characteristics of any features or instructions marked "reserved" or "undefined." Intel reserves these for future definition and shall have no responsibility whatsoever for conflicts or incompatibilities arising from future changes to them. The information here is subject to change without notice. Do not finalize a design with this information. The products described in this document may contain design defects or errors known as errata which may cause the product to deviate from published specifications. Current characterized errata are available on request. Contact your local Intel sales office or your distributor to obtain the latest specifications and before placing your product order. Copies of documents which have an order number and are referenced in this document, or other Intel literature, may be obtained by calling 1-800-548-4725, or by visiting Intel's Web Site. Intel processor numbers are not a measure of performance. Processor numbers differentiate features within each processor family, not across different processor families. See http://www.intel.com/products/processor_number for details. BunnyPeople, Celeron, Celeron Inside, Centrino, Centrino logo, Core Inside, FlashFile, i960, InstantIP, Intel, Intel logo, Intel386, Intel486, Intel740, IntelDX2, IntelDX4, IntelSX2, Intel Core, Intel Inside, Intel Inside logo, Intel. Leap ahead., Intel. Leap ahead. logo, Intel NetBurst, Intel NetMerge, Intel NetStructure, Intel SingleDriver, Intel SpeedStep, Intel StrataFlash, Intel Viiv, Intel vPro, Intel XScale, IPLink, Itanium, Itanium Inside, MCS, MMX, Oplus, OverDrive, PDCharm, Pentium, Pentium Inside, skoool, Sound Mark, The Journey Inside, VTune, Xeon, and Xeon Inside are trademarks of Intel Corporation in the U.S. and other countries. * Other names and brands may be claimed as the property of others. Copyright © 2004–2007, Intel Corporation.

This product includes software developed by the Apache Software Foundation (http://www.apache.org). The following software license applies to the software developed by the Apache Software Foundation. Copyright (c) 2000-2004, The Apache Software Foundation. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: Redistribution of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributing in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. The end-user documentation included with the redistribution, if any, must include the following acknowledgment:

"This product includes software developed by the Apache Software Foundation (http://www.apache.org/)." Alternately, this acknowledgment may appear in the software itself, if and wherever such third-party acknowledgments normally appear. The names "Apache" and "Apache Software Foundation" must not be used to endorse or promote products derived from this software without prior written permission. For written permission, please contact [email protected]. Products derived from this software may not be called "Apache", nor may "Apache" appear in their name, without prior written permission of the Apache Software Foundation. THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

The OpenSource GNU C++ runtime library source files can be downloaded at ftp://ftp.gnu.org/pub/gnu/gcc under the terms of the GNU General Public License or the GNU Lesser General Public License as published by the Free Software Foundation. Specific terms are available online at www.gnu.org or alternatively from the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. These links are provided in the hope that they will be useful, but the linked sites are not under the control of Intel(R) and Intel(R) is not responsible for the content of any linked site, or any link contained in a linked site. If you decide to access any of the third party sites linked to this site, you do so entirely at your own risk.

User's Guide 3

Using the VTune(TM) Performance Analyzer Sampling Collector for Mobile Internet Device (MID)

1 Sampling Collector Command-line Options

This chapter details the command-line options of the VTune analyzer sampling collector for MID.

1.1 Generic Collector Options

[-d | -duration ] Specify duration for the sampling collection

Use the –d option to specify duration for the sampling collection. Default is 20 seconds. Set duration to zero to run collection for an indefinite amount of time until it is stopped explicitly with the sep –stop command.

[-nb | -non-blocking] Switch to non-blocking mode

Use the –nb option to switch the sampling command-line collector to non-blocking mode. The collector starts in the background. You regain control after data collection starts. When the sampling collector is in background the default behavior is “blocking”.

[-c | -count] Count selected events

Use the –c option to count the selected events. The event counting results are available in the output file with a .txt extension. This is the format of the XXX.txt file: event, cpu #, count, duration

Where each event or processor has a separate line.

[-ce | -count-emon] Count selected events in EMON style

4 Document Number: 318121-002US

Sampling Collector Command-line Options

[-ce | -count-emon]

Use the –ce option to count the selected events and output in EMON style, using the equivalent of the –q and –u switches in EMON (terse mode). Use the –out option to specify the output file. The format of the output is: Event Timestamp Count (cpu0) Count(cpuN)

Where each event has its own line and the count for each processor is printed after the current timestamp. This is followed by a line with the total/user/system/idle times taken by each run. All fields are tab separated. Events of different runs are be separated by a row of dashes (-).

You can also use this option with the –si option to perform interval counting. The value specified after the –si option is the length of the interval (in milliseconds). When interval counting is specified, the output for each interval is in the same format as specified above, except the count value for each processor is the counts collected since the last interval (not cumulative). Each interval is separated by a row of equal signs (=). After the counting duration has elapsed, the cumulative count values are displayed at the end, with an additional row of dashes (-) separating between the last interval and the cumulative values.

[-rc | -rerun-based-on-count] Run to calculate Sample After value

Use the –rc option to set the sampling collector to generate event count information and uses that information to calculate a reasonable Sample After Value (SAV) for each event.

After calculating the SAVs, the sampling collector reruns the data collection, using the calculated SAVs, and collects samples.

[-si | -sampling-interval ] Specify the amount of time between samples

Use the –si option to specify the amount of time between collected samples. In Time- based sampling (TBS), the actual time between samples is dictated by OS dependencies. In Event-based sampling (EBS) mode you can use the -rerun-based-on-count option to have the sampling collector determine a sample-after value, which is used to calculate average number of samples to collect per second, per event. Default is 1 ms.

This option can also be used to enable interval counting in EMON output mode. See –ce |count-emon option for more information.

User's Guide 5

Using the VTune(TM) Performance Analyzer Sampling Collector for Mobile Internet Device (MID)

NOTE: TBS is not supported on *.

[-sb | -sample-buffer-size ] Specify the buffer-size for storing sample data

Use the –sb option to specify size of buffer to store samples in before saving them to disk. Default is 2000KB.

[-sd | -sampling-delay ] Specify delay of data collection

Use the –sd option to specify number of seconds to delay sampling while your application is being executed. Default is 0 sec. Start delay is a separate time interval that is not a part of duration. For example, if you have an Activity with duration of 60 seconds and a start delay of 10 seconds, the sampling collector starts collecting samples after 10 seconds and runs for 60 seconds taking a total time of 70 seconds.

[-msc | -max-samples-to-collect ] Specify a total of samples to collect before stopping data collection

Use –msc to specify the total number of samples to collect before stopping data collection. Default is 'no maximum'.

[-sm | -sampling-method ] Select event or time-based sampling

Use the –sm option to choose between time-based (TBS) and event-based sampling (EBS). Default is ebs.

NOTE: TBS is not supported on Linux*.

[-sp | -start-paused] Start data collection in paused mode

Use the –sp option to start data collection in pause mode. To resume collection use the – resume option.

6 Document Number: 318121-002US

Sampling Collector Command-line Options

[-cm | -cpu-mask <”text to specify the cpu mask”>] Specify what processors to collect data from

Use the –cm option to specify a cpu-mask that defines the processors that you wish to collect data from. Enter the processor numbers or processor ranges separated by commas. For example: -cm <2-5,10, 12-14>

In this example the only following processors are sampled: 2, 3, 4, 5, 10, 12, 13, 14

[-out | -output-file ] Specify the file name for the output file

Specify the base file name of the output file where the data is collected. The sampling collector appends an extension that is appropriate for the type of sampling/counting that is collected. For a sampling run it will append .tb5 and for a counting run it will append a .txt).

If the option is not specified, then the output file(s) name will be chosen randomly. In the case of multiple runs, in addition to the above, the output sampling file name is extended to indicate each run number.

For example, the name foo is saved as foo_001.tb5, foo_002.tb5.

[-of | -options-from-file ] Read the sampling collector options from a file

Use the –of to specify a file from which to read the sampling options. The collector reads the options from the specified file and applies them.

The options specified in the file use the command line options. The options can be specified in the same line or multiple lines.

For example, this is the content of my_clocks.txt:

-d 10 -ec Clockticks:sa=1000000 -out clock_out

You can get the same results using the following two commands:

User's Guide 7

Using the VTune(TM) Performance Analyzer Sampling Collector for Mobile Internet Device (MID)

sep –start -of my_clocks.txt

Or, sep -start -d 10 -ec Clockticks:sa=1000000 -out clock_out

NOTE: The command-line options take precedence over the options from a file.

[-app ] Specify the application to be launched for data collection

Specify the application to be launched with the sampling collector. You need to specify the full path to the application.

The application will not be launched if the sampling session is configured to have multiple runs, either through the –rerun…|-rc command or by having events that cannot be collected simultaneously in a single run.

NOTE: The –d | -duration option is not supported with this option. The sampling data collection continues indefinitely until the launched application terminates or the collector is stopped explicitly with the sep –stop command.

[-em | -event-multiplexing] Enable event multiplexing

Use the –em option to enable event multiplexing. Event multiplexing is the ability to sample multiple groups of events within a single sampling run.

The event multiplexing works in the Timer mode. When using this mode, the sampling collector collects data at specific time intervals. You can define the time interval (dts) and the list of events to be counted. If dts is not specified, the default is 50 milliseconds.

For example: sep -start -em dts=100 -ec "Instructions Retired (Flex)", "Branch Instructions Executed", "Clockticks (Flex)", "L2 Cache Request Misses"

This sampling run collects samples of the following events every 100 milliseconds: Instructions retired (Flex). Branch Instructions Executed, Clockticks (Flex), and L2 Cache Request Misses.

8 Document Number: 318121-002US

Sampling Collector Command-line Options

1.2 Event Specific Options

This section describes the options for selecting events.

[-ec | -event-config Configure the events that are sampled

Event configuration options begin with –ec | -event-config switch. Specify the event(s) to monitor and embed the event names within single quotes(‘).

The [:modifier=val] option enables you to specify individual event modifiers along with the respective values for a given platform.

The modifiers can be generic to an event as well as specific to a constraint (or an event qualifier). The constraint specific special modifiers appear after [/constraint=]. The modifier values can be in decimal or hexadecimal format. Only specific modifiers accept the value as a string.

Each event specification is delimited by a comma (,).

[-dc | -data-config Configure the data that is collected

A –dc | -data-config clause can be specified in the –ec switch. The –dc clause allows you to specify an additional list of data values to be collected with every sample. An example of such data is ‘power-states’. Specifying ‘-dc power-states’ enables the collection of power states on systems support power-states.

If the –dc clause is specified with an event-name in the switch, the optional data values are collected only when that particular event is sampled. But if -dc is specified without an event name, it applies to all the events sampled during a collection. The current version of the VTune analyzer sampling collector supports only the latter usage mode.

The -dc clause does not affect data values which are collected by default during a sampling collection. For example, ip address and timestamp values are always collected at every sample.

User's Guide 9

Using the VTune(TM) Performance Analyzer Sampling Collector for Mobile Internet Device (MID)

Syntax [-ec | -event-config [-dc | -data-config ,… ] '':modifier1=val:modifier2=val/constraint1={:modifier3=val:modifier4=va l}, ''...]

The optional data values are listed in a section below.

1.2.1 Generic Event Modifiers

:sa | sample-after =

Sample After Value (SAV) for the event, indicates the number of events after which a

sample is collected. See Calculating9 Sample After Value for information on how to compute SAV. Following is an explanation of how to compute SAV. The following are modifiers by processor.

The values for the following attributes can be either in hex or decimal format.

1.2.2 Event Modifiers for P6 Processor Family

The following table lists the event modifiers for the P6 processor family and provides a short description of each modifier.

10 Document Number: 318121-002US

Sampling Collector Command-line Options

Table 1: Event Modifiers for the P6 Processor Family

Modifier Description

Event_Select= Selects event to be monitored

UMASK= Unit Mask, further qualifies the selected event.

USR= Specifies that events are counted only when the processor is operating at privilege levels 1,2 or 3. This flag can be used in conjunction with the OS flag.

OS= Specifies that events are counted only when the processor is operating at privilege level 0. This flag can be used in conjunction with the USR flag.

E= Enables edge detection of events.

PC= Enables toggling PMi pins.

INT= Enables APIC interrupt.

EN= Enables performance monitoring counters.

INV= Inverts the result of the counter-mask comparison when set, so that both greater than and less than comparisons can be made.

CMASK= Enables counter mask.

PRECISE= Enables the PEBS feature for the PEBSable event.

NOTE: PEBS feature is available only on the Intel® 64 architecture running on Intel processors code-named Silverthorne.

Table 2: Event Modifiers for the Intel processor code-named Silverthorne

Modifier Description

ANYTHR= Enables counting to continue while in any processor thread on the core is in C0 power state.

User's Guide 11

Using the VTune(TM) Performance Analyzer Sampling Collector for Mobile Internet Device (MID)

2 Using the VTune Analyzer Sampling Collector for Mobile Internet Device (MID)

This chapter explains how to use the command-line sampling collector for Mobile Internet Device (MID).

2.1 Starting Data Collection

When a sampling collection is started (using sep –start) the default behavior of this call is blocking. This means that the control is returned back to you only after the sampling collection finishes.

2.1.1 Output

A successful EBS run gives the following message: SEP is collecting samples based on the following events

An unsuccessful run gives the following message: SEP failed to start sampling collection due to one of the following reason(s):

2.2 Duration Considerations

The following sections explain several considerations on the duration of a sampling activity.

2.2.1 Pause

When a sampling run is paused (using sep –pause), the duration of the run does not change. For example, if a sampling run is started for duration of 60 seconds and it is paused after approximately 20 seconds, then the sampling activity will still complete after 60 seconds, but the data is only collected during the first 20 seconds before it was paused.

12 Document Number: 318121-002US

Using the VTune Analyzer Sampling Collector for Mobile Internet Device (MID)

2.2.2 Start Delay

Start delay is a separate time interval that is not a part of duration. For example, if you have an activity with duration of 60 seconds and a start delay of 10 seconds, then the sampling collector will start collecting samples after 10 seconds and run for 60 seconds taking a total time of 70 seconds.

2.2.3 Zero Duration and Multiple Runs

When you set zero duration, this means that the sampling collector continues to run sampling indefinitely. In this case the sampling activity should not have multiple runs.

The sampling collector needs to run the collection multiple times for the following reasons: • The events selected cannot be grouped in a single run. It requires multiple runs to sample all the events. • –rc | -rerun-based-on-count option is chosen. This at least runs the collection twice; once to get a count of the events seen during the run and the second for the actual data collection using the event counts from the first run to help generate sample after values.

Therefore, zero duration is not allowed in multiple-run collections.

2.3 Data Collection Considerations

2.3.1 Starting Applications with the Sampling Collector

The sampling collector enables launching an application using -app switch. The sampling collector starts the workload and collects data until the application finishes (or is forcibly terminated) or the collector is stopped explicitly using sep –stop command.

In general, an activity can be controlled using one of the following methods, but not both:

• Duration: the sampling collector runs for the specified duration. An asynchronous session can be started by specifying zero duration. • Application: When launched an application with the sampling collector, the collector will run until the app is running. The data collection session will only be stopped once the app terminates or the session is explicitly stopped with sep -stop.

Following are some additional restrictions of this usage model: • When the sampling collector is explicitly stopped, it will not terminate the application on your behalf. In general, the sampling collector will only launch the application but never forcibly terminate it.

User's Guide 13

Using the VTune(TM) Performance Analyzer Sampling Collector for Mobile Internet Device (MID)

• An application can only be specified if the collector is configured to have a single run. In the case of multiple runs (either due to –rc |-re-run-based-on-count option or selected events cannot be grouped in one run), the application launch option will not be valid.

2.3.2 Calculating Sample After Value

The VTune analyzer sampling collector initially computes a default sample after value (SAV) for the default events (Clockticks or CPU Cycles and retired instructions) as follows:

SAV for default events = CPU frequency * sample interval in microseconds.

To calculate the sample after value for any event, do the following: 1. Calculate the targeted (or expected) number of samples: Targeted Number of Samples = (Sampling Duration / Sampling Interval) * Number of processors 2. Calculate the average number of event counts for a single processor Avg. number of event counts = Total event counts across all CPUs / Number of CPUs 3. Finally, compute the sample after value (SAV) as Sample After Value (SAV) = Average number of event counts (as in 2) / Targeted number of samples (as in 1).

The minimum value for SAV is 1. The sample after value should not be zero or a negative value.

2.3.3 Event Count and Re-run Based on Count

When the -count option is specified, a file with *.txt extension (XXX.txt) is created and all of the counts for that sep -start -count session (which may have multiple runs) are appended to the file. Even when a sampling activity generates multiple tb5 files, it will always generate only one XXX.txt file, per sampling session. A duration of 0 is allowed for the -count (without the [-rc | -rerun-based-on-count] option) and a single run as the XXX.txt output file can be written at the time of sep -stop.

The zero duration/multiple run restriction also applies to the -count option as it is for a regular sampling run.

2.3.4 The Event Count File Format

When the –count option is specified, the sampling collector generates a file. This file contains the count information for all the events, selected across all the runs, in a session. Only one file will be generated per sampling session. The count file contains two types of output: informational and data.

14 Document Number: 318121-002US

Using the VTune Analyzer Sampling Collector for Mobile Internet Device (MID)

• Each informational output always starts with #sep: keyword as the first argument ($1 Perl notation). The next keyword in the informational output represents the type of the information. • Currently the supported informational output types are the following: o version -- version of the sampling collector o header -- format of the event count data o date – date and time when the session was initiated (may not be available for v1) • The event count data follows after the informational output. The format of the data output should be specified in the informational output (mostly in the “header” keyword).

2.3.5 Fixed Counter Support

On the Intel processor code-named Silverthorne, three fixed counters are implemented to count CPU_CLK_UNHALTED.CORE ("Clockticks"), INST_RETIRED.ANY ("Instructions Retired"), and CPU_CLK_UNHALTED.REF ("Referenced Cycles") respectively. When one or more of these three events are specified in the event configuration, the corresponding fixed counters are used. The two general counters are still available for counting other PMU events. Therefore, you can count up to five events in a single run: three fixed events and two general events.

In the following example, the sampling collector counts all five events in a single run:

sep -start -d 20 -ec "CPU_CLK_UNHALTED.CORE", "INST_RETIRED.ANY", "CPU_CLK_UNHALTED.REF", "DTLB_MISSES.ANY", "MEM_LOAD_RETIRED.L2_MISS" -out myData

2.4 Usage Examples

This section provides several sample command lines demonstrating the usage of the sampling collector.

Table 3: Command Usage

Operation Command line

Start data collection sep -start <”collector options”>

Pause data collection sep [-pause]

Resume a paused data sep [-resume] collection session

Stop data collection sep [-stop]

get the list of events sep [-el | -event-list] supported on the platform

User's Guide 15

Using the VTune(TM) Performance Analyzer Sampling Collector for Mobile Internet Device (MID)

Get help sep [-help | /?]

Get version or build sep [-version] information

16 Document Number: 318121-002US

Viewing Collected Data

3 Viewing Collected Data

To view the data collected on an MID Linux platform, another non-MID Linux platform supported by the VTune analyzer 9.0 Update 6 is required (see the product Release Notes for the list of supported platforms). Install the VTune analyzer 9.0 Update 6 on the non- MID Linux platform and select between using viewers from VTune analyzer command-line tool (vtl) or Eclipse* GUI tool (vtlec).

On the MID Linux machine, collect data using the command-line sampling collector. For example:

sep -start -d 10 -out myData

This generates a sampling data file myData.tb5. The next step is to copy the tb5 file to the non-MID machine for importing.

3.1 Using vtl to View Sampling Data

To import and view the data with the vtl command-line tool, copy the tb5 file to the non- MID Linux machine and use the following commands:

vtl import myData.tb5 # imports the tb5 file into a new Activity

vtl show # shows list of imported Activities

vtl view -ar f1 -processes # opens the process view in text mode for Activity f1

vtl view -ar f1 -gui # shows results in GUI mode for Activity f1

man vtl # opens the manual page for vtl

3.2 Using vtlec to View Sampling Data

To import and view the data with the vtlec GUI tool, do the following:

User's Guide 17

Using the VTune(TM) Performance Analyzer Sampling Collector for Mobile Internet Device (MID)

1. Copy the tb5 file to the non-MID Linux machine.

2. Start up vtlec.

3. Go to File->Open File... and specify the tb5 file to import. This creates a new project icon in the Tuning Browser window in the Eclipse workspace.

4. Double-click the imported sampling results icon to view the tb5 data.

NOTE: When drilling down to hotspots or sources in vtl or vtlec, you may need to copy additional files (for example, application binaries, libraries, source codes) to the non-MID machine.

18 Document Number: 318121-002US