我愿意使用llvm来优化我的python代码。我读了一些教程,但是我还不知道如何将类对象从python代码导出到llvm。我学习了如何在llvm-py中创建函数,但是类超出了我的能力范围。
下面是一个我想用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如果有任何帮助,我将不胜感激!
发布于 2012-07-14 01:55:54
简短的回答是:你不能。
原因是Python是一种解释型语言,并且该语言中有几个语句不容易用于静态计算。
我的建议是分析您的程序(例如,如果您正在运行Linux,使用IPython的run -p选项,或者一般通过cProfile模块),并找出什么占用了程序的大部分时间。
在大多数程序中,总运行时间的很高百分比由相对较小的代码区域占用,并且改进它(通过算法改进或通过编写C扩展,例如通过SWIG)通常可以导致性能的数量级提高。
这种优化通常比试图让“一切运行得更快”有效得多。
https://stackoverflow.com/questions/11413259
复制相似问题