sysperfana/perfinvestigator/com.nokia.carbide.cpp.pi.doc.user/html/tasks/analyser/an_load_trace_files.htm
author Toni Pulkkinen <ext-toni.p.pulkkinen@nokia.com>
Wed, 23 Jun 2010 15:05:09 +0300
changeset 12 ae255c9aa552
parent 5 844b047e260d
permissions -rw-r--r--
Performance Investigator Carbide extension 2.4.0

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
  <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
  <title>Importing Profiler Data Files</title>
  <link href="../../../book.css" rel="stylesheet" type="text/css">
</head>

<body>
<h2>Importing Profiler Data Files</h2>

<p>After capturing run-time information from your application on the target
device, saving the profiler data file, and transferring the file to your PC,
you must then import the profiler data (.dat) file. Importing the data file
converts the file into a format that can be displayed by the analyzer (a .NPI
file).</p>

<p class="note"><strong>NOTE</strong> You do not necessarily need to collect
the performance data by using PI Profiler on the device, but you can also do
profiling remotely, directly from the PI Wizard in Carbide.c++. For more
information, see <a href="collect_prof_data_remotely.htm">Collecting Profiler
Data Remotely</a>.</p>

<p>Importing a profiler data file will vary depending on if your application
was built by Carbide.c++ or is a standalone application. To find the binaries
in your application, the importer will need the *.pkg file created when your
application was built, or you will need to list all application binaries. If
you wish to analyze applications that execute at a static address, you will
need the ROM image .symbol file that represents your phone. For dynamically
loaded binaries stored in a phone&rsquo;s ROFS or ROM, a .oby file can be used
to describe and list binaries.</p>

<p>Unless your application executes from a fixed address in phone memory (e.g.,
is part of the flashed phone image), enable dynamic binary support in the
Profiler application when capturing your application data in a profiler data
file.</p>

<p class="note"><strong>NOTE</strong> If a large .dat file is imported, the
graph and table response time will slow down until the large NPI file is saved.
Saving the NPI file will be performed in the background and cannot be
canceled.</p>

<p>To import your profiler data file, perform the following steps.</p>

