mirror of
https://github.com/VectorCamp/vectorscan.git
synced 2025-06-28 16:41:01 +03:00
Docs: avx512 support
This commit is contained in:
parent
dba2470ec9
commit
9ce0abe0ff
@ -254,18 +254,32 @@ the current platform is supported by Hyperscan.
|
|||||||
At of this release, the variants of the runtime that are built, and the CPU
|
At of this release, the variants of the runtime that are built, and the CPU
|
||||||
capability that is required, are the following:
|
capability that is required, are the following:
|
||||||
|
|
||||||
+----------+-------------------------------+---------------------+
|
+----------+-------------------------------+---------------------------+
|
||||||
| Variant | CPU Feature Flag(s) Required | gcc arch flag |
|
| Variant | CPU Feature Flag(s) Required | gcc arch flag |
|
||||||
+==========+===============================+=====================+
|
+==========+===============================+===========================+
|
||||||
| Core 2 | ``SSSE3`` | ``-march=core2`` |
|
| Core 2 | ``SSSE3`` | ``-march=core2`` |
|
||||||
+----------+-------------------------------+---------------------+
|
+----------+-------------------------------+---------------------------+
|
||||||
| Core i7 | ``SSE4_2`` and ``POPCNT`` | ``-march=corei7`` |
|
| Core i7 | ``SSE4_2`` and ``POPCNT`` | ``-march=corei7`` |
|
||||||
+----------+-------------------------------+---------------------+
|
+----------+-------------------------------+---------------------------+
|
||||||
| AVX 2 | ``AVX2`` | ``-march=avx2`` |
|
| AVX 2 | ``AVX2`` | ``-march=core-avx2`` |
|
||||||
+----------+-------------------------------+---------------------+
|
+----------+-------------------------------+---------------------------+
|
||||||
|
| AVX 512 | ``AVX512BW`` (see note below) | ``-march=skylake-avx512`` |
|
||||||
|
+----------+-------------------------------+---------------------------+
|
||||||
|
|
||||||
As this requires compiler, libc, and binutils support, at this time the fat
|
.. note::
|
||||||
runtime will only be enabled for Linux builds where the compiler supports the
|
|
||||||
|
Hyperscan v4.5 adds support for AVX-512 instructions - in particular the
|
||||||
|
``AVX-512BW`` instruction set that was introduced on Intel "Skylake" Xeon
|
||||||
|
processors - however the AVX-512 runtime variant is **not** enabled by
|
||||||
|
default in fat runtime builds as not all toolchains support AVX-512
|
||||||
|
instruction sets. To build an AVX-512 runtime, the CMake variable
|
||||||
|
``BUILD_AVX512`` must be enabled manually during configuration. For
|
||||||
|
example: ::
|
||||||
|
|
||||||
|
cmake -DBUILD_AVX512=on <...>
|
||||||
|
|
||||||
|
As the fat runtime requires compiler, libc, and binutils support, at this time
|
||||||
|
it will only be enabled for Linux builds where the compiler supports the
|
||||||
`indirect function "ifunc" function attribute
|
`indirect function "ifunc" function attribute
|
||||||
<https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html#index-indirect-functions-3321>`_.
|
<https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html#index-indirect-functions-3321>`_.
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user