Hi,
Why do I get different results on OpenCL (nVidia GTX760) and the classic code CPU?
OpenCL:
#pragma OPENCL EXTENSION cl_khr_fp64 : enable
__kernel void keDistAzimStep( __global double2 * da, __global double2 * coords )
{
int i = get_global_id(0);
double2 cp = radians( coords[i] );
double sin_sr2 = sin( cp.y );
double cos_sr2 = cos( cp.y );
da[i] = (double2)( sin_sr2, cos_sr2 );
}
Delphi XE2 64bit:
procedure TestSinCos(index:integer);
var cp:TDVec2;
sin_sr2,cos_sr2 :double;
begin
cp := FCoords[index]*toRad;
sin_sr2 := sin( cp.y );
cos_sr2 := cos( cp.y );
FDA[index] := dvec2( sin_sr2, cos_sr2 );
end;
Even on the primitive functions I get the difference 1.11022302462516e-16.
Is it possible to get the same result?