Commit Graph

134 Commits

Author SHA1 Message Date
Pavel Vlasov
349d5ba012 --perf_instrument parameter now has int type and 0, 1, 2 modes (1 - simple trees, 2 - expanded trees for functions with same name but different calling address);
Maximum depth limit var was added to the instrumentation structure;

Trace names output console output fix: improper tree formatting could happen;
Output in case of error was added;

Custom regions improvements;

Improved timing and weight calculation for parallel regions; New TC (threads counter) value to indicate how many different threads accessed particular node;

parallel_for, warnings fixes and ReturnAddress code from Alexander Alekhin;
2016-11-08 10:18:05 +03:00
Alexander Alekhin
10d18a315c instrumentation: minor refactoring, wrap OpenCL
- calculate ticksTotal instead of ticksMean
- local / global width is based on ticksTotal value
- added instrumentation for OpenCL program compilation
- added instrumentation for OpenCL kernel execution
2016-09-08 16:13:44 +03:00
mpkh
01d2e7af71 fix building on FreeBSD
resolve undeclared identifier close error
2016-08-22 17:17:06 +04:00
Pavel Vlasov
a462d76a95 Implementations instrumentation framework for OpenCV performance system; 2016-08-17 16:26:03 +03:00
Pavel Vlasov
8bcec7d77f IPP enabling fix and typo fix; 2016-08-12 10:11:47 +03:00
Tomoaki Teshima
b2ad7cd9c0 add feature to convert FP32(float) to FP16(half)
* check compiler support
  * check HW support before executing
  * add test doing round trip conversion from / to FP32
  * treat array correctly if size is not multiple of 4
  * add declaration to prevent warning
  * make it possible to enable fp16 on 32bit ARM
  * let the conversion possible on non-supported HW, too.
  * add test using both HW and SW implementation
