PyOpenCL, modul de utilizare funcție exponențială, (OpenCL)

voturi
11

I-am scris acest cod OpenCL pe Python folosind PyOpenCL care implică funcția exponențială. Cu toate acestea, eu nu știu cum să includă această bibliotecă pentru a face să funcționeze. Deci, în kernel, este pur și simplu ca acest lucru, de exemplu:

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);

    }
}

Am încercat să folosească (de la pyopencl.clmath exp import) la început, dar aceasta nu funcționează. Când am încercat să construiască programul acesta nu și să dea acest lucru:

<program source>:28:66: error: call to '__fast_relax_exp' is ambiguous
            res[i * dim + k] = (datacl[i * dim + k] - poscl[k]) *exp(0);

Te rog ajuta-ma.

Foarte apreciat

Jiajun

Întrebat 12/03/2016 la 19:12
de către utilizator
În alte limbi...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more