summaryrefslogtreecommitdiff
path: root/src/routines/level3
AgeCommit message (Collapse)Author
2016-10-10Fixed an issue with the length of the GEMM OpenCL string for both MSVC 2013 ↵Cedric Nugteren
and 2015
2016-10-06Added a kernel selection database to select between the direct and indirect ↵Cedric Nugteren
GEMM kernels
2016-10-03Re-organised GEMM direct kernel and added faster fall-back version for ↵Cedric Nugteren
incomplete rectangles
2016-10-02Specialised the GEMM direct kernel in four ways for ↵Cedric Nugteren
transposing/non-transposing: NN, NT, TN, TT
2016-10-02Split the GEMM direct kernel into two files; set the default tuning target ↵Cedric Nugteren
to 256-256-256
2016-09-25Added a first version of a tuner for the GEMM direct kernel; collapsed MWGD, ↵Cedric Nugteren
NWGD and KWGD into one WGD parameter
2016-09-25Separated the tuning parameters of the new direct GEMM kernel from the ↵Cedric Nugteren
indirect version
2016-09-21Merge branch 'development' into gemm_directCedric Nugteren
2016-09-12Split the XGEMM kernel further up: now in 3 parts. This is done because MSVC ↵Cedric Nugteren
can't handle long strings
2016-07-26Fixed issues related to the recent changes in the Xgemm infrastructureCedric Nugteren
2016-07-26Merge branch 'development' into gemm_directCedric Nugteren
2016-07-22xgemm: do not hardcode kernel requirements for internal matrix layoutIvan Shapovalov
Do not hardcode the knowledge about "A and C col-major, B row-major". This allows for easier reuse of the DoGemm() routine with different kernels.
2016-07-17Improved the GEMM direct kernel by adding register blocking. Still not fast ↵Cedric Nugteren
though
2016-07-16Created infrastructure to support a direct GEMM kernel; added correct but ↵Cedric Nugteren
slow reference kernel as a place-holder
2016-07-16Removed an unused variable from the copy-transpose-pad functionCedric Nugteren
2016-07-10Now passing alpha/beta to the kernel as arguments as before fp16 support; in ↵Cedric Nugteren
case of fp16 arguments are cast on host and in kernel
2016-06-27Fixes for the AppVeyor Windows buildCedric Nugteren
2016-06-19Renamed all C++ source files to .cpp to match the .hpp extension betterCedric Nugteren
2016-06-18Moved all headers into the source tree, changed headers to .hpp extensionCedric Nugteren
2016-06-18Removed the template from the Routine base-classCedric Nugteren
2016-06-17Removed the precision argument from the routines in favor of a single ↵Cedric Nugteren
templated function
2016-06-17Removed the interface to the cache functions from the Routine class, calls ↵Cedric Nugteren
them directly now
2016-06-17Moved the RunKernel and PadCopyTransposeMatrix functions out of the Routine ↵Cedric Nugteren
class
2016-06-17Moved the test-for-valid-buffers function from the Routine class to separate ↵Cedric Nugteren
functions in a separate file
2016-06-16Added XOMATCOPY routines to perform out-of-place matrix scaling, copying, ↵Cedric Nugteren
and/or transposing
2016-06-15Added some constness to variables related to the GEMM routinesCedric Nugteren
2016-06-14Re-organised the level-3 supporting kernels (copy, pad, transpose, convert) ↵Cedric Nugteren
and renamed files and functions appropriately
2016-05-25Added level-3 half-precision routines HGEMM/HSYMM/HSYRK/HSYR2K/HTRMMCedric Nugteren
2016-05-18Merged in latest changes from 0.7.1 releaseCedric Nugteren
2016-05-16Prepared GEMM and supporting kernels and tuners for half-precision supportCedric Nugteren
2016-05-13Initial experimental version of the half-precision HAXPY routineCedric Nugteren
2016-04-28Fixed the cache to store binaries instead of OpenCL programsCedric Nugteren
2016-04-09Events are now properly implemented using event waiting list and asking the ↵cnugteren
user to wait for event completion
2016-02-08Separated the GEMM kernel in two parts to reduce string length for MSVCCedric Nugteren
2016-01-30Added first auto-generated database headers from the Python database; only ↵Cedric Nugteren
K40 and Iris supported now
2015-10-12Routine names are now all default arguments defined in the headerCNugteren
2015-10-12Moved level3 kernel files to a subfolderCNugteren
2015-07-27Now using the new Claduc C++11 OpenCL headerCNugteren
2015-07-19Kernel caching is now based on a routine's nameCNugteren
2015-07-19The kernel source string is now a routine's member variableCNugteren
2015-07-15Skips pre/post processing kernels if not neededCNugteren
2015-07-13Updated interface of the PadCopyTransposeMatrix methodCNugteren
2015-07-12Added subfolders for the level1/2/3 routinesCNugteren