Header-only auto-vectorization (av) library for primitive arithmetic operations over arrays.
The goal of the project is to provide the best arithmetic kernels for the given architecture.
Library is auto-generated with the help of cmake building system.
It can be included to the destination project simply by adding include_sudirectory(./thirdparty/av).
- Doesn't contain cpp files
- Performs auto adjustment during cmake build
- Provides a way to perform specialization against user-defined function
kernel- an elementary arithmetic operation, hascoretemplate structure and get_label() functiontest_function- user defined structure with fixed interface containing functioncomputeand structureinput_data.computecan be built using one or morekernels.benchmark- automatically generated set ofkernel_tests, one for each specifickernel.kernel_tests- a set oftest_functionsbuilt using a specialized version of kernels, one for each specifickernel_parameter.kernel_parameter- a value which specializes kernel by characteristics depending on the hardware properties.