majinjing3 2014-12-19 03:55 采纳率: 0%
浏览 1758
已结题

如何进行Python优化使得Python模块能够得到2倍性能提升

    目前要对一个含有Python模块和C++模块的项目(Python模块调用C++模块)进行优化。考虑优化Python编译器,求问应用什么技术可以使得python编译器能够获得2倍性能提升并且不存在C扩展性弱的问题?(目前pypy虽然有5倍性能提升但是C扩展弱不支持我这个项目) 目前我考虑 去修改pypy的C扩展性,牺牲pypy一部分的性能提升空间,来换取它对C扩展模块的支持,或者使用JIT技术 加入到CPython编译器 来获得2倍性能提升,但是不知道这两种方法的可行性如何。如果对pypy实现机理了解的高手希望能够指点我的困惑   
  • 写回答

2条回答

  • threenewbee 2014-12-19 04:00
    关注

    首先不应该泛泛谈论这个问题,你应该用性能度量工具找代码的热区,也就是代码中最频繁被执行并且耗时最多的部分。这些热区一般只有程序的10%左右。

    如果你优化这些代码,性能会有很大提高,相反,优化别的代码,即便剩下的90%的代码写得再优化,对性能提高也没什么帮助。

    另外,已经优化的代码要想再优化,只有从算法或者更高层次考虑了

    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog