给定一个numba不知道的全局非突变对象:
from types import SimpleNamespace
a = SimpleNamespace(b=2)
我希望能够在jitted函数中引用此对象的一个成员作为编译时常量,如下所示:
@numba.njit
def foo():
# return a.b # fails, because numba tries to evaluate at runtime
return numba.mark_this_as_constant(a.b)
在numba中mark_this_as_constant
是否已经以不同的名称存在?有没有可能自己写,或者用自定义类型?你知道吗
我可以通过以下方式得到今天想要的:
def foo(a_b=a.b):
@numba.njit
def foo():
return a_b
return foo
foo = foo()
但这很糟糕,需要我在顶部列出每个闭包,而不是在使用点。你知道吗
你试过这样的东西吗?你知道吗
相关问题 更多 >
编程相关推荐