Commit graph

741 commits

Author SHA1 Message Date
Cedric Nugteren d28ee082b0 Uses float2 and double2 for base complex data-types instead of a custom struct; fixes bug on Apple OpenCL 2017-04-07 07:35:15 +02:00
Cedric Nugteren ce369702d8 Added some missing const-ness 2017-04-07 07:34:32 +02:00
Cedric Nugteren 52dd7433ca Completed the cuBLAS wrapper 2017-04-06 20:56:28 +02:00
Cedric Nugteren dbe22b5bf3 Fixed some size_t to int conversion warnings for the CBLAS interface 2017-04-06 19:40:51 +02:00
Cedric Nugteren 674ff96fdf Added a first version of a cuBLAS wrapper (WIP) 2017-04-05 21:27:25 +02:00
Cedric Nugteren af9a521042 Fixes the CUDA wrapper (now actually tested on a system with CUDA) 2017-04-03 21:46:07 +02:00
Cedric Nugteren 0cebcbcc71 Added proper CMake searching for CUDA and cuBLAS 2017-04-03 21:45:18 +02:00
Cedric Nugteren eb1fda2729 In-lined the float2 and double2 types to avoid collision with CUDA's definitions 2017-04-03 21:44:35 +02:00
Cedric Nugteren b24d364743 Layed the groundwork for cuBLAS comparisons in the clients 2017-04-02 18:06:15 +02:00
Cedric Nugteren c5461d77e5 Factored out inclusion of clBLAS and CBLAS from the test-routine files 2017-04-02 15:24:21 +02:00
Cedric Nugteren a9c25e9fd2 Factored out inclusion of clBLAS and CBLAS from the test-routine files 2017-04-02 15:21:19 +02:00
Cedric Nugteren ea0aeadc34 Merge pull request #144 from CNugteren/matplotlib_graphs
Benchmark scripts re-written in Python/Matplotlib
2017-04-02 15:05:09 +02:00
Cedric Nugteren 5079fbaeff Merge pull request #143 from CNugteren/test_cblas_timing
CBLAS reference code is now separated from device-host copies
2017-04-02 14:59:39 +02:00
Cedric Nugteren 0f96e9d2f9 Various tweaks to the new benchmark script 2017-04-02 14:53:55 +02:00
Cedric Nugteren 1ee71fdc80 Tuned the plots for a tight-layout for in papers and presentations 2017-04-01 14:00:46 +02:00
Cedric Nugteren b84d2296b8 Separated host-device and device-host memory copies from execution of the CBLAS reference code; for fair timing and code de-duplication 2017-04-01 13:36:24 +02:00
Cedric Nugteren fa5c4b00b7 Replaced the R graph scripts with Python/Matplotlib benchmark scripts 2017-03-26 15:36:34 +02:00
Cedric Nugteren a98c00a267 Fixed a GCC/MSVC compilation issue 2017-03-20 19:53:55 +01:00
Cedric Nugteren a21d903796 Merge pull request #142 from CNugteren/gemm_batched
Added a first batched version of the GEMM routine
2017-03-19 18:27:40 +01:00
Cedric Nugteren 0610447a7a Fixed a compilation issue for GCC/MSVC 2017-03-19 17:37:52 +01:00
Cedric Nugteren c27d2f0c1e Added an (optional) non-direct implementation of the batched GEMM routine 2017-03-19 16:04:04 +01:00
Cedric Nugteren 2fd04dae83 Added batched versions of the pad/copy/transpose kernels 2017-03-19 15:57:44 +01:00
Cedric Nugteren 11bb30e72b Added the possibility to tune batched kernels 2017-03-14 20:29:51 +01:00
Cedric Nugteren 068ff32e9f Fixed a linker issue for Clang 2017-03-12 10:41:18 +01:00
Cedric Nugteren 7b8f8fce68 Added initial naive version of the batched GEMM routine based on the direct GEMM kernel 2017-03-11 16:02:45 +01:00
Cedric Nugteren 49e04c7fce Added API and test infrastructure for the batched GEMM routine 2017-03-10 21:24:35 +01:00
Cedric Nugteren de3500ed18 Merge pull request #141 from CNugteren/axpy_batched
Added the batched version of the AXPY routine
2017-03-10 21:15:29 +01:00
Cedric Nugteren 3846f44eaf Small fix for a file that isn't currently compiled anymore 2017-03-10 20:53:20 +01:00
Cedric Nugteren d754586b49 Added proper testing of the alpha parameter; finalized the batched AXPY implementation 2017-03-10 20:49:59 +01:00
Cedric Nugteren 92a657290a Fixed a small compilation bug for MSVC related to a floating-point constant 2017-03-10 20:30:10 +01:00
Cedric Nugteren 878d93e7dc Implemented a batched version of the AXPY kernel 2017-03-08 20:36:35 +01:00
Cedric Nugteren fa0a9c689f Make batched routines based on offsets instead of a vector of cl_mem objects - undoing many earlier changes 2017-03-08 20:10:20 +01:00
Cedric Nugteren 6aba0bbae7 Minor fixes to the client w.r.t. the addition of the batch count 2017-03-05 16:44:16 +01:00
Cedric Nugteren b114ea49a9 Added first naive version of the batched AXPY routine 2017-03-05 15:06:14 +01:00
Cedric Nugteren cdf354f895 Adjusted the test-infrastructure to support testing of batched-versions of routines 2017-03-05 15:04:16 +01:00
Cedric Nugteren 7f14b11f1e Changed the way the test-data is generated: now using a single MT generator and distribution for all data 2017-03-05 11:13:47 +01:00
Cedric Nugteren f9a520b3af Prepared generator for batched routines; added batched AXPY routine interface 2017-03-05 10:38:38 +01:00
Cedric Nugteren 37228c9098 Fixed a missing include for the tests 2017-03-04 20:45:39 +01:00
Cedric Nugteren e9ef037549 Added tuning results for the Radeon HD6750M GPU (Apple OpenCL) 2017-03-04 15:24:55 +01:00
Cedric Nugteren e993ee077b Added a proper data-preparation function for the TRSM tests 2017-03-04 15:21:33 +01:00
Cedric Nugteren 3fc73851f7 Added proper support for the b_offset argument in TRSM 2017-03-01 21:23:33 +01:00
Cedric Nugteren e8d5923d27 Made a double to float cast explicit for MSVC compatibility (C2397) 2017-03-01 20:42:06 +01:00
Cedric Nugteren d6f1b5fca3 Added L2 error computation and checking for half-precision tests 2017-02-27 21:49:20 +01:00
Cedric Nugteren 00281dad26 Fixed half-precision bugs in HTBMV/HTPMV/HTRMV/HSYR2K/HTRMM related to incorrect constants 2017-02-27 21:00:04 +01:00
Cedric Nugteren 4284fcd940 Updated the README documentation 2017-02-26 16:32:53 +01:00
Cedric Nugteren 7de7e7d8ed Merge pull request #138 from CNugteren/triangular_solvers
Added the triangular solvers (TRSV/TRSM)
2017-02-26 16:26:41 +01:00
Cedric Nugteren e09c26c706 Split the GEMM kernel further up to prevent C1091 in MSVC 2017-02-26 15:03:12 +01:00
Cedric Nugteren dde67ac79e Minor fix to the generator script 2017-02-26 14:53:58 +01:00
Cedric Nugteren ea6790665d Merge branch 'development' into triangular_solvers 2017-02-26 14:51:45 +01:00
Cedric Nugteren a145890aaa Added a guard against invalid buffer sizes in the prepare-data functions for tests 2017-02-26 14:37:29 +01:00