<div class="step">
<h4>Importing a Profiler Data File</h4>
<ol>
  <li><a name="Select_Performance_Investigator_Data"></a>Start the import
    wizard form the Carbice.c++ toolbat by selecting <strong>Carbide</strong>
    &gt; <strong>Performance Investigator</strong></li>
  <li><a name="Select_Profiler_Data_File"
    id="Select_Profiler_Data_File"></a>Select Profiler Data File(s) 
    <p>First use the radio buttons and select to get profiler data <strong>From
    File System</strong>. </p>
    <p class="note"><strong>NOTE</strong> Use the <strong>From Device via
    TraceViewer</strong> option if you want to collect new profiler data
    remotely from the device. For more information, see <a
    href="collect_prof_data_remotely.htm">Collecting Profiler Data
    Remotely</a>.</p>
    <p>Select .dat file(s) to the <strong>From File System</strong> list by
    selecting either</p>
    <ul>
      <li><strong>Add File</strong> and browsing to the file, or</li>
      <li><strong>Add Directory</strong> and browsing to the directory you want
        to import files from.</li>
      <li>Use the <strong>Remove</strong> button to remove one file from the
        list, or</li>
      <li>Use the <strong>Remove All</strong> button to clear all files from
        the list.</li>
    </ul>
    <p>The .dat file(s) will be converted to a format displayable by the
    Carbide.c++ analyzer and assigned the .npi extension. </p>
    <p>After selecting the file, the <strong>PI views included in the
    analysis</strong><strong>for <em>filename</em>.dat</strong> table will
    display a list of available views, according to the trace types available
    in the selected .dat file. </p>
    <ul>
      <li>By default, all available trace types in the table are selected, so
        you can de-select the types you do not wish to include in the analysis.
        The CPU load view is a mandatory analysis and cannot be
      de-selected.</li>
      <li>The trace types/views are selected separately for each .dat file.</li>
    </ul>
    <p>After selecting the files and views, click <strong>Next</strong> to
    continue. </p>
    <p align="center"><img src="images/CB_import_step2.png"></p>
    <p align="center" class="figure">Figure 2. Select Profiler Data File</p>
  </li>
  <li><a name="Select_Known_Available_Information"></a>Select Known Available
    information 
    <p align="left">Use the <strong>Available Information</strong> page to
    choose how the profiler session is imported. The options include:</p>
    <ul>
      <li>Project importer &mdash; select this option if you have a Carbide
        project that has a PKG file or if you have a standalone PKG file (a PKG
        file that has absolute paths)</li>
      <li>Project and ROM importer &mdash; select this option if you have both
        a Carbide project / package file for the profiled application as well
        as the ROM image symbol file and OBY file for the profiled device </li>
      <li>ROM importer &mdash; select this option if you have the ROM image
        symbol file and the OBY file for the profiled device</li>
      <li>Unknown importer &mdash; select this option when you have neither a
        project or a ROM image </li>
    </ul>
    <p align="left">Click <strong>Next</strong> to continue.</p>
    <p align="left" class="note"><strong>NOTE</strong> You can also click the
    Finish button (if enabled) to fill in the remaining wizard pages with
    persisted values from the last .dat file import. In a new workspace or
    first time a workspace is used, you will need to define related information
    in remaining pages, since there is no previous import related to the new
    workspace. For a new imported .dat file, a new output file name will be
    generated based on this input file name (+ (digit) + .npi).</p>
    <p align="center"><img src="images/importdatfile_step3.png"> </p>
    <p class="figure">Figure 3. Enter known Available Information</p>
  </li>
  <li><a name="ROM_files"></a>If <strong>Both</strong> or <strong>the ROM image
    symbol file</strong> option is selected, the <strong>Select build files
    from ROM</strong> dialog appears. (optional) </li>

  <p>Use the <strong><a
  href="../../reference/analyzer/import_rom_build_files.htm">Select build files
  from ROM</a></strong> dialog to select the build files that correspond to the
  ROM on the device. Start by selecting the SDK, then the ROM OBY file as well
  as the ROM symbol file. When done, click Next. </p>

  <p align="center"><img src="../../images/wnd_import_rom_build_files.png"></p>

  <p class="figure">Figure 4. Select build files from ROM dialog</p>
  <li><a name="Select_Associated_Project_and_Package"></a>Select Associated
    Project and Package (.pkg) File 
    <p align="left">Use the Associated Project and Package (.pkg) File page to
    select one or more projects to associate with the imported .dat file as
    well as choosing its project configuration. Use the Add PKG File control to
    add a .pkg file during the import operation or the Remove PKG Files control
    to remove a PKG file from the imported profiler session. Click
    <strong>Next</strong> to continue.</p>
    <p align="center"><img src="images/import_dat_file_step4.png"></p>
    <p align="center" class="figure">Figure 5. Enter Associated Project and
    Package (.pkg) File Information</p>
  </li>
  <li>Select Key Press Mapping Profile (requires button trace information)</li>

  <p>If the DAT file has button trace enable, the <b>Select Key Press Mapping
  Profile</b> page appears. Select either a Carbide builtin Key Map Profile or
  user defined profile (if available) for the target device key map. The key
  map profile selected in the <strong>Window &gt; Preferences &gt; Carbide.c++
  &gt; Performance Investigator</strong> preference panel is highlighted as the
  suggested default. </p>

  <p>A suggested key profile will also be selected if only one ROM kit/SDK is
  selected previously in this import wizard or the profile XML file in the ROM
  kit/SDK contains only one key map profile.</p>

  <p align="center"><img src="images/importdatfile_keyprofile.png"
  alt="keymap profile"></p>

  <p align="center" class="figure">Figure 6. Select Key Press Mapping Profile
  </p>
  <li><a name="Select_Output_File_and_Project"></a>Select Output File and
    Project </li>

  <p>Use the Output File and Project page to import the *.npi file into an
  existing project or create a new empty project. </p>

  <p class="note">NOTE If you used remote profiling for collecting profiler
  data from the device, the original *.dat file will also be included in the
  selected project.</p>

  <p align="center"><img src="images/import_dat_file_step5.png"></p>

  <p align="center" class="figure">Figure 7. Enter Output File and Project
  Information</p>
  <li>Click Finish to create the *.npi file. 
    <p class="note">NOTE Carbide.c++ reserves a large block of memory for the
    Java Virtual Machine (JVM) to run the whole IDE. However, in some cases,
    where Profiler trace log is too long in time and/or CPU load has been
    extensively high over the use case, the trace import process may fail due
    to out-of-memory situation. The out-of-menory may also lead to instability
    issues with Carbide itself, but an error message will be always be shown:
    <strong>Multiple problems have occurred</strong>. Jave heap space.<br>
    This problem can be avoided by keeping the profiled use cases shorter (the
    recommendation is maximum 5 minutes), and by selecting only those Profiler
    plug-ins that are needed for analysing the use case. Shorter use cases (in
    time) and smaller amount of selected profiler plug-ins also ease up the
    analysis phase, since it is easier to a browse shorter set of data and to
    pinpoint the possible performance issues within the trace.<br>
    If you need to analyse longer use cases, there are also other tools
    available for long-period-testing (LPT). For example, you can run the Nokia
    Energy Profiler (NEP) directly on target and it can be used for LPT type of
    use cases.</p>
  </li>
  <li>If <b>Instructions executed</b> has been selected as one of the trace, a
    the dialog below is displayed during PIAnalyser file import (once for each
    file f several are imported): 
    <p align="center"><img
    src="../../reference/analyzer/images/MIPS_speed_dialog.png" alt=""></p>
  </li>
  <li><strong>Performance Investigator</strong> view will open with the
    imported files listed in it. A project will also be opened to the
    <strong>Carbide Project Explorer</strong> including the imported files. 
    <p>If you imported only one file, PIAnalyser will also open showing the
    views selected for that file. If you imported several files, you can open
    any one of them by double-clicking the file name in the Performance
    Investigator view or in the Project Explorer.</p>
  </li>
</ol>
</div>

<p align="left"><strong>Related references</strong></p>
<ul>
  <li><a href="collect_prof_data_remotely.htm"></a><a
    href="../../reference/analyzer/import_rom_build_files.htm">Select build
    files from ROM</a></li>
  <li><a href="collect_prof_data_remotely.htm">Collecting Profiler Data
    Remotely</a></li>
  <li><a href="../../reference/analyzer/main_view.htm">Analyzer View</a></li>
  <li><a href="key_profile_pref.htm">Key Press Profile</a> </li>
</ul>

<div id="footer">
Copyright © 2010 Nokia Corporation and/or its subsidiary(-ies). All rights
reserved. <br>
License: <a
href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a></div>
</body>
</html>