zoukankan      html  css  js  c++  java
  • Python时间性能测量

    主要有以下三种方式:

    一,CPU时间

    time.clock()

    测量CPU时间,比较精准,通过比较程序运行前后的CPU时间差,得出程序运行的CPU时间。

    二, 时钟时间

    time.time()

    测量时钟时间,也就是通常的类似掐表计时。

    三,基准时间

    timeit.timeit(stmt='pass', setup='pass', timer=<default timer>, number=1000000)

    简短示例:

    timeit(“math.sqrt(2.0)”, “import math”)

    timeit(“sqrt(2.0)”, “from ,math import sqrt”)

    timeit(“test()”, “from __main__ import test”, number = 10000)

    示例(示例中的三个方法都是求解一个数的因子数的个数)

    CPU时间的示例:

    Code1


     

    结果:最快的是方法三,方法二和方法一,其实不相上下.

    Result1


     

    时钟时间示例:

    Code2


     

    结果:

    Result2


     

    在精度不够的情况下,都无法得知,方法三真正的运行时间.

    真的想知道,方法三比方法一或者二快多少倍,还是要使用timeit。timeit可以重复执行代码一定次数,这样更加稳定的反应程序的执行时间,不会因为一次的执行而产生较大的误差。

    Code3


     

    结果:

    Result3


     

    通过timeit可以看出,方法二基本和方法一的性能是相同的。timeit返回是时钟时间。方法二,基本是方法三耗时的130倍左右。

  • 相关阅读:
    【扯淡篇】SDOI2018丶一轮游丶记
    初来乍到, 多多包涵~
    【学术篇】The Xuanku Inversion Magic学习笔记
    【模板篇】树状数组(六)
    【学术篇】CF932E Team Work && bzoj5093 图的价值
    【模板篇】NTT和三模数NTT
    【学术篇】CF833B TheBakery 分治dp+主席树
    【学术篇】NOI2015 品酒大会 后缀数组+并查集
    【模板篇】数论大杂烩~
    【学术篇】SPOJ GEN Text Generator AC自动机+矩阵快速幂
  • 原文地址:https://www.cnblogs.com/herbert/p/3395268.html
Copyright © 2011-2022 走看看