Commit Graph

48 Commits

Author SHA1 Message Date
Jakub Szuppe
1311de15a3 Add benchmark for comparison sort 2016-06-22 15:59:55 +02:00
Jakub Szuppe
5e28138a7a Update minimum required Boost version to 1.54 2016-05-03 14:32:22 +02:00
Jakub Szuppe
8bc763cd53 MSVC/WIN-related update of CMakeLists.txt files
This commit fixes misc. bugs in CMakeLists.txt files that
were causing various build errors and warnigns.
2016-03-09 18:56:16 +01:00
Jakub Szuppe
a1895728a1 Use custom FindOpenCL.cmake only for cmake older than 3.1 2016-03-09 15:30:02 +01:00
Kyle Lutz
15a778d84a Merge pull request #480 from haahh/pr_boost_inspection
Fixing problems reported in Boost Inspection Report
2015-07-18 11:01:57 -07:00
Jakub Szuppe
7e12f63a81 Add missing Boost license info and copyrights 2015-07-18 14:01:29 +02:00
Jakub Szuppe
33d8ed2fa9 Reduce_by_key benchmarks for Boost.Compute, Thrust and BOLT 2015-07-15 11:20:49 +02:00
Jakub Szuppe
e6af5dc632 Suppress warnings caused by BOLT library 2015-05-21 13:27:14 +02:00
Kyle Lutz
fda67a22d0 Update GitHub links 2015-05-17 20:32:09 -07:00
Kyle Lutz
7a943b4f91 Merge pull request #453 from haahh/perf_tests_amd_bolt_pr
Performance tests for AMD's Bolt library
2015-05-06 21:54:41 -07:00
Jakub Szuppe
bb1ac41ce5 Add AMD's Bolt perf tests
This adds AMD's Bolt C++ Template Library performance tests, so
Boost.Compute can be compared with Bolt.
2015-05-02 19:46:20 +02:00
Kyle Lutz
415e7a0a21 Merge pull request #444 from haahh/find_benchmark
Benchmarks for find() algorithm #325
2015-03-27 08:17:36 -07:00
Jakub Szuppe
b1acf0ae74 Benchmarks for find() algorithm
Boost.Compute, STL and Thrust benchmarks for find() algorithm.
2015-03-26 13:50:32 +01:00
Kyle Lutz
a3cbcc8b25 Add perf_random_number_engine benchmark
This unifies the random number engine benchmarks into a single
benchmark application which can switch between each engine based
on a command-line argument.
2015-03-16 20:57:12 -07:00
Kyle Lutz
4175a85171 Add parameter_cache class
This adds a parameter_cache class which can be used to store
execution parameters for an algorithm. Also updates some of
the benchmark programs to find and store optimal parameters.
2015-03-15 18:15:57 -07:00
Jakub Szuppe
0ab1d5fea2 Add reverse_copy benchmarks 2015-03-10 13:25:12 +01:00
Kyle Lutz
e92eb1da54 Add more Thrust performance benchmarks 2014-12-21 09:24:15 -08:00
Rastko Anicic
ae014dc757 max_element perf added 2014-12-10 23:23:50 -05:00
Kyle Lutz
05afa5f707 Use thread-local storage for global program cache 2014-09-28 12:37:48 -07:00
Kyle Lutz
744359715f Implement is_sorted() with adjacent_find() 2014-08-21 22:43:46 -07:00
roshanr
d356a2c40d Add benchmark for nth_element 2014-07-30 18:18:34 +05:30
roshanr
5df5d8c3ee Add benchmark for binary_find 2014-07-18 12:32:18 +05:30
Kyle Lutz
e8afaf1e7c Add perf_copy_if benchmark 2014-07-12 14:19:23 -07:00
Kyle Lutz
fb5c5442f7 Add perf_fill benchmark 2014-07-12 13:47:01 -07:00
roshanr
cd41289bbc Add benchmarks for the new disributions 2014-07-02 20:00:23 +05:30
roshanr
acf4698af1 Add benchmark for lce
Added benchmark for lce and changed threads to 1024
2014-06-30 23:41:58 +05:30
roshanr
be18866bca Add benchmarks for permutation algorithms 2014-06-27 08:22:32 +05:30
roshanr
7baff5980a Add benchmarks for search algorithms 2014-06-26 01:27:58 +05:30
roshanr
2e825a9ad1 Add benchmarks for partitioning algorithms 2014-06-25 04:43:47 +05:30
roshanr
e2c5fe5504 Add benchmarks for set algorithms 2014-06-21 02:51:00 +05:30
Benoit Dequidt
48687cd29e Add perf tests for exclusive_scan
- perf_exclusive_scan for Boost.Compute
        - perf_thrust_exclusive_scan for thrust
