27 Commits

Author SHA1 Message Date
Jakub Szuppe ca75931466 Use BOOST_COMPUTE_CL_VERSION_X_Y in tests 2017-04-23 20:11:10 +02:00
Jakub Szuppe 69e09f27d8 Minor fixes in test_copy.cpp 2016-05-28 13:15:36 +02:00
Jakub Szuppe 7461c92fdc Add test for async coping with svm_ptr<> 2016-05-24 21:37:29 +02:00
Jakub Szuppe 1419b7d36f Type-safe copying from device to host
Type-safe copying from device to host. Seperate copying
algorithm device -> host for non-contiguous OutputIterator (host).
2016-05-24 21:37:29 +02:00
Jakub Szuppe 02e12b40fd Enable copying with copy buffer op for device_ptr
This commit enables copying data using clEnqueueCopyBuffer()
in boost::compute::copy() algorithm for device_ptr<>.
2016-05-03 21:39:19 +02:00
Kohei Takahashi 2dc156d964 Fix missing includes. 2016-01-05 09:47:40 +09:00
Jakub Szuppe 972a1a26e8 Skipping copy_svm_ptr test case on AMD devices
clEnqueueSVMMemcpy() operation does not work on AMD devices due to a bug
in drivers (https://community.amd.com/thread/190585). This affects copy()
algorithm (when SVM is used) and results in copy_svm_ptr failing. Now this
test case is skipped on AMD devices.
2015-10-29 12:43:02 +01:00
Jakub Szuppe 1b059f8100 Runtime OpenCL version check in tests 2015-09-24 15:44:52 +02:00
Jakub Szuppe 7894d1f7c0 Add missing queue and context parameters in tests 2015-07-02 22:20:42 +02:00
Kyle Lutz fda67a22d0 Update GitHub links 2015-05-17 20:32:09 -07:00
Kyle Lutz a6bdf21b31 Fix issue with copy() and std::vector<bool> 2014-11-26 08:46:39 -08:00
Kyle Lutz ec254c04bb Add OpenCL 2.0 support 2014-09-13 12:29:03 -07:00
Kyle Lutz 3bf34f368b Fix test for copy_async() 2014-06-08 23:51:08 -07:00
Kyle Lutz ccd6f21d98 Change vector constructors to take queue argument
This changes the vector<T> constructors which copy or initialize
data to take a queue argument used for performing the operations.

Previously they just took a context argument used to initialize the
buffer and then created a new command queue to use. This improves
performance by not requiring a new command queue and also fixes issues
when performing operations on a different command queue while the
vector was still being initialized.
2014-01-27 23:39:19 -08:00
Kyle Lutz b17888b604 Move future header to async directory 2014-01-06 18:44:37 -08:00
Kyle Lutz a8f4421739 Add copy() specialization for host-to-host transfers
This adds a copy() specialization for host-to-host transfers
which simply forwards the call to std::copy().

This is useful in templated algorithms which may in certain
circumstances copy() between data ranges on the host.
2013-09-07 15:29:48 -04:00
Kyle Lutz b10a7a43c6 Add test for copy() command type
This adds a test to ensure that the copy() algorithm uses
the proper command type when copying memory buffers.
2013-07-02 21:57:19 -04:00
Kyle Lutz a2f54abd06 Add test for copy() with std::stringstream
This adds a test for using std::stringstream with the
copy() algorithm.
2013-05-20 22:51:47 -04:00
Kyle Lutz e46828a9d6 Fix issues involving iterators with void value_type
This fixes a few issues encountered when using iterators with a
void value_type (e.g. std::insert_iterator<>).

The is_contiguous_iterator meta-function was refactored to always
return false for iterators with a void value_type and avoid
instantiating types for containers with a void value_type
(e.g. std::vector<void>::iterator) which previously resulted
in compilation errors.
2013-05-20 19:57:13 -04:00
Kyle Lutz 1b9e904cc7 Add CHECK_RANGE_EQUAL() test macro
This adds a new macro for the unit-tests which checks a range of
values on the device against an array of values on the host. This
simplifies writing tests and removes the need to explicitly copy
values back to the host for verification.
2013-05-13 23:06:40 -04:00
Denis Demidov 5d77bbebee Global setup for OpenCL context in tests
refs kylelutz/compute#9

device, context, and queue are initialized statically in `context_setup.hpp`.
With this change all tests are able to complete when an NVIDIA GPU is in
exclusive compute mode.

Side effect of the change:
Time for all tests to complete reduced from 15.71 to 13.03 sec Tesla C2075.
2013-04-19 14:53:59 +04:00
Kyle Lutz 8d13920dc4 Move swizzle_iterator to detail namespace
This moves the swizzle_iterator class to the detail
namespace.
2013-04-10 21:51:24 -04:00
Kyle Lutz 35f3bdc7fd Add test for transform_iterator
This adds a unit test for transform_iterator.
2013-03-19 18:22:54 -04:00
Kyle Lutz d80e2a5c30 Add test for permutation_iterator
This adds a unit test for permutation_iterator.
2013-03-19 18:22:08 -04:00
Kyle Lutz 5f6bdf8644 Add test for counting_iterator
This adds a unit test for counting_iterator.
2013-03-19 18:12:22 -04:00
Kyle Lutz 4aaf4bcbb0 Add test for constant_iterator
This adds a unit test for constant_iterator.
2013-03-19 18:11:59 -04:00
Kyle Lutz d34cdaac59 Initial commit 2013-03-02 15:14:17 -05:00