gpt4 book ai didi

python - Numba - jitclass 实例的副本

转载 作者:行者123 更新时间:2023-11-30 22:25:33 25 4
gpt4 key购买 nike

如何复制 numba jitclass 实例(其变量是 numpy 标量和数组)?

除了创建一个新实例并在循环中复制所有变量之外,还有更好的方法吗?我还尝试了 copy.copycopy.deepcopy,但都失败了 TypeError: can't pickle MyJitClassName objects

最佳答案

我认为原则上这是 numba 可以支持的东西(考虑打开 issue ),但现在我认为唯一的选择是定义您自己的。

请注意,jitclasses 保存对数组的引用,因此如果您想复制基础数据,则需要 array.copy()

from numba import jitclass, float64
spec = [
('scalar', float64),
('array', float64[:]),
]

@jitclass(spec)
class MyJitClass:
def __init__(self, scalar, array):
self.scalar = scalar
self.array = array

def copy(self):
return MyJitClass(self.scalar, self.array.copy())

关于python - Numba - jitclass 实例的副本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47507851/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com