2014-05-14 23:54:58 +08:00
roshanr
59efaa0eeb Add tests and benchmarks for unique_copy 2014-04-21 02:00:02 +05:30
Kyle Lutz
fa8fcade52 Add perf_erase_remove benchmark 2014-04-12 16:07:30 -07:00
roshanr
1e81b7ec2e Unique algorithm
Added unique() algorithm, tests and benchmarks. Removed unused variable
in scan_on_gpu() to remove warnings
2014-03-24 06:30:28 +05:30
roshanr
9450014389 Add benchmarks for rotate and rotate_copy
Added compute and stl benchmarks for rotate() and rotate_copy()
2014-03-17 19:12:49 +05:30
Kyle Lutz
da22127181 Merge pull request #67 from roshanr95/reverse_benchmarks
Add benchmarks for reverse
2014-03-16 10:27:14 -07:00
roshanr
a65804d0c9 Add benchmarks for reverse
Added STL and Compute benchmarks for reverse()
2014-03-16 22:31:29 +05:30
Kyle Lutz
bae7432c04 Improve sort_by_key() performance 2014-03-12 23:40:57 -07:00
Kyle Lutz
9e5bff9d83 Add SYSTEM to third-party include_directories() calls 2014-03-12 20:41:04 -07:00
Kyle Lutz
ec11d8cdc4 Add third-party perf tests
This adds third-party performance tests to use in comparing
Boost.Compute with other parallel/GPGPU frameworks like Intel's
TBB and NVIDIA's Thrust along with the C++ STL.

Also refactors the timing and profiling infrastructure and adds
a simple perf.py driver script for running performance tests.
2014-02-02 13:12:17 -08:00
Denis Demidov
562f149b18 Implements offline kernel caching
See kylelutz/compute#21

This adds program::build_with_source() function that both creates and
builds the program for the given context with supplied source and
compile options. In case BOOST_COMPUTE_USE_OFFLINE_CACHE macro is
defined, it also saves the compiled program binary for reuse in the
offline cache located in $HOME/.boost_compute folder on UNIX-like
systems and in %APPDATA%/boost_compute folder on Windows.

All internal uses of program::create_with_source() followed by
program::build() are replaced with program::build_with_source().
2014-01-07 09:07:00 +04:00
Kyle Lutz
84b45b4394 Bump Boost version requirement to 1.48
This bumps the required Boost version to 1.48 as Boost.Compute
makes use of Boost.Move which was added in version 1.48.

See issue #37.
2014-01-05 18:53:19 -08:00
Kyle Lutz
8b812a2081 Add perf_cart_to_polar benchmark
This adds a new benchmark to measure the performance of converting
cartesian to polar coordinates using the transform() algorithm.
2013-11-23 12:26:10 -08:00
Kyle Lutz
5b7e22bac2 Add perf_mersenne_twister benchmark
This adds a benchmark for the mersenne_twister engine.
2013-09-24 22:51:26 -04:00
Kyle Lutz
07e4a6b3aa Remove BLAS functions
This removes the incomplete BLAS API functions.
2013-09-24 22:19:56 -04:00
Kyle Lutz
3bc5bfaf78 Remove timer class
This removes the timer class. The technique of measuring the time
difference between two different OpenCL markers on a command queue
is not portable to all OpenCL implementations (only works on NVIDIA).

A new internal timer class has been added which uses boost::chrono
(or std::chrono if BOOST_COMPUTE_TIMER_USE_STD_CHRONO is defined).
This new timer is used by the benchmarks to measure time elapsed
on the host.
2013-05-20 21:08:42 -04:00
Dominic Meiser
2a93124ef5 Using FindOpenCL module from VexCL
Changed CMakeLists.txt files in Boost.Compute to use the variables
defined by FindOpenCL.
2013-04-23 20:03:38 -04:00
Kyle Lutz
d34cdaac59 Initial commit 2013-03-02 15:14:17 -05:00