【问题标题】:Profiling Native C++ WinCE App Built with Visual Studio 2008分析使用 Visual Studio 2008 构建的本机 C++ WinCE 应用程序
【发布时间】:2009-07-24 15:35:45
【问题描述】:

我有一个本地 C++ 应用程序,我需要对其进行分析以诊断性能问题。我可以为 WinCE 找到的唯一分析器是 Remote Call Profiler,它需要使用 Platform Builder 构建应用程序,以便可以在其中编译检测挂钩。

我的应用程序是用 VS2008 构建的。有什么建议吗?

【问题讨论】:

    标签: performance windows-mobile windows-ce


    【解决方案1】:

    感谢您的回答。我已经完成了其中的一些建议。然而,后来我知道我错了。使用 VS2008 构建的应用程序可以与 Remote Call Profiler 一起使用。

    1. 将 /callcap 添加到编译步骤。
    2. cecap.lib 中的链接(来自 Platform Builder)

    【讨论】:

      【解决方案2】:

      我还没有找到分析 CE 应用程序的方法;我使用蛮力方法。以下是我的建议:

      1) 避免在时间要求严格的代码中使用除法和浮点运算,因为它们不是旧 ARM 处理器的本机指令。一个简单的整数除法会变成 100 个时钟的运行时库代码,浮点运算甚至更慢。

      2) 用汇编语言编写“内循环”代码,因为编译器做得不好。

      3) 使用内部计时器(GetTickCount 在 WinCE 上的分辨率为 1ms)为自己的函数计时。

      4) 有选择地启用/禁用代码部分以衡量每个部分花费的时间。

      希望这会有所帮助, L.B.

      【讨论】:

        【解决方案3】:

        您使用的是特殊的 WinCE API 还是第 3 方库?因为您可以尝试为 Win32 编译您的应用程序,并且在该平台上您有更多的分析选项。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2012-03-25
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-05-25
          • 1970-01-01
          相关资源
          最近更新 更多