2016-05-21 21:31:33 +09:00
Alexander Alekhin
c7ccde69a8 fix TLS implementation (closes #5967) 2016-01-14 14:38:37 +03:00
Maksim Shabunin
84f37d352f HAL moved back to core 2015-12-17 12:33:23 +03:00
Maksim Shabunin
b4bcdd10a1 HAL: improvements
- added new functions from core module: split, merge, add, sub, mul, div, ...
- added function replacement mechanism
- added example of HAL replacement library
2015-12-03 14:43:37 +03:00
Bert
d3b0bda011 Update system.cpp
FreeBSD compilation fix
2015-11-13 11:03:34 +03:00
Vadim Pisarevsky
3942b1f362 Merge pull request #5340 from alalek:ocl_off 2015-11-10 16:53:36 +00:00
Pavel Vlasov
89eee6ca99 Fixes for IPP integration:
dotProd_16s - disabled for IPP 9.0.0;
filter2D - fixed kernel preparation;
morphology - conditions fix and disabled FilterMin and FilterMax for IPP 9.0.0;
GaussianBlur - disabled for CV_8UC1 due to buffer overflow;
integral - disabled for IPP 9.0.0;

IppAutoBuffer class was added;
2015-10-12 10:51:28 +03:00
Pavel Vlasov
6a0d3b06f2 IPPInitSingelton initialization guards; 2015-10-01 17:48:49 +03:00
Pavel Vlasov
e837d69f8f IPPInitSingelton was added to contain IPP related global variables;
OPENCV_IPP env var now allows to select IPP architecture level for IPP9+;
IPP initialization logic was unified across modules;
2015-10-01 09:58:48 +03:00
Pavel Vlasov
aa485ccd75 TLS keys leak fix;
Disables TLS copy constructor and operator, as they can lead to errors and reservation of too much keys in TLS storage;

gather method was added to TLS to gather data from all threads;
2015-09-17 15:49:20 +03:00
Alexander Alekhin
7213e5f68a ocl: correct disabling of OpenCL code 2015-09-13 20:28:23 +03:00
Maksim Shabunin
771af4f32d Some changes to support mingw-w64
- IPP is disabled by default when compiler is mingw (couldn't make it
work)
- fixed some warnings
- fixed some `__GNUC__` version checks (for correctness and convenience)
- removed UTF-8 BOM from hough.cpp (fixes #5253)
2015-09-01 00:59:08 +03:00
Alexander Alekhin
b8956d0111 tls: fix access to array (out of bounds) 2015-08-21 16:43:15 +03:00
Pavel Vlasov
a33d98c13a TLS memory leaks were fixed;
TLS was redesigned in more straightforward way;
OPENCV_ABI_COMPATIBILITY define was added;
2015-08-19 13:31:44 +03:00
Alexander Alekhin
53fc5440d7 implement singleton lazy initialization 2015-06-23 14:38:45 +03:00
Pavel Vlasov
085409340e Implementation collector update;
Moved out of TLS to properly collect data from different threads;
Concurrent access guards were added to collection functions;
2015-03-12 17:58:03 +03:00
Vadim Pisarevsky
ebac739a35 Merge pull request #3781 from Dmitry-Me:dangerousStringManipulation 2015-03-04 10:45:25 +00:00
Dmitry-Me
f8c454733b Remove dangerous string manipulation, merge declaration with assignment 2015-03-04 10:35:06 +03:00
Dmitry-Me
c587bae997 Uniform computation of variable size 2015-03-03 16:11:07 +03:00
Vadim Pisarevsky
6820292256 Merge pull request #3700 from MSOpenTech:winrt-cmake-contrib 2015-03-03 12:52:03 +00: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
Ilya Lavrenov
ffc453ebfd fixed [-Wsign-compare] warning 2015-03-02 16:41:06 +03:00
Vadim Pisarevsky
8e37a693e5 Merge pull request #3758 from ilya-lavrenov:aarch64 2015-03-02 10:50:31 +00:00
Vladislav Vinogradov
4254e35f6a merge new setUseOptimizations function with existed setUseOptimized 2015-02-27 14:24:51 +03:00
Vladislav Vinogradov
c10f1851cb rename setOptimizations -> setUseOptimizations 2015-02-27 12:52:28 +03:00
Vladislav Vinogradov
cda6fed41f move tegra namespace out of cv to prevent conflicts 2015-02-27 12:52:11 +03:00
Ilya Lavrenov
c5a80193a8 aarch64 support 2015-02-26 19:43:32 +03:00
Vladislav Vinogradov
12180bd7b1 add generic method to disable/enable all optimizations (IPP, OpenCL, Tegra) 2015-02-26 19:36:04 +03:00
Vladislav Vinogradov
f8484e3266 add fucntion to control tegra optimizations in run-time 2015-02-26 19:34:20 +03:00
Alexander Alekhin
2054123890 coreTlsData -> getCoreTlsData() 2015-02-04 13:03:27 +03:00
Ilya Lavrenov
dcb0c68ed3 fix for -m32 2015-01-23 17:26:48 +03:00
Vadim Pisarevsky
03fc3d1ceb Merge pull request #3591 from ilya-lavrenov:sse_avx 2015-01-21 10:46:23 +00:00
Vadim Pisarevsky
21a9a17478 Merge pull request #3568 from ilya-lavrenov:neon_runtime 2015-01-20 12:47:51 +00:00
Adam Borowski
7b0d1c932e Get rid of sysctl includes on Linux.
The 'sysctl' syscall has been strongly deprecated on Linux for ages.
Currently, on old architectures it will spam syslog whenever used, and on
newer ones it's missing from the headers altogether.  Opencv has migrated
away on Linux already, but #includes were left lingering.  This commit
removes them on non-__APPLE__, unbreaking x32 (and probably others).
2015-01-13 01:52:56 +01:00
Ilya Lavrenov
81f786393a NEON detection in runtime 2015-01-13 01:35:53 +03:00
Ilya Lavrenov
fc0869735d used popcnt 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
bc394e7516 detection of other CPU features 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
8d48632ebe avx2 2015-01-12 10:59:28 +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
GregoryMorse
b1443bc1bc WinRT core compatibility fixes
Update system.cpp

Update system.cpp

Update ocl.cpp

Update matching.cpp

Update ocl.cpp

Update matching.cpp
2014-05-07 06:15:54 +08:00
Ilya Lavrenov
05a47d9014 cmd option 2014-04-17 18:06:14 +04:00
Ilya Lavrenov
2cd7a913ed verbose errors 2014-04-17 11:07:01 +04:00
Ilya Lavrenov
f3c56f8310 first attemp 2014-04-17 11:07:01 +04:00
Aaron Kunze
629ddf0bf8 Resolves bug #3450 (Improperly cleaning up resources in DllMain) 2014-04-08 16:21:33 -07:00
vbystricky
01a66a2938 Prepare codes for ippicv library 2014-04-07 14:24:05 +04:00