标签: psyco

为什么不总是将psyco用于Python代码?

psyco似乎在优化Python代码方面非常有用,它以非侵入性的方式实现.

因此,人们不得不怀疑.假设你总是在x86架构上(这是大多数应用程序运行的地方),为什么不总是使用psyco所有Python代码呢?它有时会出错并破坏程序的正确性吗?增加一些奇怪案例的运行时间?

你有任何负面经历吗?到目前为止,我最负面的经验是它使我的代码速度提高了15%.通常它会更好.

当然,使用psyco并不能替代有效的算法和编码.但是,如果您可以通过两行(导入和调用psyco)的成本来提高代码的性能,我认为没有充分的理由不这样做.

python optimization psyco

41
推荐指数
4
解决办法
1万
查看次数

最近对Python执行模型的更改?

我刚刚阅读了第3版学习Python(2007年末)中关于执行模型的部分,感觉相当试探性.所以,我看了第4版(2009年末)的同一部分,并且非常失望,它完全没有变化.

在CPython之外执行Python的状态是什么?感觉Jython和IronPython仍然是利基项目; 有其他类似的项目出现?Psyco凝固得很好,无需担心吗?有很多人使用ShedSkin?是否有关于何时PyPy执行速度更快的信息?

python pypy execution psyco

15
推荐指数
1
解决办法
299
查看次数

将Psyco移植到64位可能存在哪些陷阱?

Psyco的文档说:

仅供参考,Psyco根本不适用于任何64位系统.这个事实值得再次注意,现在最新的Mac OS/X 10.6"Snow Leopart"带有64位机器上的64位默认Python.在OS/X 10.6上使用Psyco的唯一方法是在32位模式下重新编译自定义Python.

通常,当代码假定指针类型和其他类似的小(ish)问题具有特定大小时,将程序从32位移植到64位只是一个问题.考虑到Psyco不是很多代码(大约32K行的C + ~8K系列的Python),它有多难?有没有人试过这个并撞墙?我还没有机会好好看看Psyco的来源,所以我真的很感激知道我是否在浪费时间研究这个......

c python 64-bit porting psyco

10
推荐指数
1
解决办法
1076
查看次数

在雪豹上安装python的psyco

我在使用python 2.6.1运行Snow Leopard的Macbook pro上安装psyco时遇到了一些麻烦.

我一直在尝试使用该命令强制python以32位模式运行

defaults write com.apple.versioner.python Prefer-32-Bit -bool yes
Run Code Online (Sandbox Code Playgroud)

此外,我尝试过Macport py26-psyco,它似乎已经完成,但在编译时无法找到模块.

$ sudo python setup.py install
PROCESSOR ='ivm'
运行安装
正在运行build
运行build_py
运行build_ext
构建'psyco._psyco'扩展
gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -DNDEBUG -g -fwrapv -Os -Wall -Wstrict-prototypes -DENABLE_DTRACE -arch i386 -arch ppc -arch x86_64 -pipe -DALL_STATIC = 1 -Ic/ivm -I/System/Library/Frameworks/Python.framework/Versions/2.6/include/python2.6 - cc/psyco.c -o build/temp.macosx-10.6-universal-2.6/c/psyco.o
在c/initialize.h:48中包含的文件中,
来自c/psyco.c:14:
c/psyfunc.c :在函数'psycofunction_call':
C/psyfunc.c:801:警告:从兼容的指针类型传递参数2 'PyDict_Next'的
在文件中包含从C/initialize.h:49,
从C/psyco.c:14:
ç /stats.c:在函数'psyco_stats_reset'中:
c/stats.c:260:警告:从不兼容的指针类型
c/stats.c 传递'PyDict_Next'的参数2 :在函数'psyco_stats_dump'中:
c/stats.c: 298:警告:从不兼容的指针类型
c/sta 传递'PyDict_Next'的参数2 ts.c:在函数'psyco_stats_top':
C/stats.c:326:警告:从兼容的指针类型传递参数2 'PyDict_Next'的
在文件中包含从C/initialize.h:75,
从C/psyco.c: 14:
C /对象/ pstructmember.c:在函数'PsycoMember_GetOne':
C …

python macos psyco osx-snow-leopard

7
推荐指数
1
解决办法
1105
查看次数

我使用Python 2.7,Windows 7 64位 - Psyco的替代品?

显然Psyco不适用于Python 2.7.

还有其他选择吗?

psyco

7
推荐指数
1
解决办法
2644
查看次数

64位机器的psyco替代品

Psyco 工作时很棒.然而,短期移动到Python的32位版本,它看起来并不像我们会得到一个64位版本很快随时随地.是否有任何替代psyco可以加速CPU绑定的一般python代码?

有关

Psyco x64?

将Psyco移植到64位可能存在哪些陷阱?

python 64-bit psyco

6
推荐指数
1
解决办法
3712
查看次数

为什么Psyco使用大量内存?

Psyco是Python的专用编译器.该文档状态

Psyco可以并且将使用大量内存.

这种内存使用的主要原因是什么?大量内存开销一般是JIT编译器的一个特性吗?

编辑:感谢您的答案到目前为止.有三种可能的竞争者.

  • 编写多个专用块,每个块都需要内存
  • 由于在运行中编译源而产生的开销
  • 由于捕获足够的数据来进行动态分析而产生的开销

问题是,哪一个是内存使用的主导因素?我有自己的看法.但我正在增加赏金,因为我想接受实际上正确的答案!如果有人能证明或证明大部分内存的使用位置,我会接受它.否则,社区投票的任何人都将在赏金结束时自动接受.

python memory compiler-construction jit psyco

5
推荐指数
3
解决办法
605
查看次数

寻找Psyco(Python-> C编译器)的良好替代品

我们真的很喜欢Psyco来加快速度,但它也有一些缺点:

  • 它消耗了太多的内存
  • 它也可以减慢一些代码
  • 编译代码可能会花费太多时间
  • 它不支持64位系统

什么是好的替代品(需要Django支持)?

c python compiler-construction django psyco

4
推荐指数
1
解决办法
1138
查看次数

Psyco x64?

有没有办法在x64架构上获得与32位处理器上的psyco相同的加速?

python psyco

3
推荐指数
1
解决办法
998
查看次数