【问题标题】:Measure CPU / RAM usage of a program测量程序的 CPU / RAM 使用率
【发布时间】:2009-11-17 17:16:55
【问题描述】:

谁能建议一种方法(除了使用任务管理器)来跟踪和记录程序对 CPU 和 RAM 的使用情况以分析其性能?

我在 Windows 下工作。

通用的东西会很有用。更具体的请求解决方案将涉及 Visual Studio。我试过性能向导,但它似乎没有给我我需要的信息。谢谢

【问题讨论】:

  • 您要将性能数据用于什么目的?

标签: windows visual-studio performance


【解决方案1】:

Process Explorer 很有用。

【讨论】:

  • 它是否也提供内存使用?
  • 看起来确实是我要找的东西,但它可以“记录”一个过程或类似的历史吗?
  • Windows 性能工具包(如下所述)构建性能问题记录,并可以捕获问题区域的堆栈跟踪。
【解决方案2】:

您可以使用 perfmon 实用程序来收集各种计数器

【讨论】:

  • 你能记录它的数据还是它只是运行时?
  • 您可以保存计数器值并在以后打开它
【解决方案3】:

嗯,有针对这类事情的已发布 API。您可能想看看WMIWin32_Process 类。

如果您正在寻找可以为您获取这些内容的命令行程序,请使用 tasklistwmic。如果您愿意,可以解析它们的输出。

【讨论】:

    【解决方案4】:

    Microsoft 平台 SDK 包括 Windows Performance Toolkit,它跟踪 CPU、磁盘和内存的使用情况(以及 大量 其他功能)。它非常适合跟踪 CPU/内存使用高峰,以及跟踪笔记本电脑无法睡眠等问题。

    【讨论】:

    【解决方案5】:

    Intel VTune怎么样?

    【讨论】:

    • 我认为 *nix 的顶级免费提供的东西 699 美元对我来说有点太多了,但感谢您的意见!
    • 很公平,我自己并没有真正使用过它,但我想我会把它扔掉:)
    • 对 VTune 一直很苛刻。它不适合这种任务,但也不是“顶级”……
    • VTune 是一款出色的分析工具,可确保您的 CPU 相关代码尽可能快地运行。找出系统速度慢的原因不太有用。
    • @Eric:由于这是stackoverflow,我的假设是他需要找出他编写的程序慢的原因,而不是他的整个系统。否则这属于 serverfault 或超级用户。
    【解决方案6】:

    我将性能测量和发现性能问题以加快程序速度视为两个截然不同的目标。

    对于测量,可以使用分析器或简单的计时器来完成工作。

    如需查找性能问题,请I take an entirely different approach

    【讨论】:

      猜你喜欢
      • 2013-03-05
      • 2010-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多