gpt4 book ai didi

python - time.clock() 会受到系统状态的严重影响吗?

转载 作者:行者123 更新时间:2023-11-28 18:56:27 25 4
gpt4 key购买 nike

这是一个相当笼统的问题:

我遇到的问题是 time.clock() 测量的相同操作现在比以前花费的时间更长。

虽然我有一些非常相似的测量结果

  • 1954
  • 1948
  • 1948

一个稍微不同的测量

  • 1999

另一个更不一样

  • 2207

它似乎或多或少还不错,但对于另一个我得到了

  • 2782

现在我正在重复测量,它似乎变得越来越慢。

我不会在四舍五入或进行其他奇怪操作后对测量结果求和。

您是否知道这是否会受到服务器繁忙程度、时钟速度或任何其他可变参数的影响?我希望使用 time.clock() 而不是 time.time() 将主要解决这些问题......

操作系统是Ubuntu 18.04.1 LTS

操作在单独的 screen session 中运行。

操作涉及硬盘访问。

操作大多是非分布式的numpy操作。所以这实际上主要是在执行 C 代码。

编辑: 这可能是相关的:time.time()time.clock() 中的测量在任何情况下都非常相似个案。即 time.time() 测量总是比 time.clock() 稍微长一点。因此,如果我没有遗漏任何东西,则原因对 time.clock() 的影响与对 time.time() 的影响几乎完全相同。

编辑: 我认为我的问题没有得到解答。我能想到的另一个原因是垃圾收集会增加 CPU 使用率,并且当 RAM 已满或即将满时会更频繁地进行垃圾收集。

主要是,我正在寻找一种替代措施,为完成的相同操作提供相同的数字。操作意味着我的算法以相同的开始状态执行。有没有简单的方法来计算 FLOPS 或类似的方法?

最佳答案

这个问题似乎与 Python 和 Ubuntu 有关。

尝试以下操作:

  • 检查您是否拥有正在使用的 python 版本的最新稳定版本 Link 1

  • 检查进程列表,同时查看您的 python 可执行文件在哪个 cpu 内核上运行。

  • 检查 cpu 上的线程优先级状态 Link 2, Link 3

注意:

  • 时间可能因进程切换、线程和其他 OS 资源管理以及应用程序代码执行而有所不同(这是无法控制的)

建议:

  • 这可能是因为您的系统构建,请尝试在另一台机器或虚拟机上运行您的代码。

阅读:

祝你好运。

~ 范格南院长

关于python - time.clock() 会受到系统状态的严重影响吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57857413/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com