繁体   English   中英

Python:PyPy:SciPy /卡方分布?

[英]Python: PyPy: SciPy/Chi-square distribution?

我有一个Python项目,其中性能非常重要。 老实说,我知道Python(至少是纯Python)不是最好的工具,但无论如何我都在使用它,因为我想分发一些非常简单的纯python版本的一些研究代码,以便人们可以修改它,等,而不必设置复杂的环境。 (我还有一个替代实现,用D编写,速度更快但更难破解。)

我使用PyPy作为我的翻译,并向任何使用此代码的人推荐它。 这给了我合理的速度。 然后我决定调整算法并需要从SciPy访问一些函数(我需要的只是CDF,生存函数和卡方阵的逆CDF)。 我尝试在CPython中运行我的代码来访问SciPy,它作为糖蜜很慢。

有人可以建议三件事之一:

  1. 一个kludge,允许我使用PyPy的一些片段SciPy。

  2. 在自由主义许可下,我需要更纯粹的python实现卡方分布功能吗?

  3. 一种JIT CPython瓶颈的方法? 我知道Psyco,但它似乎没有维护,只适用于32位系统。

SciPy还没有在PyPy上运行,虽然有一些工作可以让它相对较快地发生,只要你愿意每晚使用并做一些调整,这样你只使用支持的numpy子集(无论如何都会迅速扩展)。 我建议你现在只是尝试将SciPy函数移植到Python,如果时间紧迫你(它们应该相对简单,但仍然有效)。 在PyPy网站上还有一个numpy筹款活动,以便更快地实现这一目标:)

编辑:这是通过嵌入CPython在pypy上运行的matplotlib: http ://baroquesoftware.com/~fijal/extreme_hacks.png

EDIT2:阅读http://morepypy.blogspot.com/2011/12/plotting-using-matplotlib-from-pypy.html以获取示例。

干杯,fijal

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM