Open krauwu opened 2 months ago
采用的是目前的jittor版本(git下载并编译
在执行: block = jnn.Sequential( jnn.Conv2d(embed_dims, embed_dims // 2, kernel_size=3, padding=1), jnn.ReLU(), jnn.Conv2d(embed_dims // 2, embed_dims, kernel_size=1), ) NBlocks = 3 BLOCK= [copy.deepcopy(block) for in range(N_Blocks)] 的时候会进入死循环;目测是 jnn.Sequential 的getattr的问题; def getattr(self, key): if key in self.layers: return self.layers[key] return super().getattr(key) 其中,在该死循环下, key是'deepcopy'
另外、jittor的unique方法似乎随着cuda thrust库的版本替换出现了问题; 要在jt.code 头文件中添加 #include <thrust/sequence.h>
#include <thrust/unique.h>
采用的是目前的jittor版本(git下载并编译
在执行: block = jnn.Sequential( jnn.Conv2d(embed_dims, embed_dims // 2, kernel_size=3, padding=1), jnn.ReLU(), jnn.Conv2d(embed_dims // 2, embed_dims, kernel_size=1), ) NBlocks = 3
BLOCK= [copy.deepcopy(block) for in range(N_Blocks)] 的时候会进入死循环;目测是 jnn.Sequential 的getattr的问题; def getattr(self, key): if key in self.layers: return self.layers[key] return super().getattr(key) 其中,在该死循环下, key是'deepcopy'