summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2017-01-24FillCache: perform compilation for each precision separatelyIvan Shapovalov
Thus do not prevent filling cache for float if the device does not support e. g. double.
2017-01-24Routine: fix semi-warm routine construction (when binary is in cache)Ivan Shapovalov
There was a missing return statement in the semi-warm path that made CLBlast to continue to cold path after a cache hit.
2017-01-24src/clpp11.hpp: check pointers before clRelease*()Ivan Shapovalov
This is to avoid spurious "induced" errors on destruction, if construction failed for some reason.
2017-01-24src/clpp11.hpp: do not store program source/binary in ProgramIvan Shapovalov
The stored source/binary does not seem to serve any purpose, yet its presence makes Program a heavy (not pure refcounted) object, which is undesired esp. because it is copied from the cache in the hot path.
2017-01-20treewide: include clpp11.hpp first to silence deprecation warningsIvan Shapovalov
Otherwise, cl.h gets included through clblast.h before clpp11.hpp.
2017-01-20Routine: use PrecisionSupported<>() instead of duplicating the checkIvan Shapovalov
2017-01-19Added tuning results for NVIDIA GTX 1080 and Intel Core i7-4790KCedric Nugteren
2017-01-07Always enables cl_khr_fp64 when running double-precision, not just for ↵Cedric Nugteren
OpenCL 1.1 or lower
2017-01-03Added tuning results for the AMD Turks GPU and the Intel Core i7-2670QM CPUCedric Nugteren
2016-12-18Fixed a bug when using offsets in the direct GEMM kernelsCedric Nugteren
2016-11-29Made Intel GPUs always use the indirect version of the GEMM kernelCedric Nugteren
2016-11-27Made it possible to use the command-line environmental variables for each ↵Cedric Nugteren
executable and without re-running CMake
2016-11-26Improved the default parameters for cases with non-common parameters across ↵Cedric Nugteren
all devices
2016-11-24Merge pull request #125 from CNugteren/netlib_blas_apiCedric Nugteren
Netlib CBLAS API for CLBlast
2016-11-23Fixed a vector-size related bug in the CLBlast Netlib APICedric Nugteren
2016-11-23Fixed a bug in the HSCAL routineCedric Nugteren
2016-11-22Minor changes to ensure full compatibility with the Netlib CBLAS APICedric Nugteren
2016-11-20Made functions with scalar-buffers as output properly return valuesCedric Nugteren
2016-11-20Now correctly tests for validaty of the B matrix in the TRMM routineCedric Nugteren
2016-11-20Forced OpenCL 1.1 compilation and disabled a deprecation warningCedric Nugteren
2016-11-20Fixed a bug in the TRMM routine caused by overwriting input data before ↵Cedric Nugteren
consuming everything
2016-11-19Changed the GEMM kernel selection parameters for Skylake GPUs to always ↵Cedric Nugteren
favour the regular kernel
2016-11-15Updated the tuning results for the Intel Skylake ULT GT2 GPUCedric Nugteren
2016-10-25Renamed the include and source files of the Netlib CBLAS APICedric Nugteren
2016-10-25Removed the clblast namespace from the Netlib C API source file to ensure ↵Cedric Nugteren
proper linking
2016-10-25Fixed some issues preventing the Netlib CBLAS API from linking correctlyCedric Nugteren
2016-10-25Made the Netlib CBLAS API use the same enums with prefixes as the regular C ↵Cedric Nugteren
API of CLBlast
2016-10-25Sets the proper sizes for the buffers for the Netlib CBLAS APICedric Nugteren
2016-10-25Added initial version of a Netlib CBLAS implementation. TODO: Set correct ↵Cedric Nugteren
buffer sizes
2016-10-24Added tuning results for GeForce GTX TITAN BlackCedric Nugteren
2016-10-23Fixed a bug in the transpose-matrix functionCedric Nugteren
2016-10-23Removed PUBLIC_API from the C++ exception classesCedric Nugteren
2016-10-23Added a fix for compilation under Visual Studio 2013 related to the new ↵Cedric Nugteren
exception classes
2016-10-22Added tuning results for the AMD Tonga GPUCedric Nugteren
2016-10-22All enums in the C API are now prefixed with CLBlast to avoid potential name ↵Cedric Nugteren
clashes with other projects
2016-10-22Moved files around a bit; created a utilities subfolderCedric Nugteren
2016-10-22Added documentation for the better exception handlingCedric Nugteren
2016-10-22Merge pull request #117 from intelfx/exceptionsCedric Nugteren
Convert to use C++ exceptions internally
2016-10-22Fixed a bug in the SYRK/SYR2K/HERK/HER2K routines that would occur with ↵Cedric Nugteren
specific tuning parameters (2)
2016-10-22Fixed a bug in the SYRK/SYR2K/HERK/HER2K routines that would occur with ↵Cedric Nugteren
specific tuning parameters
2016-10-22Routine: get rid of ::SetUp()Ivan Shapovalov
Since we now use C++ exceptions inside the implementation (and exceptions can be thrown from constructors), there is no need for a separate Routine::SetUp() function. For this, we also change the way how the kernel source string is constructed. The kernel-specific source code is now passed to the Routine ctor via an initializer_list of C strings to avoid unnecessary data copying while also working around C1091 of MSVC 2013.
2016-10-22treewide: use C++ exceptions properlyIvan Shapovalov
Since the codebase is designed around proper C++ idioms such as RAII, it makes sense to only use C++ exceptions internally instead of mixing exceptions and error codes. The exceptions are now caught at top level to preserve compatibility with the existing error code-based API. Note that we deliberately do not catch C++ runtime errors (such as `std::bad_alloc`) nor logic errors (aka failed assertions) because no actual handling can ever happen for such errors. However, in the C interface we do catch _all_ exceptions (...) and convert them into a wild-card error code.
2016-10-22src/clpp11.hpp: avoid throwing exceptions from std::shared_ptr's DeleterIvan Shapovalov
2016-10-22src/clpp11.hpp: GetInfoString: avoid reallocationIvan Shapovalov
2016-10-22src/clpp11.hpp: reinstate error checking on clGetEventProfilingInfo()Ivan Shapovalov
2016-10-21Merge pull request #118 from matze/add-pkg-configCedric Nugteren
Generate and install pkg-config description
2016-10-21Generate and install pkg-config descriptionMatthias Vogelgesang
2016-10-14Fixed an issue with a growing database: the database is now a global ↵Cedric Nugteren
variable in a namespace and its container uses const-pointers to the actual data
2016-10-13Added tuning results for Intel HD Graphics IvyBridge GPUCedric Nugteren
2016-10-12Removed a spurious #ifdefCedric Nugteren