Commit 3cd79410 authored by Vadim Pisarevsky's avatar Vadim Pisarevsky

Merge pull request #3083 from akarsakov:ocl_transpose_check_locmem

parents 01bd4961 3deea1c3
...@@ -3002,6 +3002,13 @@ static bool ocl_transpose( InputArray _src, OutputArray _dst ) ...@@ -3002,6 +3002,13 @@ static bool ocl_transpose( InputArray _src, OutputArray _dst )
CV_Assert(dst.cols == dst.rows); CV_Assert(dst.cols == dst.rows);
kernelName += "_inplace"; kernelName += "_inplace";
} }
else
{
// check required local memory size
size_t required_local_memory = (size_t) TILE_DIM*(TILE_DIM+1)*CV_ELEM_SIZE(type);
if (required_local_memory > ocl::Device::getDefault().localMemSize())
return false;
}
ocl::Kernel k(kernelName.c_str(), ocl::core::transpose_oclsrc, ocl::Kernel k(kernelName.c_str(), ocl::core::transpose_oclsrc,
format("-D T=%s -D T1=%s -D cn=%d -D TILE_DIM=%d -D BLOCK_ROWS=%d -D rowsPerWI=%d", format("-D T=%s -D T1=%s -D cn=%d -D TILE_DIM=%d -D BLOCK_ROWS=%d -D rowsPerWI=%d",
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment