dnn: force floating point literals to be float.

In OpenCL code in activations.cl, make the type of floating point
literals to be float. Otherwise the values will be interpreted as
doubles, causing Beignet to have type conversion issues.
pull/9284/head
Ismo Puustinen 8 years ago
parent d34eec3ab3
commit c2de5cf735
  1. 6
      modules/dnn/src/opencl/activations.cl

@ -21,13 +21,13 @@ __kernel void TanHForward(const int count, __global T* in, __global T* out) {
__kernel void SigmoidForward(const int count, __global const T* in, __global T* out) {
int index = get_global_id(0);
if(index < count)
out[index] = 1. / (1. + exp(-in[index]));
out[index] = 1.0f / (1.0f + exp(-in[index]));
}
__kernel void BNLLForward(const int n, __global const T* in, __global T* out) {
int index = get_global_id(0);
if (index < n) {
out[index] = in[index] > 0 ? in[index] + log(1. + exp(-in[index])) : log(1. + exp(in[index]));
out[index] = in[index] > 0 ? in[index] + log(1.0f + exp(-in[index])) : log(1.0f + exp(in[index]));
}
}
@ -41,4 +41,4 @@ __kernel void PowForward(const int n, __global const T* in, __global T* out, con
int index = get_global_id(0);
if (index < n)
out[index] = pow(shift + scale * in[index], power);
}
}

Loading…
Cancel
Save