1
我有一個類的層次結構,我想通過使用Numba jitclass來加速我的代碼。我已經測試了一些沒有類繼承的例子@jitclass,它可以正常工作並加速代碼。但是,如果我有類繼承,編譯期間發生錯誤。以下是展示問題的示例代碼。我會非常感謝任何意見和建議。現在對我來說,Numba並不支持類繼承,但我在文檔中沒有找到任何關於它的信息。 代碼示例:Numba jitclass和繼承
import numpy as np
from numba import jitclass
from numba import int32, float32
spec = [
('n', int32),
('val', float32[:]),
]
@jitclass(spec)
class Parent(object):
def __init__(self, n):
self.n = n
self.val = np.zeros(n, dtype=np.float32)
spec = [
('incr', float32),
]
@jitclass(spec)
class Child(Parent):
def __init__(self, n):
Parent.__init__(self, n)
self.incr = 2.
def func(self):
for i in xrange(0, self.n):
self.val[i] += self.incr
return self.val
par = Parent(10)
chl = Child(10)
print chl.func()
我得到的錯誤是:
TypeError: cannot subclass from a jitclass