这不是问题,我只是好奇。在Atom中,在运行了许多测试后,我意识到我创建的每个python程序运行的次数越多,运行速度就越快(它们确实在几次运行后达到了一定的平衡),我只是想知道为什么会发生这种情况。程序不是很大(不超过100行),所以我最好的猜测是,时间的变化可以通过变量的初始构造和一般设置来解释,但我不确定。
对于背景信息,我获取时间的方法是使用rgbkrk的"script“包,它处理输出并记录时间。我认为代码是无关紧要的,因为大量不同类型的测试都会产生相同的结果,所以这里只是一些示例时间:
完成时间为0.641秒,完成时间为0.256秒,完成时间为0.06秒,完成时间为0.049秒,完成时间为0.049秒,完成时间为0.058秒
我不完全确定为什么会发生这种情况,所以一个解释会很有帮助。谢谢。
编辑:代码不是必需的,即使没有任何代码也会发生同样的事情。我打开Atom并运行了几次空文件,同样的事情也发生了(第一次运行后运行时间变快了)。
发布于 2019-06-16 12:28:01
惊人的表观性能可以追溯到您正在运行的特定操作系统如何决定如何在内存中缓存来自(相对较慢的)磁盘的块。在第一次运行时,不会缓存任何内容。在随后的运行中,根据过渡期间操作系统磁盘缓存的争用情况,将缓存更多的缓存。当您再次运行时,不必对磁盘执行操作将大大提高性能。
您可能会发现,如果您等待一段时间,然后运行其他一些磁盘不足的程序,那么python代码的下一次运行将变慢。
https://stackoverflow.com/questions/56616041
复制相似问题