This project aims to benchmark existing ASN1 PER (Packed Encoding Rules) codecs in Rust.
The project currently includes the following UPER codecs:
- rasn v0.20.1
- asn1-codecs v0.7.0
- asn1rs v0.3.1
System configuration: Ubuntu 24.04, Rustc: 1.81, AMD Ryzen 5850U 32GB RAM.
For more details regarding ASN1 definition, refer to sample.asn
Codec | Encoding (µs) | Decoding (µs) |
---|---|---|
rasn | 1387 | 165 |
asn1-codecs | 132 | 49 |
asn1rs | 70 | 68 |
Codec | Encoding (µs) |
---|---|
rasn | 448 |
asn1-codecs | 53 |
asn1rs | 35 |
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.