jeeyong
2016-12-04 23:44:14 +08:00
我觉得是主频的问题吧?
另外,如果空循环,其实只是建立了一个很大的列表吧。。
在内存都足够大的情况下,谁建立的更快
就是主频的问题了吧,与核心数没关系。
然后再分析结果的话。
第一台机器,主频快,但是比第二台的结果快的并不明显,我觉得主要问题在于他的内存时 64gb , 在创建列表的时候,内训寻址时间上消耗了一部分。
第三台机器的主频最高,架构差异并没有那么大
而这段代码影响性能的就是 cpu 的主频。
所以第三台机器理所应当的最快
其次第一,然后第二台
一个猜想,如果把第一台机器的内存缩小到 4gb 的话。可能会再快一点。执行结果
以上为第一种猜想
第二种有点扯,但不排除
楼主用的是 time.time().....严格来说这个不准确。
如果某台机器有更多的后台应用占用 cpu 。。。这个结果就没有太大的参考价值了
改用 time.clock()
我常用的测试性能的方法。
s = time.clock()
i = 100000000
while i > 0:
i -= 1
print s - time.clock()