【发布时间】:2009-09-17 08:11:55
【问题描述】:
我在一个大型金融定价应用程序中工作,其中进行了一些长期运行的计算。我们已经确定了一些可以通过选择性应用 psyco 来加速的功能。我的管理层要求评估将 psyco 添加到我们的堆栈中的成本和收益。
鉴于我的项目的关键性质,如果“性能增强”可能会降低可靠性,这是不可接受的。我读过使用 psyco 以使用更多内存为代价获得额外的性能。我担心这可能是个问题。
我是这样做的:
@psyco.proxy
def my_slow_function(xxx):
总而言之,我们希望将 psyco 应用于不超过 15 个函数 - 这些函数的使用率非常高。这个库中有数千个函数,所以这只会影响我们代码的一小部分。所有的功能都是小的、数学的和无状态的。
- 这是否存在使用大量内存的风险
- 在将这个组件添加到我们长期建立的库中时,我们可能会遇到任何其他问题吗?
仅供参考,平台是 Windows 32 位 XP 上的 Python 2.4.4
更新:似乎主要的潜在风险是由于程序需要比添加 psyco 之前更多的内存来运行,所以理想情况下,我想找到一种方法来查看添加 psyco 是否会显着改变系统。
【问题讨论】: