mirror of
https://github.com/CNugteren/CLBlast.git
synced 2024-07-07 12:23:46 +02:00
Updated the documentation in light of the support for a reference CPU BLAS library
This commit is contained in:
parent
cf841d1840
commit
c4ab9bda63
|
@ -2,6 +2,7 @@
|
||||||
Development version (next release)
|
Development version (next release)
|
||||||
- Added exports to be able to create a DLL on Windows (thanks to Marco Hutter)
|
- Added exports to be able to create a DLL on Windows (thanks to Marco Hutter)
|
||||||
- Made the library thread-safe
|
- Made the library thread-safe
|
||||||
|
- Performance and correctness tests can now (on top of clBLAS) be performed against CPU BLAS libraries
|
||||||
- Fixed the use of events within the library
|
- Fixed the use of events within the library
|
||||||
- Added level-1 routines:
|
- Added level-1 routines:
|
||||||
* SNRM2/DNRM2/ScNRM2/DzNRM2
|
* SNRM2/DNRM2/ScNRM2/DzNRM2
|
||||||
|
|
13
README.md
13
README.md
|
@ -52,6 +52,14 @@ The pre-requisites for compilation of CLBlast are:
|
||||||
- Intel OpenCL
|
- Intel OpenCL
|
||||||
- Beignet
|
- Beignet
|
||||||
|
|
||||||
|
Furthermore, to build the (optional) correctness and performance tests, another BLAS library is needed to serve as a reference. This can be either:
|
||||||
|
|
||||||
|
* The OpenCL BLAS library [clBLAS](http://github.com/clMathLibraries/clBLAS (maintained by AMD)
|
||||||
|
* A regular CPU Netlib BLAS library, e.g.:
|
||||||
|
- OpenBLAS
|
||||||
|
- BLIS
|
||||||
|
- Accelerate
|
||||||
|
|
||||||
An example of an out-of-source build (starting from the root of the CLBlast folder):
|
An example of an out-of-source build (starting from the root of the CLBlast folder):
|
||||||
|
|
||||||
mkdir build
|
mkdir build
|
||||||
|
@ -135,9 +143,9 @@ To make sure CLBlast is working correctly on your device (recommended), compile
|
||||||
|
|
||||||
cmake -DTESTS=ON ..
|
cmake -DTESTS=ON ..
|
||||||
|
|
||||||
Afterwards, executables in the form of `clblast_test_xxxxx` are available, in which `xxxxx` is the name of a routine (e.g. `xgemm`). Note that CLBlast is tested against [clBLAS](http://github.com/clMathLibraries/clBLAS) for correctness. The library clBLAS is therefore required to be installed on your system for the CLBlast tests.
|
Afterwards, executables in the form of `clblast_test_xxxxx` are available, in which `xxxxx` is the name of a routine (e.g. `xgemm`). Note that CLBlast is best tested against [clBLAS](http://github.com/clMathLibraries/clBLAS) for correctness. If the library clBLAS is not installed on your system, it will use a regular CPU BLAS library to test against.
|
||||||
|
|
||||||
With the `-DTESTS=ON` flag, additional performance tests are compiled. These come in the form of client executables named `clblast_client_xxxxx`, in which `xxxxx` is the name of a routine (e.g. `xgemm`). These clients take a bunch of configuration options and directly run both CLBlast and clBLAS in a head-to-head performance test.
|
With the `-DTESTS=ON` flag, additional performance tests are compiled. These come in the form of client executables named `clblast_client_xxxxx`, in which `xxxxx` is the name of a routine (e.g. `xgemm`). These clients take a bunch of configuration options and directly run CLBlast in a head-to-head performance test against clBLAS and/or a CPU BLAS library.
|
||||||
|
|
||||||
|
|
||||||
Performance remarks
|
Performance remarks
|
||||||
|
@ -249,4 +257,3 @@ To-do list before release of version 1.0
|
||||||
- Support all routines supported by clBLAS
|
- Support all routines supported by clBLAS
|
||||||
- Allow the user control over events and synchronization
|
- Allow the user control over events and synchronization
|
||||||
- Add half-precision routines (e.g. HGEMM)
|
- Add half-precision routines (e.g. HGEMM)
|
||||||
- Enable correctness and performance testing against a CPU-based BLAS library
|
|
||||||
|
|
Loading…
Reference in a new issue