2
0
mirror of https://github.com/boostorg/compute.git synced 2026-01-27 18:52:15 +00:00
Commit Graph

680 Commits

Author SHA1 Message Date
Ken Barker
e2f998bec6 Check platform extension for issue #676 2016-12-20 19:02:45 +00:00
Kyle Lutz
86211062a7 Merge pull request #653 from haahh/pr_misc_doc_fixes
Misc documentation fixes
2016-09-01 21:41:46 -07:00
Jakub Szuppe
9496721421 Fix transform() description 2016-08-26 23:55:46 +02:00
Kyle Lutz
886205fdcf Merge pull request #651 from haahh/fix_minmax_element
Fix minmax_element() and add test for it
2016-08-23 21:53:24 -07:00
Jakub Szuppe
3196b71273 Fix minmax_element() and add test for it
Remove useless Compare template parameter and add
test for minmax_element().
2016-08-23 21:27:32 +02:00
Jakub Szuppe
2bd90c6392 Fix C4267 warn. when compiling with MSVC, OpenCL 2.0 2016-08-22 18:57:36 +02:00
Jakub Szuppe
45ea54f704 Fix gather algorithm 2016-08-22 18:55:20 +02:00
Jakub Szuppe
544242744c Fix typo in wait_list 2016-08-22 18:55:20 +02:00
Jakub Szuppe
6cd0222bbd Fix typo in context.hpp 2016-08-22 18:55:20 +02:00
Kyle Lutz
8cbe8b30c3 Merge pull request #642 from dPavelDev/master
Fixed unnecessary reallocation in vector::resize() when size == capacity
2016-08-15 18:36:33 -07:00
dPavelDev
7fc6e47970 Fixed unnecessary reallocation in vector::resize() when size == capacity 2016-08-15 14:10:15 +03:00
Jakub Szuppe
90861687d1 Fix system::platforms()
The 2nd call to clGetPlatformsIDs crashed when there
were no OpenCL platforms because then count variable was 0
and clGetPlatformIDs specification says: "If platforms is
not NULL, the num_entries must be greater than zero".
2016-08-12 11:58:49 +02:00
Kyle Lutz
05ab43ed58 Cast index argument to cl_uint in kernel::get_arg_info()
This casts the 'index' argument in kernel::get_arg_info() to cl_uint
in order to match the signature for clGetKernelArgInfo(). This fixes
the "conversion from 'size_t' to 'cl_uint', possible loss of data"
compiler warning.
2016-08-03 20:16:19 -07:00
Kyle Lutz
6688e92f07 Change size_t argument to uint_ in opengl_enqueue_*_gl_objects() functions
This changes the opengl_enqueue_*_gl_objects() functions to take their
'num_objects' argument as 'uint_' instead of 'size_t'. This fixes the
"conversion from 'size_t' to 'cl_uint', possible loss of data" compiler
warnings from MSVC.
2016-07-30 18:28:41 -07:00
Kyle Lutz
c4b3793be1 Ignore unused arguments in kernel::set_arg_svm_ptr()
This ignores unused arguments in the kernel::set_arg_svm_ptr()
when compiled without OpenCL 2.0 support. This fixes the "unused
parameter" compiler warning.
2016-07-30 18:19:26 -07:00
Kyle Lutz
75daaf67d1 Remove const from return type of context_error::get_private_info_size()
This removes the const specifier from the return type of the
context_error::get_private_info_size() method. This fixes the "type
qualifiers ignored on function return type" compiler warning.
2016-07-30 18:14:56 -07:00
Kyle Lutz
b8fdabab19 Merge pull request #636 from dPavelDev/develop
Fixed bug in opengl_create_shared_context
2016-07-27 21:14:38 -07:00
dPavelDev
e978396b21 Fixed bug in opengl_create_shared_context 2016-07-27 14:36:57 +03:00
Jakub Szuppe
32dc57bbf9 Add scan for multicore CPUs 2016-07-25 22:37:17 +02:00
Jakub Szuppe
cd5bb606ec Rename scan_on_cpu to serial_scan 2016-07-25 15:28:19 +02:00
Kyle Lutz
1d2f8cfbd9 Merge pull request #633 from haahh/pr_find_extrema_cpu
find_extrema for CPUs
2016-07-20 22:23:51 -07:00
Jakub Szuppe
06124180dc Fix find_extrema_with_reduce()
It fixes wrong type of variable representing index.
2016-07-17 13:24:07 +02:00
Jakub Szuppe
4c21633bf9 Fix vector copy ctor when using non-default context
Now correct queue (from correct context) is used in copy
constructor of boost::compute::vector.
2016-07-17 00:01:47 +02:00
Jakub Szuppe
fb641de7cc Add operator= for vectors with different allocator
Now code: `vector<T> a(context); vector<T, OtherAlloc> b(context);
a = b;` works.
2016-07-16 20:14:14 +02:00
Jakub Szuppe
8ae5cc9117 Array should always use queue from its context
Until now boost::compute::array worked correctly only
for default context (global) since it was using default
queue (global) for all its operations. Now it uses queue
from its context.
2016-07-16 19:30:25 +02:00
Jakub Szuppe
b810d12aea Making sure serial_reduce_threshold is in the right range
Parameter serial_reduce_threshold for reducing on CPU
should be always greater or equal to the number of compute units
(cores) in the CPU.
2016-07-16 13:02:34 +02:00
Jakub Szuppe
04b6e8fba3 find_extrema() optimized for multicore CPUs 2016-07-16 13:02:34 +02:00
Kyle Lutz
d303097000 Merge pull request #626 from haahh/pr_transform_cpu
Transform for multicore CPUs
2016-07-11 20:16:53 -07:00
Kyle Lutz
6e3213bfcf Merge pull request #628 from haahh/pr_reduce_cpu
Reduce for CPU
2016-07-11 20:16:19 -07:00
Thomas Trummer
a800dd33a1 Fix build error due to possible typo (on macOS) 2016-07-10 19:54:45 +02:00
Jakub Szuppe
a10e7d31f7 Disable CPU-optimized transform/copy_on_device() on Apple
Yet another bug on Apple OpenCL Platform.
2016-07-10 16:17:48 +02:00
Jakub Szuppe
4093481920 Remove unnecessary check 2016-07-10 13:56:39 +02:00
Jakub Szuppe
97f0225072 Fix ‘local_vals_arg’ may be uninitialized warning 2016-07-09 14:39:47 +02:00
Jakub Szuppe
9e2fc74826 Use serial_reduce for small inputs
For inputs smaller than <serial_reduce_threshold>
serial_reduce algorithm is used.
2016-07-09 14:06:06 +02:00
Jakub Szuppe
a085e6b3e1 Reduce for multicore CPUs 2016-07-09 14:06:06 +02:00
Jakub Szuppe
34c476c87a Tranform/copy on device optimized for CPUs 2016-07-06 19:23:30 +02:00
Kyle Lutz
a3f72e6191 Merge pull request #622 from haahh/pr_adjacent_diff_fix
Fix adjacent_difference when first == result
2016-07-05 16:52:40 -07:00
Jakub Szuppe
c6123c403c Remove unused function 2016-07-05 13:40:42 +02:00
Jakub Szuppe
92a16e459c Fix adjacent_difference when first == result
Situation where first == result was only covered
when binary function was not specified.
2016-07-01 21:25:46 +02:00
Jakub Szuppe
c47753c4fa Stable comparison sort, sort-by-key 2016-06-22 17:06:12 +02:00
Jakub Szuppe
7996382178 Use index instead of copying vals in bitonic sort-by-key
Instead of copying values in local memory in bitonic block
sort (when sorting by key), we save and copy local index
and copy value once at the end. This saves local memory.
2016-06-22 15:59:55 +02:00
Jakub Szuppe
8f033e72ee Add comparison sort and sort by key 2016-06-21 17:41:36 +02:00
Jakub Szuppe
8f4db3d7b7 Reuse dispatch_copy_async() in dispatch_copy() 2016-05-28 22:54:51 +02:00
Jakub Szuppe
bffc9f74fb Fix async copying when first == last (input is empty) 2016-05-28 22:46:35 +02:00
Jakub Szuppe
c9a0aba172 Remove debug macro, fix names of event variables 2016-05-28 22:05:50 +02:00
Jakub Szuppe
5c29b50823 Coping SVM to/from host by mapping SVM memory 2016-05-28 13:15:36 +02:00
Jakub Szuppe
753f883321 Support for svm_ptr<T> in meta_kernel 2016-05-28 13:15:36 +02:00
Jakub Szuppe
4280024f26 Now svm_ptr<T> keeps its context
This commit modifies svm_ptr<T> to keep its context. It is
convenient for the users and enables creating
svm_ptr_index_expr<T, IndexExpr> class.
2016-05-28 13:15:36 +02:00
Jakub Szuppe
aaaaca4ed2 Type-safe async coping from device to host 2016-05-28 13:15:36 +02:00
Jakub Szuppe
3dcbd4c001 Fix async coping svm_ptr<> from/to/on device 2016-05-28 13:15:36 +02:00