【发布时间】:2014-02-01 08:55:04
【问题描述】:
如果我在 C 函数中使用指针,例如:
void processCalcNorm(float* a, float* b, float* c, float* d, float* e, float* f)
{
*a = *a + *b;
*c = *c + *d;
*e = *e + *f;
}
for(id = 0; id < 1000; id++)
{
processCalcNorm(&xcord[id],&lvelox[id],&ycord[id],&lveloy[id],&zcord[id],&lveloz[id]);
}
内核在执行时应该如何调用?
【问题讨论】:
-
哪个内核?您是建议您打算创建一个等效于
processCalcNorm的内核,还是建议您从另一个内核或其他内核调用processCalcNorm的设备版本? -
是的,我正计划创建一个相当于 processCalcNorm 的内核!但是我如何用我想要的变量来调用它呢?
-
我提供了一个答案,因为我觉得这样做并不难。但是,为了将来参考,不鼓励提出这样的问题(“为我编写我的 CUDA 代码”)。 SO expects:“2.请求代码的问题必须证明对正在解决的问题有最低限度的理解。包括尝试的解决方案,为什么它们不起作用,以及预期的结果。”下次我建议你自己尝试一下,并描述它的问题。这样你会学得更好,并且可以消除关于你的意图的问题。
标签: c pointers cuda kernel call