我愿意使用llvm来优化我的python代码。我读了一些教程,但是我还没有弄清楚如何,比如说,如何将类对象从python代码导出到llvm。我学会了如何在llvmpy中创建函数,但是类超出了我的能力范围。在
下面是我想用llvm代码创建的类的示例:
class Char():
def __init__(self,c):
self.c=c
def next(self,line,p):
try:
return self.c==line[p]
except:
return False
def next_rep(self,line,p):
try:
return self.c==line[p],p
except:
return False,p
我会很感激你的帮助!在
简而言之:你不能
原因是Python是一种解释性语言,而且这种语言中有一些语句不容易用于静态求值。在
我的建议是对您的程序进行概要分析(例如,如果您运行的是Linux,请使用IPython的run-p选项,或者通常是通过cProfile模块)来分析程序,并弄清楚是什么占用了程序的大部分时间。在
在大多数程序中,相当一部分代码占用了总运行时间的很大一部分,而对其进行改进(通过算法改进或编写C扩展,例如通过SWIG)通常可以使性能得到一个数量级的改进。在
这种优化通常比试图让“一切运行得更快”有效得多。在
相关问题 更多 >
编程相关推荐