core(ocl): run "reduce" kernels in synchronous mode

pull/13094/head
Alexander Alekhin 7 years ago
parent 11eafca3e2
commit f74f1a94fe
  1. 2
      modules/core/src/sum.cpp
  2. 2
      modules/core/src/umatrix.cpp

@ -520,7 +520,7 @@ bool ocl_sum( InputArray _src, Scalar & res, int sum_op, InputArray _mask,
} }
size_t globalsize = ngroups * wgs; size_t globalsize = ngroups * wgs;
if (k.run(1, &globalsize, &wgs, false)) if (k.run(1, &globalsize, &wgs, true))
{ {
typedef Scalar (*part_sum)(Mat m); typedef Scalar (*part_sum)(Mat m);
part_sum funcs[3] = { ocl_part_sum<int>, ocl_part_sum<float>, ocl_part_sum<double> }, part_sum funcs[3] = { ocl_part_sum<int>, ocl_part_sum<float>, ocl_part_sum<double> },

@ -1168,7 +1168,7 @@ static bool ocl_dot( InputArray _src1, InputArray _src2, double & res )
k.args(src1arg, src1.cols, (int)src1.total(), dbsize, dbarg, src2arg); k.args(src1arg, src1.cols, (int)src1.total(), dbsize, dbarg, src2arg);
size_t globalsize = dbsize * wgs; size_t globalsize = dbsize * wgs;
if (k.run(1, &globalsize, &wgs, false)) if (k.run(1, &globalsize, &wgs, true))
{ {
res = sum(db.getMat(ACCESS_READ))[0]; res = sum(db.getMat(ACCESS_READ))[0];
return true; return true;

Loading…
Cancel
Save