Skip to content

Commit 9f44178

Browse files
committed
Docs: Encryption/Decryption results on SPR
1 parent b63d7d7 commit 9f44178

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

README.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ So, to accelerate the development of the [`StringZilla`](https://github.com/ashv
1515
- [`aHash`](https://github.com/tkaitchuck/aHash) and [`crc32fast`](https://github.com/srijs/rust-crc32fast) for hashing.
1616
- [`aho_corasick`](https://github.com/BurntSushi/aho-corasick) and [`regex`](https://github.com/rust-lang/regex) for multi-search.
1717
- [`arrow`](https://github.com/apache/arrow-rs) and [`polars`](https://github.com/pola-rs/polars) for collections.
18+
- [`ring`](https://github.com/briansmith/ring) borrowing Asm from BoringSSL and OpenSSL.
1819

1920
Of course, the functionality of the projects is different, as are the APIs and the usage patterns.
2021
So, I focus on the workloads for which StringZilla was designed and compare the throughput of the core operations.
@@ -351,6 +352,27 @@ Or, how does the average Levenshtein distance among the top-k nearest neighbors
351352
It must clearly decrease, but how fast, and how does that compare to ground truth?
352353
For that please, check out the [HashEvals](https://github.com/ashvardanian/HashEvals) repository.
353354

355+
## Encryption and Decryption Benchmarks
356+
357+
Encryption:
358+
359+
| Library | ≅ 100 bytes lines | ≅ 1'000 bytes lines |
360+
| --------------------- | ----------------: | ------------------: |
361+
| Rust 🦀 | | |
362+
| `libsodium::chacha20` | 0.20 GiB/s | 0.71 GiB/s |
363+
| `ring::chacha20` | 0.39 GiB/s | 1.19 GiB/s |
364+
| `ring::aes256` | 0.61 GiB/s | 2.89 GiB/s |
365+
366+
367+
Decryption:
368+
369+
| Library | ≅ 100 bytes lines | ≅ 1'000 bytes lines |
370+
| --------------------- | ----------------: | ------------------: |
371+
| Rust 🦀 | | |
372+
| `libsodium::chacha20` | 0.20 GiB/s | 0.69 GiB/s |
373+
| `ring::chacha20` | 0.42 GiB/s | 1.08 GiB/s |
374+
| `ring::aes256` | 0.85 GiB/s | 2.48 GiB/s |
375+
354376
## Replicating the Results
355377

356378
### Replicating the Results in Rust 🦀

0 commit comments

Comments
 (0)