我对python启动速度有多慢感到非常沮丧.只需导入更多或更少的基本模块需要一秒钟,因为python沿着sys.path运行,寻找匹配的文件(并生成4个stat()
调用 - ["foo","foo.py","foo.pyc","foo.so "] - 每次检查).对于复杂的项目环境,有大量不同的目录,这可能需要大约5秒钟 - 所有这些都可以运行可能立即失败的脚本.
有人建议如何加快这个过程?例如,我见过的一个hack是将LD_PRELOAD_32
环境变量设置为一个库,它在运行之间缓存ENOENT
调用的结果(例如,失败的stat()
调用).当然,这有各种各样的问题(可能混淆非python程序,负面缓存等).
我首先想到的是:
除此之外,您确定磁盘操作是让您陷入困境的原因吗?您的磁盘/操作系统是否真的很忙或者又旧又慢?
也许碎片整理是合适的?
归档时间: |
|
查看次数: |
9859 次 |
最近记录: |