我有多个数组作为单独的字段,当我将它们连接在一起时,不知何故,特定列与另一列奇怪地切换。
所有列都有自己正确的数据,但在连接时会被打乱。我还使用了 af::eval 但没有解决问题。请注意,这是完全随机的,有时如果我评论打印行,它就会起作用! (CPU后端没问题)
信息:ArrayFire v3.9.0 使用统一后端作为 CUDA。
我遇到了类似的问题,cuda 后端混淆了我的数据。 我不确定我的解决方案是否会造成性能损失,但以下内容对我有用。
const auto dim0 = transformedPc1.dims(0) + transformedPc2.dims(0);
return af::moddims(af::join(0, af::flat(transformedPc1), af::flat(transformedPc2)), af::dim4(dim0, 3));
基本上,我首先展平两个数组,然后将它们连接起来。加入后,我修改了尺寸以匹配我之前的尺寸。希望这有帮助!