ZeroTierOne/third_party/kyber/benches
2022-07-13 20:12:32 -04:00
..
api.rs More session work, cleanup, AES in core crypto, and vendor the kyber library so we can remove no_std. 2022-07-13 20:12:32 -04:00
readme.md More session work, cleanup, AES in core crypto, and vendor the kyber library so we can remove no_std. 2022-07-13 20:12:32 -04:00

Benchmarking

On x86_64 platforms using optimised code include the following target features in RUSTFLAGS:

RUSTFLAGS="-C target-cpu=native -C target-feature=+aes,+avx2,+sse2,+sse4.1,+bmi2,+popcnt" cargo bench

This library uses Criterion for benchmarks. After running the bench command the report can be viewed at target/criterion/report/index.html.

Note there will be significant differences when you choose different security levels or 90's mode. Saving a baseline for different modes can be useful. eg.

cargo bench --features kyber1024 -- --save-baseline kyber1024

More details on criterion usage here

Current benches:

  • Keypair generation
  • Encapsulation
  • Correct Decapsulation
  • Decapsulation failure