OPNsense Forum

English Forums => 24.7, 24.10 Legacy Series => Topic started by: seed on September 06, 2024, 06:16:51 PM

Title: [SOLVED] Hyperscan AVX-512 gcc arch flag
Post by: seed on September 06, 2024, 06:16:51 PM
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 <...>

Title: Re: Hyperscan AVX-512 gcc arch flag
Post by: seed on September 07, 2024, 04:25:19 PM
Alternatively, I would like to know how I can check this myself so that I can answer my own questions.
Title: Re: Hyperscan AVX-512 gcc arch flag
Post by: 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
Title: Re: Hyperscan AVX-512 gcc arch flag
Post by: seed on September 07, 2024, 05:54:47 PM
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.
Title: Re: Hyperscan AVX-512 gcc arch flag
Post by: doktornotor on September 07, 2024, 06:01:41 PM
Apparently not, even upstream.  :)
Title: Re: [SOLVED] Hyperscan AVX-512 gcc arch flag
Post by: seed on September 07, 2024, 06:09:58 PM
This totally explains the small performance difference. I tmarked this as solved.