Python 3.x 计算机处理速度的差异

Python 3.x 计算机处理速度的差异,python-3.x,Python 3.x,我一直在试图找出我的一个算法需要多少时间才能工作。 为此,我构建了一个简单的python脚本(我认为我在这个alg中有一个愚蠢的方法,没有进行太多测试): 如果不做进一步的分析,我会情不自禁地注意到这个结果有很大的差异。它是从哪里来的?你考虑过使用吗?我的问题不是如何计算我的计算机的速度,而是为什么我得到的结果不一致,你没有证明有23%的差异;你们已经演示了几百毫秒的差异。当你运行它时,一次需要100小时,第二次需要123小时,那么你已经显示出23%的差异!如果您想更好地理解这一点,您应该做的是

我一直在试图找出我的一个算法需要多少时间才能工作。 为此,我构建了一个简单的python脚本(我认为我在这个alg中有一个愚蠢的方法,没有进行太多测试):


如果不做进一步的分析,我会情不自禁地注意到这个结果有很大的差异。它是从哪里来的?

你考虑过使用吗?我的问题不是如何计算我的计算机的速度,而是为什么我得到的结果不一致,你没有证明有23%的差异;你们已经演示了几百毫秒的差异。当你运行它时,一次需要100小时,第二次需要123小时,那么你已经显示出23%的差异!如果您想更好地理解这一点,您应该做的是运行100个测试。十次使用
n我在这里得到的是,你的计算机思维模型就像一个完美的工人,每次你问的时候都做同样的事情。事实并非如此。这更像是一个疯狂活动的蚁丘,数千个几乎不协调的进程都在努力完成自己的工作,而操作系统和硬件几乎无法阻止它们相互残杀。在这样的环境中,您不应该期望在小范围内实现重复性。
import time

n=0
x=[]
for k in range(1,10):
    begin = time.time()
    while  (n<1E7):
        n+=1
    end = time.time()
    x.append(end-begin)
    print(x)
    n=0
print(x)
[2.755953550338745, 2.234074831008911, 2.719917058944702, 2.4802486896514893, 2.8635189533233643, 2.7834832668304443, 4.048354387283325, 3.454935312271118, 3.3593692779541016]