Draft: Initial Intel HEXL patch
Initial integration with Intel HEXL https://github.com/intel/hexl
Testing on ICX with gcc-9.3:
./bin/benchmark/lib-benchmark --benchmark_min_time=3 --benchmark_filter=Transform
Before:
NTTTransform1024 14.4 us 14.4 us 96885
INTTTransform1024 14.5 us 14.5 us 96723
NTTTransform4096 67.3 us 67.2 us 20820
INTTTransform4096 67.1 us 67.1 us 20870
NTTTransformInPlace1024 13.5 us 13.5 us 103706
INTTTransformInPlace1024 14.3 us 14.2 us 98286
NTTTransformInPlace4096 63.8 us 63.7 us 21970
INTTTransformInPlace4096 66.3 us 66.2 us 21144
After:
NTTTransform1024 1.31 us 1.30 us 3193677
INTTTransform1024 1.48 us 1.47 us 2852312
NTTTransform4096 6.19 us 6.17 us 680824
INTTTransform4096 6.81 us 6.78 us 619025
NTTTransformInPlace1024 1.25 us 1.24 us 3378466
INTTTransformInPlace1024 1.30 us 1.30 us 3240882
NTTTransformInPlace4096 5.84 us 5.84 us 719683
INTTTransformInPlace4096 6.30 us 6.29 us 667509
Edited by Fabian Boemer