Commit Graph

170 Commits

Author SHA1 Message Date
Dan Moodie
4f373a4284 Clarified default allocator interface.
Conflicts:
	modules/core/src/matrix.cpp
2015-12-08 09:45:13 -05:00
Alexander Alekhin
ad70ab404c ocl: workaround for getUMat() 2015-09-09 18:56:14 +03:00
Andrey Pavlenko
cea2dafa0f man/unmap, preventing getMat/getUMat from temp object, fix thread-unsafe code in UMat::getMat() 2015-09-09 18:05:29 +03:00
Andrey Pavlenko
b78eb49178 removing a garbage comment 2015-08-26 14:15:18 +03:00
Andrey Pavlenko
3656a1aa66 fixing 'map_unmap_counting' 2015-08-25 17:25:03 +03:00
Andrey Pavlenko
f6b758699b Revert merging of pull request #5176 from vladimir-dudnik:master (reverted from commit 5ee00ec5c6) 2015-08-24 19:22:22 +03:00
Vladimir Dudnik
58934f1e16 add condition to skip unmapping for internally allocated host memory. this should fix map_unmap_counting UMat test. 2015-08-17 14:36:34 +03:00
Vladimir Dudnik
6bb8afde96 fixed typo in OpenCLAllocator.upload method (wrong step used) 2015-08-11 16:01:05 +03:00
Vladimir Dudnik
ef0d1c1c3f fixed download/upload for non contiguous umat 2015-08-11 01:33:46 +03:00
Alexander Alekhin
9bcccb028b fixes 2015-07-28 11:49:46 +03:00
Alexander Alekhin
b36f565d13 fix OpenCV code (bug 4006: #4862) 2015-07-28 11:49:41 +03:00
Alexander Alekhin
53fc5440d7 implement singleton lazy initialization 2015-06-23 14:38:45 +03:00
Vadim Pisarevsky
bd90425f71 Merge pull request #4136 from alalek:fix_matallocator_destruction 2015-06-22 11:49:36 +00:00
Vladimir Dudnik
217dd63e02 OpenCV-OpenCL interop (PR #4072):
Commits:
added new function, cv::ocl::attachContext(String& platformName, void* platformID, void* context, void* deviceID) which allow to attach externally created OpenCL context to OpenCV.
add definitions of clRetainDevice, clRetainContext funcs
removed definitions for clRetainContext, clRetainDevice
fixed build issue under Linux
fixed uninitialized vars, replace dbgassert in error handling
remove function which is not ready yet
add new function, cv::ocl::convertFromBuffer(int rows, int cols, int type, void* cl_mem_obj, UMat& dst, UMatUsageFlags usageFlags = cv::USAGE_DEFAULT) which attaches user allocated OpenCL clBuffer to UMat
uncommented clGetMemObjectInfo definition (otherwise prevent opencv build)
fixed build issue on linux and android
add step parameter to cv::ocl::convertFromBuffer func
suppress compile-time warning
added sample opencl-opencv interoperability (showcase for cv::ocl::convertFromBuffer func)
CMakeLists.txt modified to not create sample build script if OpenCL SDK not found in system
fixed build issue (apple opencl include dir and spaces in CMake file)
added call to clRetainContext for attachContext func and call to clRetainMemObject for convertFromBuffer func
uncommented clRetainMemObject definition
added comments and cleanup
add local path to cmake modules search dirs (instead of replacing)
remove REQUIRED for find_package call (sample build together with opencv). need to try standalone sample build
opencl-interop sample moved to standalone build
set minimum version requirement for sample's cmake to 3.1
put cmake_minimum_required under condition, so do not check if samples not builded
remove code dups for setSize, updateContinuityFlag, and finalizeHdr
commented out cmake_minimum_required(VERSION 3.1)
add safety check for cmake version
add convertFromImage func and update opencl-interop sample
uncommented clGetImageInfo defs
uncommented clEnqueueCopyImageToBuffer defs
fixed clEnqueueCopyImageToBuffer defs
add doxygen comments
remove doxygen @fn tag
try to restart buildbot
add doxygen comments to directx interop funcs
remove internal header, use fwd declarations in affected compile units instead
2015-06-19 13:33:22 +03:00
Alexander Alekhin
032b6322fc fix MatAllocator creation/destruction issues 2015-06-18 14:02:01 +03:00
Alexander Alekhin
b5529aef9c ocl/bufferpool: fix cleanup 2015-03-20 13:21:10 +03:00
Maxim Kostin
22a30af353 Fixing buildbot job:
- explicitly turning OCL off since WinRT does not support it
 - fixing macro definitions in core/ocl.cpp

Signed-off-by: Maxim Kostin <v-maxkos@microsoft.com>
2015-03-02 22:26:45 +03:00
Maxim Kostin
cdd23440c9 Adding support for WinRT(WinPhone 8/8.1 and Win Store) via CMake 3.1
- Substituted HAVE_WINRT with WINRT
- Fixed compilation issues in ocl.cpp and parallel.cpp
- Fixed compiler issue for WP8: "C2678: binary '+' : no operator found which takes a left-hand - Fixed gitignore
- Added #ifdef HAVE_OPENCL to remove compiler warnings in ocl.cpp
- Used NO_GETENV similar to '3rdparty\libjpeg\jmemmgr.c;
- Added ole32.lib for core module (for WindowsStore 8.0 builds)
- Made OpenCV_ARCH aware of ARM

Signed-off-by: Maxim Kostin <v-maxkos@microsoft.com>
2015-03-02 22:26:43 +03:00
Alexander Alekhin
2054123890 coreTlsData -> getCoreTlsData() 2015-02-04 13:03:27 +03:00
Alexander Alekhin
0a07d780e0 ocl: OpenCL SVM support 2015-01-23 20:37:45 +03:00
Dmitry-Me
4ff8a3ad92 Fix incorrect size computation 2014-11-26 12:24:53 +03:00
Alexander Alekhin
4eb16122c0 ocl: change processing of OpenCL failures
disable "unwanted" messages
2014-11-05 19:44:36 +03:00
Alexander Alekhin
fd59551ff0 Merge pull request #3354 from vbystricky:oclopt_convertScaleAbs 2014-10-29 13:53:56 +00:00
Alexander Alekhin
1f08d8cb6f Merge pull request #3367 from akarsakov:ocl_image2d 2014-10-24 16:01:21 +00:00
Alexander Karsakov
237cb93143 Added extra checks to ocl::Image2D 2014-10-24 15:04:42 +03:00
Alexander Alekhin
579a7fff6d ocl: restore clFinish() in unmap() for AMD devices
This reverts commit 7d91b8efcd.
2014-10-24 14:29:38 +04:00
Alexander Karsakov
3a263c6326 Added tests for Image2D 2014-10-23 14:23:37 +03:00
vbystricky
a8aa6381d9 Optimize OpenCL version of conversScaleAbs function 2014-10-21 19:20:20 +04:00
ElenaGvozdeva
070e5ec042 Changed predictOptimalVectorWidth function, now it is possible to choose vector size. 2014-10-21 13:13:15 +03:00
Pavel Vlasov
45958eaabc Implementation detector and selector for IPP and OpenCL;
IPP can be switched on and off on runtime;

Optional implementation collector was added (switched off by default in CMake). Gathers data of implementation used in functions and report this info through performance TS;

TS modifications for implementations control;
2014-10-15 14:24:41 +04:00
vbystricky
1d280352f4 Add code for print errors of OpenCL kernels runing 2014-10-09 13:59:38 +04:00
Vadim Pisarevsky
06e55ddf38 Merge pull request #2893 from ilya-lavrenov:tapi_vector_width_intel 2014-09-18 12:05:24 +00:00
Vadim Pisarevsky
26c284b225 Merge pull request #3167 from akarsakov:ocl_rm_clFinish 2014-09-04 17:00:10 +00:00
Ilya Lavrenov
98e7d4ceec changed optimal vector width for Intel 2014-09-04 11:59:41 +04:00
Alexander Karsakov
7d91b8efcd Removed redundant clFinish() after clEnqueueUnmapMemObject()
sss
2014-09-03 14:54:05 +04:00
Vadim Pisarevsky
3bafe64666 Merge pull request #3170 from ElenaGvozdeva:ocl_fix 2014-09-01 10:40:02 +00:00
Alexander Karsakov
d4e6812be2 Added check AmdFft version to be sure that AmdFft binaries are available 2014-08-29 14:23:18 +04:00
Elena Gvozdeva
31ac73c315 fix for cv::memopTypeToStr 2014-08-29 14:18:52 +04:00
Alexander Alekhin
b332152bef Merge pull request #2956 from ilya-lavrenov:tapi_accumulate 2014-08-28 09:08:51 +00:00
Ilya Lavrenov
7017b1250a used new stratehy in cv::accumulate** 2014-08-25 11:25:54 +04:00
Ilya Lavrenov
2c6b7a52e9 improved cv::ocl::predictOptimalVectorWidth 2014-08-25 11:25:01 +04:00
Ilya Lavrenov
2f46cf5ddb changed base types for cv::memopTypeToStr 2014-08-25 11:23:46 +04:00
Vadim Pisarevsky
e9729a9601 multiple yet minor fixes to make most of the tests pass on Mac with Iris graphics 2014-08-16 00:29:10 +04:00
Adil Ibragimov
8a4a1bb018 Several type of formal refactoring:
1. someMatrix.data -> someMatrix.prt()
2. someMatrix.data + someMatrix.step * lineIndex -> someMatrix.ptr( lineIndex )
3. (SomeType*) someMatrix.data -> someMatrix.ptr<SomeType>()
4. someMatrix.data -> !someMatrix.empty() ( or !someMatrix.data -> someMatrix.empty() ) in logical expressions
2014-08-13 15:21:35 +04:00
Vadim Pisarevsky
05e7c29de5 fixed various warnings and obvious errors reported by clang compiler and the coverity tool. 2014-08-10 00:10:05 +04:00
Vadim Pisarevsky
a05ce00a65 Merge pull request #2879 from alalek:ocl_runtime_flags 2014-08-04 16:43:01 +00:00
Vadim Pisarevsky
b63a7e66db Merge pull request #2953 from gongzg:master 2014-07-14 19:21:15 +00:00
Ilya Lavrenov
f2a2467de3 enabled BufferPool 2014-07-11 12:21:10 +04:00
Zhigang Gong
2e49ca4903 Avoid unmap an umat(ocl) which hasn't been mapped at all.
According to opencl 1.2 spec 5.4.2:
  enqueues a command to unmap a previously mapped region of a memory object.
  ...
  CL_INVALID_VALUE if mapped_ptr is not a valid pointer returned by
  clEnqueueMapBuffer, or clEnqueueMapImage for memobj.

So if the u->data is not from a clEnqueueMapBuffer call, we should not
call clEnqueueUnmapMemObject() unmap it. With this patch, the cases
./opencv_test_video --gtest_filter=OCL_Video/FarnebackOpticalFlow.Mat/*
could work well with beignet 0.9.1, Otherwise, it will get a
CL_INVALID_VALUE at the clEnqueueUnmapMemObject().

Signed-off-by: Zhigang Gong <zhigang.gong@intel.com>
2014-07-09 16:21:20 +08:00
Alexander Alekhin
964b260937 Merge pull request #2932 from ilya-lavrenov:tapi_other_vendors 2014-07-03 13:02:41 +00:00