[SOLVED] Hyperscan AVX-512 gcc arch flag

Started by seed, September 06, 2024, 06:16:51 PM

Previous topic - Next topic
September 06, 2024, 06:16:51 PM Last Edit: September 07, 2024, 06:09:11 PM by seed
Hello OPNsense developers,

Background information on my questions. I have run Suricata performance tests with Ryzen 7700X and Ryzen 9700X and found that the throughput rates in my scenario are almost identical (23Gbit/s and 26Gbit/s). In the Ryzen 9000 generation, the AVX-512 performance should be twice as fast as in the 7000 generation.

Could it be that Hyperscan was built without AVX-512 support? Is that the reason for the low speed differences?

Documentation for reference:
https://intel.github.io/hyperscan/dev-reference/getting_started.html

QuoteHyperscan v5.3 adds support for AVX512VBMI instructions - in particular the AVX512VBMI instruction set that was introduced on Intel "Icelake" Xeon processors - however the AVX512VBMI runtime variant is not enabled by default in fat runtime builds as not all toolchains support AVX512VBMI instruction sets. To build an AVX512VBMI runtime, the CMake variable BUILD_AVX512VBMI must be enabled manually during configuration. For example:

cmake -DBUILD_AVX512VBMI=on <...>

i want all services to run with wirespeed and therefore run this dedicated hardware configuration:

AMD Ryzen 7 9700x
ASUS Pro B650M-CT-CSM
64GB DDR5 ECC (2x KSM56E46BD8KM-32HA)
Intel XL710-BM1
Intel i350-T4
2x SSD with ZFS mirror
PiKVM for remote maintenance

private user, no business use

Alternatively, I would like to know how I can check this myself so that I can answer my own questions.
i want all services to run with wirespeed and therefore run this dedicated hardware configuration:

AMD Ryzen 7 9700x
ASUS Pro B650M-CT-CSM
64GB DDR5 ECC (2x KSM56E46BD8KM-32HA)
Intel XL710-BM1
Intel i350-T4
2x SSD with ZFS mirror
PiKVM for remote maintenance

private user, no business use

Considering the following note, I'd say this debate is very much pointless.

Quote
There is currently no operating system support for this feature on non-Linux systems.

https://github.com/opnsense/ports/blob/master/devel/hyperscan/Makefile

Quote from: doktornotor on September 07, 2024, 04:40:32 PM
Considering the following note, I'd say this debate is very much pointless.

Quote
There is currently no operating system support for this feature on non-Linux systems.

https://github.com/opnsense/ports/blob/master/devel/hyperscan/Makefile


Thank you for looking this up. So if i understand correctly there is no AVX-512 support.
i want all services to run with wirespeed and therefore run this dedicated hardware configuration:

AMD Ryzen 7 9700x
ASUS Pro B650M-CT-CSM
64GB DDR5 ECC (2x KSM56E46BD8KM-32HA)
Intel XL710-BM1
Intel i350-T4
2x SSD with ZFS mirror
PiKVM for remote maintenance

private user, no business use


This totally explains the small performance difference. I tmarked this as solved.
i want all services to run with wirespeed and therefore run this dedicated hardware configuration:

AMD Ryzen 7 9700x
ASUS Pro B650M-CT-CSM
64GB DDR5 ECC (2x KSM56E46BD8KM-32HA)
Intel XL710-BM1
Intel i350-T4
2x SSD with ZFS mirror
PiKVM for remote maintenance

private user, no business use