Bada学习-(二十三)Profiler(分析器)

本文译自三星官方bada开发网

Profiler分析器                                

你可以在目标终端或者Emulator 上使用bada IDE中的分析工具来分析应用的执行情况.分析工具可以为你重提应用有多少方法被调用以及应用的执行时间, 还能推算处代码片段最长执行时间.这些信息可用进一步帮助你通过确认代码块的瓶颈来优化你的应用的代码

注意

分析器仅对 C++ 以及 flash 应用可用

要使用分析器,你必须首先在应用中set the profiling options(设置分析选项), 并在 target device(目标终端)  或者 Emulator(模拟器)上运行你的应用.分析结果会在应用运行后显示在IDE的 Profile view(分析视图)中.如果你使用了 gprof 分析选项, 你还可以使用 Gmon File Viewer查看之前运行生成的分析结果.

分析视图

IDE的 Profile view(分析视图)会在下列情况显示:你的应用带有 -p -pg 分析选项时显示,完成一次运行;或者当你使用Gmon File Viewer(Gmon文件查看器)gmon.out 文件中打开生成的分析结果时 

Profile view显示了在应用运行中调用的方法以及他们的摘要信息,例如调用次数以及执行时间.

Profile view 覆盖下列分析信息:

  • Name (location)(名字[位置])

    列出分析的资源文件以及它们的方法.

  • Samples样例

    对方法进行取样统计. 对方法调用的取样每10毫秒进行一次

  • Calls(调用)

    在应用执行时方法被调用的次数.在应用执行时方法每调用一次统计数就会相应增加一次.

  • Time/Call(时间/单词调用)

    方法每次调用的执行时长.

  • %Time(时长百分比)

    每个方法执行时间在应用执行总时间中的百分比

Profile 视图中, 你可以:

  • 按照执行时长对方法进行排序
  • 查看每个方法对应的调用图.
  • 分析结果显示在抽样与时间信息两种显示模式间切换
  • 通过双击需要查看的方法或者文件来查看某个文件的源代码

下图向我们展示了显示在分析视图中的应用分析结果

Figure: Example of the Profile view

Table: Profile view toolbar buttons
Button Description
Expand All(展开所有)
展开所有列表中的方法
Collapse All(折叠)
收起所有列表中的方法
Show/Hide Columns(显示/隐藏列)
在 Profile view中显示或者隐藏列.
Export to CSV(导出到CSV)
将 gprof 结果导出为一个CSV 文本文件. 你也可以以电子表格格式打开这个文件.
Sort samples per file
按照文件排序来显示gprof 结果
Sort samples per function
按照方法排序来显示gprof 结果
Sort samples per line
按照行排序来显示gprof 结果
Display function call graph
按照调用图排序来显示gprof 结果
Switch samples/time
分析结果显示在抽样与基于时间信息两种显示模式间切换
英文原文地址:

http://developer.bada.com/help_2.0/topic/com.osp.documentation.help/html/dev_env/profile.htm

分析应用

如何设置分析选项

你需要使用prof 以及 gprof 分析选项设置你的应用的属性以生成分析信息

步骤:

  1. 在 Project Explorer中,在项目名上点击右键,选择 Properties.
  2. Properties 窗口中,选择 C/C++ Build > Settings.
  3. 在 Configuration 下拉列表中, 选择 Target-Debug 配置.
  4. 在 Tool Settings 选项卡中:
    1. 选择 bada C++ Compiler > Debugging.

      设置分析选项
      要想分析你的应用,同时选中 Generate prof information (-p) 和 Generate gprof information (-pg) 复选框.

    2. 选择 bada C++ Linker > Miscellaneous.

      ${TARGET_LIB_PATH}/libprofiler.so 作为分析器类库添加 到Other objects 面板中.

  5. 点击 Apply以保存设置.

要分析使用低于bada2.0版本API开发的应用,需要包含下面的代码片段到应用的<ProjectName>Entry.cpp 文件中:

    
    
    
    
  • #ifdef _PROFILE
  • extern void start_profile(void);
  • extern void end_profile(void);
  • #else
  • #define start_profile()
  • #define end_profile()
  • #endif
  • Int OspMain(int argc, char *pArgv[])
  • {
  •    ...
  •    start_profile();
  •    r = Osp::App::Application::Execute(<ProjectName>::CreateInstance, pArgs);
  •    end_profile();
  •    ...
  • }

使用Gmon File Viewer查看分析结果

当你使用gprof 选项时,生成的分析信息会在项目文件夹中保存为一个 gmon.out 文件

如果你想在之后查看分析详情,又不想再次运行应用,你就可以使用 Gmon File Viewer 来访问保存的gmon.out 文件. 要使用 Gmon File Viewer, 你必须在bada IDE的plugins文件夹中安装有 gprof plug-in插件.

查看步骤:

  1. 在IDE中, 点击 File > Open File.
  2. 找到gmon.out 文件并点击Open.
  3. Gmon File Viewer: binary file… 窗口, 找到应用的二进制文件,它通常位于项目目录中,然后在下列两个选项中选择一个继续::
    • 如果项目在IDE的工作区中,那么点击 Workspace ,选中文件,并点击OK.
    • 如果项目在你电脑的其它地方,那么点击 File System,选中文件 ,选中文件,并点击 Open.
  4. Gmon File Viewer: binary file… 窗口, 点击 OK.

    Profile view 已打开并显示分析结果

英文原文地址:

http://developer.bada.com/help_2.0/topic/com.osp.documentation.help/html/dev_env/profiling_applications.htm

你可能感兴趣的:(Bada学习-(二十三)Profiler(分析器))