diff options
-rw-r--r-- | .appveyor.yml | 42 | ||||
-rw-r--r-- | .travis.yml | 2 | ||||
-rw-r--r-- | CHANGELOG | 1 | ||||
-rw-r--r-- | README.md | 8 |
4 files changed, 48 insertions, 5 deletions
diff --git a/.appveyor.yml b/.appveyor.yml new file mode 100644 index 00000000..9d5ce74b --- /dev/null +++ b/.appveyor.yml @@ -0,0 +1,42 @@ +environment: + global: + CLBLAST_ROOT: "%APPVEYOR_BUILD_FOLDER%\\bin\\clblast" + OPENCL_REGISTRY: "https://www.khronos.org/registry/cl" + OPENCL_ROOT: "%APPVEYOR_BUILD_FOLDER%\\bin\\opencl" + +platform: + - x64 + +# Creates an OpenCL library to link against. Taken from clMathLibraries/clBLAS +install: + - ps: mkdir $env:OPENCL_ROOT + - ps: pushd $env:OPENCL_ROOT + - ps: $opencl_registry = $env:OPENCL_REGISTRY + # This downloads the source to the example/demo icd library + - ps: wget $opencl_registry/specs/opencl-icd-1.2.11.0.tgz -OutFile opencl-icd-1.2.11.0.tgz + - ps: 7z x opencl-icd-1.2.11.0.tgz + - ps: 7z x opencl-icd-1.2.11.0.tar + - ps: mv .\icd\* . + # This downloads all the opencl header files + # The cmake build files expect a directory called inc + - ps: mkdir inc/CL + - ps: wget $opencl_registry/api/1.2/ | select -ExpandProperty links | where {$_.href -like "*.h*"} | select -ExpandProperty outerText | foreach{ wget $opencl_registry/api/1.2/$_ -OutFile inc/CL/$_ } + # - ps: dir; if( $lastexitcode -eq 0 ){ dir include/CL } else { Write-Output boom } + # Create the static import lib in a directory called lib, so findopencl() will find it + - ps: mkdir lib + - ps: pushd lib + - cmake -G "NMake Makefiles" .. + - nmake + - ps: popd + # Rename the inc directory to include, so FindOpencl() will find it + - ps: ren inc include + - ps: popd + - ps: popd + +before_build: + - ps: mkdir $env:CLBLAST_ROOT + - ps: pushd $env:CLBLAST_ROOT + - cmake -G"Visual Studio 14 Win64" -DTESTS=ON -DCLIENTS=ON %APPVEYOR_BUILD_FOLDER% + +build_script: + - cmake --build . diff --git a/.travis.yml b/.travis.yml index d5f1dc75..8e1a80db 100644 --- a/.travis.yml +++ b/.travis.yml @@ -20,7 +20,7 @@ addons: env: global: - - CLBLAST_ROOT=${TRAVIS_BUILD_DIR}/bin/make/release + - CLBLAST_ROOT=${TRAVIS_BUILD_DIR}/bin/clblast - OPENCL_REGISTRY=https://www.khronos.org/registry/cl - OPENCL_ROOT=${TRAVIS_BUILD_DIR}/bin/opencl @@ -5,6 +5,7 @@ Development version (next release) - Made a reference BLAS and head-to-head performance comparison optional in the clients - Increased the verbosity of the "-verbose" option in the correctness tests - Refactored the host code for better compilation times and fewer lines of code +- Added Appveyor continuous integration and increased coverage of the Travis builds - Improved the API documentation - Various minor fixes and enhancements - Added tuned parameters for various devices (see README) @@ -1,11 +1,11 @@ +CLBlast: The tuned OpenCL BLAS library +================ + | | master | development | |-----|-----|-----| | Linux/OS X | [![Build Status](https://travis-ci.org/CNugteren/CLBlast.svg?branch=master)](https://travis-ci.org/CNugteren/CLBlast/branches) | [![Build Status](https://travis-ci.org/CNugteren/CLBlast.svg?branch=development)](https://travis-ci.org/CNugteren/CLBlast/branches) | - - -CLBlast: The tuned OpenCL BLAS library -================ +| Windows | | | CLBlast is a modern, lightweight, performant and tunable OpenCL BLAS library written in C++11. It is designed to leverage the full performance potential of a wide variety of OpenCL devices from different vendors, including desktop and laptop GPUs, embedded GPUs, and other accelerators. CLBlast implements BLAS routines: basic linear algebra subprograms operating on vectors and matrices. |