Skip to main content
 首页 » 编程设计

python之python中的计时函数没有给出准确的结果

2025年05月04日1452php

我已经开发了一个签密方案,我想测试模幂运算所花费的时间。我在签密部分使用下面的代码

start = time.clock() 
gamma  =    pow(g , x, p) 
print ('The value of gamma is : '),gamma 
Time_signcrypt = time.clock() - start 

对于解密部分,我正在计算这行代码所花费的时间

start = time.clock() 
seed =  (XA + x - XA)  
gamma_new = pow(g , seed, p) 
Time_new_gamma = time.clock() - start 

问题是使用相同的值,我从两个计时函数得到的结果不同。

Signcryption values:  
0.035299674  
0.025940017  
 
Unsigncryption values:  
0.019342944 
0.01727206 

值应该相同,因为在两端应用相同的函数并使用相同的参数。另一个重要的事情是,在解签密部分,一个步骤是额外的,但所花费的时间仍然少于签密部分。我不知道哪里出了问题,我已经测试了将近 35 次,结果大部分时间都不同 :(

请指教我哪里出错了?

请您参考如下方法:

要为方法计时,请多次运行它们,直到累计时间至少 10 秒,然后将时间除以运行次数。

否则,由于各种原因,时间会很不准确:

  1. 其他获得CPU的进程
  2. 中断在后台运行
  3. 热效应
  4. 宇宙辐射
  5. 你明白了.. ;-)