【问题标题】:Why Matlab documentation recommends not using cputime?为什么 Matlab 文档建议不要使用 cputime?
【发布时间】:2014-07-03 01:23:14
【问题描述】:

cputime 的 Matlab 文档中,它说:

虽然可以使用 cputime 来衡量性能 函数,建议您使用 tic 和 toc 函数 专门用于此目的。这已成为一般规则 CPU 密集型计算在 Microsoft® Windows® 机器上运行, 使用 cputime 的经过时间和使用 tic 和 toc 的经过时间 价值接近,忽略任何首次成本。有案例 但是,这表明这两种方法之间存在显着差异。 例如,对于运行超线程的 Pentium 4 Windows,值之间可能存在显着差异 由 cputime 与 tic 和 toc 返回。

我有一个运行 linux 的 Intel Core i5。我想测量一个 Matlab 脚本的 CPU 时间。 tictoc返回实时,受系统中运行的其他进程影响。我应该使用cputime吗?

注意:在文档中它还说cputime 在达到内部表示限制时会溢出并回绕。这不会影响我,因为我知道我的程序执行时间比内部表示限制短。

【问题讨论】:

    标签: performance matlab


    【解决方案1】:

    Tic 和 Toc 是常用的函数,因为它们提供更好的分辨率,这对于定时小型计算很重要。

    为了解决其他进程在系统资源使用方面的差异问题,您可以运行被分析的计算足够多的次数,以便平均结果可以消除噪音。

    如果计算非常小,您可以在每对 tic 和 toc 调用之间循环运行它。这个内循环的大小可以通过指定所需的 tic-toc 对的运行时间并增加内循环大小直到实现来通过实验确定。

    【讨论】:

      猜你喜欢
      • 2016-04-09
      • 2013-08-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多