49383 Commits

Author SHA1 Message Date
Alessandro Pasotti
e79f6d1a1c Fix documentation for ninecell filters 2018-08-08 09:40:02 +02:00
Alessandro Pasotti
14f8c4361d [opencl] Translate tab name 2018-08-08 09:40:00 +02:00
Alessandro Pasotti
6317a068a5 [opencl] Translate message when no opencl is available
Plus Typos and code style
2018-08-08 09:40:00 +02:00
Alessandro Pasotti
9ed9cbded8 [opencl] Initialize opencl path from cmd line and env 2018-08-08 09:39:57 +02:00
Alessandro Pasotti
82fdb56c6a Const correctness for rasterblock 2018-08-08 09:39:57 +02:00
Alessandro Pasotti
966c3db2c9 [opencl] Uppercase CMake 2018-08-08 09:39:57 +02:00
Alessandro Pasotti
c42a748afc [opencl] Fix build when headers are not available 2018-08-08 09:39:55 +02:00
Alessandro Pasotti
445d453b05 [opencl] Remove obsolete test (superceeded) 2018-08-08 09:39:55 +02:00
Alessandro Pasotti
84dd14ae95 [opencl] Rename test function for consistency 2018-08-08 09:39:52 +02:00
Alessandro Pasotti
07db3f84c4 Fix some cast warnings, pre-calc values for speed 2018-08-08 09:39:51 +02:00
Alessandro Pasotti
78a45b7db4 [opencl] Small optimization in hillshade
... and more tolerant epsilon for float comparison in tests
2018-08-08 09:39:49 +02:00
Alessandro Pasotti
8f40129d09 [opencl] Increase test coverage with no-opencl image comparison 2018-08-08 09:39:46 +02:00
Alessandro Pasotti
8689c401a2 [opencl] Fix small OpenCL alg issues
From comparison tests with CPU results

+ some minor speed improvements
2018-08-08 09:39:40 +02:00
Alessandro Pasotti
573283f0dc [opencl] Move common code before the opencl ifdef
... so that it builds correctly without opencl
2018-08-08 09:39:37 +02:00
Alessandro Pasotti
be5f1fd436 [opencl] Ruggedness index OpenCL program 2018-08-08 09:39:31 +02:00
Alessandro Pasotti
8b81f1bb09 [opencl] Single kernel for multi and simple hillshade
To be able to re-use the cached program if the user
changes the multi switch
2018-08-08 09:39:22 +02:00
Alessandro Pasotti
db35810e76 [opencl] Make opencl info copyable 2018-08-08 09:39:21 +02:00
Alessandro Pasotti
1324eff749 [opencl] Code cleanup and comments 2018-08-08 09:39:20 +02:00
Alessandro Pasotti
5afd9e242d [opencl] Error message when OpenCL could not be found 2018-08-08 09:39:18 +02:00
Alessandro Pasotti
a420474ec4 [opencl] Fix device selection on start 2018-08-08 09:39:16 +02:00
Alessandro Pasotti
41e7e71db7 [opencl] Hillshade fix alpha and nodata 2018-08-08 09:39:11 +02:00
Alessandro Pasotti
eaa7982cc8 [opencl] Add multidirectional renderer and cache the program
Now we are FAST!
2018-08-08 09:39:06 +02:00
Alessandro Pasotti
be21ea8e5a Bindings for 9cell filter 2018-08-08 09:38:43 +02:00
Alessandro Pasotti
528302cc89 [opencl] Use fast formula for hillshade
Also optimize cl buffers
2018-08-08 09:38:36 +02:00
Alessandro Pasotti
a73bbbad21 [opencl] Reduce memory footprint and optimize 2018-08-08 09:38:00 +02:00
Alessandro Pasotti
3bad167572 [opencl] Memory optimization 2018-08-08 09:37:30 +02:00
Alessandro Pasotti
a1a65bb4e8 [opencl] Test with image2d 2018-08-08 09:36:56 +02:00
Alessandro Pasotti
12fa896554 [opencl] Add options widget 2018-08-08 09:35:57 +02:00
Alessandro Pasotti
b09df53354 Use OpenCL command queue 2018-08-08 09:34:04 +02:00
Alessandro Pasotti
16a49cddaa Wrap make program in OpenCL utils 2018-08-08 09:32:44 +02:00
Alessandro Pasotti
79f0eadb05 Added context 2018-08-08 09:32:35 +02:00
Alessandro Pasotti
4756873282 CPLAllocator smart wrapper 2018-08-08 09:31:38 +02:00
Alessandro Pasotti
7e1d929800 Try to avoid crash on intel haswell 2018-08-08 09:31:27 +02:00
Alessandro Pasotti
583c7ae287 More updates for opencl 2018-08-08 09:29:33 +02:00
Alessandro Pasotti
d6e747ca57 OpenCL tests and aspect 2018-08-08 09:29:23 +02:00
Alessandro Pasotti
767eda4b58 Working! With C++ API 2018-08-08 09:27:36 +02:00
Alessandro Pasotti
6f9a72e425 Working but crashing on dealloc of command queue 2018-08-08 09:27:23 +02:00
Alessandro Pasotti
51d1bb36b8 OpenCL POC 1 2018-08-08 09:27:07 +02:00
Alessandro Pasotti
a1a09d75e6 [opencl] Rename test function for consistency 2018-08-08 09:26:30 +02:00
Alessandro Pasotti
b89808f573 [opencl] Small optimization in hillshade
... and more tolerant epsilon for float comparison in tests
2018-08-08 09:26:30 +02:00
Alessandro Pasotti
82b60df671 [opencl] Simplify OpenCL configuration in CMake
and add a message without failing if not found
2018-08-08 09:25:34 +02:00
Alessandro Pasotti
9ff8779f97 [opencl] Increase test coverage with no-opencl image comparison 2018-08-08 09:25:34 +02:00
Alessandro Pasotti
86b60c6c63 [opencl] Class docs improvements
Also try hard to find a device before giving up
2018-08-08 09:25:34 +02:00
Alessandro Pasotti
6956436804 [opencl] Update test reference image 2018-08-08 09:24:40 +02:00
Alessandro Pasotti
dc4b1da0a4 [opencl] Fix small OpenCL alg issues
From comparison tests with CPU results

+ some minor speed improvements
2018-08-08 09:24:40 +02:00
Alessandro Pasotti
30a62e1add Astyle 2018-08-08 09:23:39 +02:00
Alessandro Pasotti
6b10ffefb0 Add overload that accepts qgissize instead of int
to avoid a lot of annoying warnings and spare
some casts
2018-08-08 09:23:39 +02:00
Alessandro Pasotti
a6d5d479fa [opencl] Fix nodata value in slope, aspect and hillshade 2018-08-08 09:23:39 +02:00
Alessandro Pasotti
164bcc2bec [opencl] Ruggedness index OpenCL program 2018-08-08 09:22:34 +02:00
Alessandro Pasotti
d492bbcaed [opencl] Make opencl info copyable 2018-08-08 09:22:30 +02:00