我刚从 ALEA 开始,我很好奇如何在给定的 gpu parallel.for 中访问其他类型和引用。当我执行以下操作时,我收到一个运行时错误,指出“无法随机获取字段。可能的原因:1)不支持静态字段。2)不支持字段类型。3)在闭包类中,该字段没有[GpuParam] 属性。”
这个错误是有道理的,但我不确定正确的实现是什么
[GpuManaged]
public void InitPoints()
{
var gp = Gpu.Default;
gp.For(1, (10), (i) =>
{
int pointStart = random.Next(totalPoints) + 1;
Pt point = new Pt(pointStart, ptAt[i]);
point.Process();
});
}