小编Ans*_*eek的帖子

python - 性能差异

以下是我的功能定义

def func_a():
    return 1

def func_b(val1):
    return val1*2
Run Code Online (Sandbox Code Playgroud)

这是调用函数的一种方法:

count = 0
while count < 10000000:    
    val2 = func_b(func_a())
    count += 1
Run Code Online (Sandbox Code Playgroud)

以上时间是:

real    0m5.003s
user    0m4.989s
sys 0m0.012s
Run Code Online (Sandbox Code Playgroud)

对于具有相同功能定义的以下用法:

count = 0
while count < 10000000:    
    ret1 = func_a()
    val2 = func_b(ret1)
    count += 1
Run Code Online (Sandbox Code Playgroud)

所花的时间是

real    0m5.502s
user    0m5.414s
sys 0m0.010s
Run Code Online (Sandbox Code Playgroud)

我做了大约10次运行,两者之间的实时差异总是~300-500 ms.

系统时间通常只有约1-2毫秒不同.(最大约10毫秒).

我工作的应用程序处理大约60-90k的交易,具有亚毫秒级的性能,所以这对我来说很重要.为什么两次调用之间有这么大的差异?

编辑注意:问题修改后,以下答案现在没有多大关系,请参阅原始问题的问题编辑.

python performance

0
推荐指数
1
解决办法
157
查看次数

标签 统计

performance ×1

python ×1