This project aims to benchmark existing ASN1 PER (Packed Encoding Rules) codecs in Rust.
The project currently includes the following UPER codecs:
- rasn v0.22.0
- asn1-codecs v0.7.0
- asn1rs v0.3.1
System configuration: Ubuntu 24.04, Rustc: 1.82, AMD Ryzen 5850U 32GB RAM.
For more details regarding ASN1 definition, refer to sample.asn
Codec | Encoding (µs) | Decoding (µs) |
---|---|---|
rasn | 1043 | 123 |
asn1-codecs | 150 | 52 |
asn1rs | 83 | 73 |
Codec | Encoding (µs) |
---|---|
rasn | 440 |
asn1-codecs | 59 |
asn1rs | 34 |
To run the benchmarks, follow these steps:
cargo build
cargo bench
Contributions are welcome! If you have any suggestions, bug reports, or feature requests, please open an issue or submit a pull request.
This project is licensed under the Apache Licence, version 2.0.