Go to file
Zhang Xianyi ef53358569 Merge pull request #31 from martin-frbg/master
Add detection of Intel Skylake and Kaby Lake
2016-12-18 14:49:32 +08:00
cmake Add detection of Intel Skylake and Kaby Lake 2016-12-17 12:32:31 +01:00
config Change the compiler option for ARM. 2015-05-04 19:41:36 +00:00
driver Fix dll export bug on MSVC. Turnoff building static library and test on MSVC. 2015-04-23 14:39:00 -05:00
include implement v?Sqr as y =__mm256_mul_pd(a, a) 2016-09-13 20:29:31 +08:00
interface implement v?Sqr as y =__mm256_mul_pd(a, a) 2016-09-13 20:29:31 +08:00
kernel implement v?Sqr as y =__mm256_mul_pd(a, a) 2016-09-13 20:29:31 +08:00
reference implement v?Sqr as y =__mm256_mul_pd(a, a) 2016-09-13 20:29:31 +08:00
test implement v?Sqr as y =__mm256_mul_pd(a, a) 2016-09-13 20:29:31 +08:00
.gitignore Update ignore files for cmake 2015-08-14 11:44:25 -05:00
.travis.yml [av skip] Update travis ci. 2016-02-12 02:46:16 +08:00
CMakeLists.txt Add real number sin, cos, sincos. Refs #4. 2015-08-25 23:10:15 -05:00
LICENSE BSD-2 Clause. 2015-01-08 01:00:17 +08:00
README.md [av skip] Update readme. 2015-08-20 15:54:33 -05:00
appveyor.yml Use Visual Studio 12 2013 on appveyor. 2015-08-20 15:32:19 -05:00

README.md

OpenVML

Join the chat at https://gitter.im/xianyi/OpenVML Travis CI:Build Status AppVeyor:Build Status

OpenVML is an open soruce vector math library.

Support Processors and OS

  • Generic platform

    • C and unoptimized codes
  • OS

    • Linux
    • Mac OSX
    • Windows (Visual Studio or MinGW)
  • x86_64

    • Intel Sandy Bridge
    • Intel Haswell
  • ARM

    • ARMv7 (Cortex-A9, Cortex-A15)

Compile

You need (CMake)[www.cmake.org] on your platform.

  • Linux or Mac OSX:
mkdir /your/build
cd /your/build
cmake /path/to/OpenVML
make
make install
  • Visual Studio
  • Need MS Visual Studio 2013 and above.
  • Use cmake or cmake-gui to generate Visual Studio solution files.
  • Use Visual Studio to open the solution and build.

Test

  • Check the result and Performance

    Run /your/build/test/run_vml_test. For exmaple,

    ./run_vml_test                          # Run all test
    ./run_vml_test  -r check_result_s       # Only run single precision functions.
    ./run_vml_test  -r check_result_s add   # Only run single precision add function (vsAdd).
    ./run_vml_test  -n 1 10 2               # The input sizes are from 1 to 10, step 2.
    
  • Misc test

    Run /your/build/test/misc_test.

Status

Ongoing work