Ik schrijf deze OpenCL code op Python met behulp van PyOpenCL dat exponentiële functie met zich meebrengt. Echter, ik weet niet hoe deze bibliotheek te laten werken omvatten. Dus in de kernel, het is gewoon zoals dit bijvoorbeeld:
kernelsource =
__kernel void forceFinder(
const int N,
__global float* datacl,
__global float* poscl,
__global float* res)
{
int i = get_global_id(0); // Global id;
if (i < N) {
res[i] = (datacl[i ] - poscl[i]) *exp(100);
}
}
Ik heb geprobeerd om te gebruiken (van pyopencl.clmath import exp) aan het begin, maar het werkt niet. Toen ik probeerde om het programma te bouwen falen en geven deze:
<program source>:28:66: error: call to '__fast_relax_exp' is ambiguous
res[i * dim + k] = (datacl[i * dim + k] - poscl[k]) *exp(0);
Help alstublieft.
Zeer gewaardeerd
Jiajun