Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
138 changes: 69 additions & 69 deletions BENCHMARKS.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,77 +5,77 @@ This file is automatically generated by the CI. Do not edit manually.
### Insert Benchmark
| language | backend | ngram_size | mean | stddev | iterations |
|:-----------|:---------------|-------------:|---------:|----------:|-------------:|
| julia | SimString.jl | 2 | 89.8039 | 20.2715 | 100 |
| julia | SimString.jl | 3 | 105.979 | 23.5596 | 100 |
| julia | SimString.jl | 4 | 118.196 | 27.1998 | 100 |
| python | simstring-fast | 2 | 95.8793 | 3.82469 | 100 |
| python | simstring-fast | 3 | 111.823 | 3.62255 | 100 |
| python | simstring-fast | 4 | 121.659 | 4.07727 | 100 |
| python | simstring-rs | 2 | 47.8706 | 1.39643 | 100 |
| python | simstring-rs | 3 | 61.9885 | 1.72124 | 100 |
| python | simstring-rs | 4 | 64.3242 | 3.08703 | 100 |
| ruby | simstring-pure | 2 | 682.009 | 21.4788 | 30 |
| ruby | simstring-pure | 3 | 799.677 | 23.7379 | 26 |
| ruby | simstring-pure | 4 | 889.25 | 41.4386 | 23 |
| rust | simstring-rs | 2 | 41.9565 | 0.892256 | 100 |
| rust | simstring-rs | 3 | 51.1461 | 1.56728 | 100 |
| rust | simstring-rs | 4 | 53.7848 | 1.94787 | 100 |
| julia | SimString.jl | 2 | 76.7531 | 17.8195 | 100 |
| julia | SimString.jl | 3 | 91.2018 | 21.5173 | 100 |
| julia | SimString.jl | 4 | 107.347 | 28.1487 | 100 |
| python | simstring-fast | 2 | 87.474 | 3.41033 | 100 |
| python | simstring-fast | 3 | 101.518 | 3.50559 | 100 |
| python | simstring-fast | 4 | 111.193 | 3.41517 | 100 |
| python | simstring-rs | 2 | 42.5766 | 1.74247 | 100 |
| python | simstring-rs | 3 | 50.8142 | 1.44151 | 100 |
| python | simstring-rs | 4 | 53.5946 | 2.7584 | 100 |
| ruby | simstring-pure | 2 | 636.951 | 9.95036 | 32 |
| ruby | simstring-pure | 3 | 701.401 | 12.9401 | 29 |
| ruby | simstring-pure | 4 | 801.811 | 18.0816 | 25 |
| rust | simstring-rs | 2 | 39.7195 | 0.516893 | 100 |
| rust | simstring-rs | 3 | 45.9747 | 1.54611 | 100 |
| rust | simstring-rs | 4 | 48.3545 | 1.616 | 100 |

### Search Benchmark
| language | backend | ngram_size | threshold | mean | stddev | iterations |
|:-----------|:------------------------|-------------:|------------:|----------:|----------:|-------------:|
| julia | SimString.jl | 2 | 0.6 | 393.519 | 7.7635 | 51 |
| julia | SimString.jl | 2 | 0.7 | 247.709 | 6.15662 | 81 |
| julia | SimString.jl | 2 | 0.8 | 134.661 | 2.71263 | 100 |
| julia | SimString.jl | 3 | 0.6 | 318.503 | 6.34848 | 63 |
| julia | SimString.jl | 3 | 0.7 | 213.411 | 5.70861 | 94 |
| julia | SimString.jl | 3 | 0.8 | 126.957 | 2.66218 | 100 |
| julia | SimString.jl | 4 | 0.6 | 295.485 | 6.71272 | 68 |
| julia | SimString.jl | 4 | 0.7 | 195.714 | 4.178 | 100 |
| julia | SimString.jl | 4 | 0.8 | 118.002 | 3.96704 | 100 |
| python | simstring-fast | 2 | 0.6 | 114.15 | 3.16576 | 100 |
| python | simstring-fast | 2 | 0.7 | 51.9245 | 1.3071 | 100 |
| python | simstring-fast | 2 | 0.8 | 22.7082 | 0.76823 | 100 |
| python | simstring-fast | 2 | 0.9 | 9.42278 | 0.545498 | 100 |
| python | simstring-fast | 3 | 0.6 | 88.6134 | 4.61341 | 100 |
| python | simstring-fast | 3 | 0.7 | 43.82 | 0.613632 | 100 |
| python | simstring-fast | 3 | 0.8 | 21.0833 | 0.872924 | 100 |
| python | simstring-fast | 3 | 0.9 | 10.8835 | 0.530653 | 100 |
| python | simstring-fast | 4 | 0.6 | 77.9462 | 4.81646 | 100 |
| python | simstring-fast | 4 | 0.7 | 39.9806 | 1.33594 | 100 |
| python | simstring-fast | 4 | 0.8 | 20.757 | 0.955191 | 100 |
| python | simstring-fast | 4 | 0.9 | 11.1897 | 0.314598 | 100 |
| python | simstring-rust-bindings | 2 | 0.6 | 24.6017 | 1.59915 | 100 |
| python | simstring-rust-bindings | 2 | 0.7 | 16.1376 | 1.11735 | 100 |
| python | simstring-rust-bindings | 2 | 0.8 | 9.55155 | 0.555857 | 100 |
| python | simstring-rust-bindings | 2 | 0.9 | 5.71867 | 0.300161 | 100 |
| python | simstring-rust-bindings | 3 | 0.6 | 23.608 | 1.32849 | 100 |
| python | simstring-rust-bindings | 3 | 0.7 | 16.4486 | 1.01458 | 100 |
| python | simstring-rust-bindings | 3 | 0.8 | 10.4973 | 0.710776 | 100 |
| python | simstring-rust-bindings | 3 | 0.9 | 6.36797 | 0.415916 | 100 |
| python | simstring-rust-bindings | 4 | 0.6 | 24.2097 | 1.43829 | 100 |
| python | simstring-rust-bindings | 4 | 0.7 | 17.8534 | 1.06 | 100 |
| python | simstring-rust-bindings | 4 | 0.8 | 12.0608 | 0.917112 | 100 |
| python | simstring-rust-bindings | 4 | 0.9 | 7.07858 | 0.435193 | 100 |
| ruby | simstring-pure | 2 | 0.6 | 833.278 | 8.80241 | 25 |
| ruby | simstring-pure | 2 | 0.7 | 413.159 | 7.09964 | 49 |
| ruby | simstring-pure | 2 | 0.8 | 188.387 | 2.91856 | 100 |
| ruby | simstring-pure | 3 | 0.6 | 652.759 | 13.6633 | 31 |
| ruby | simstring-pure | 3 | 0.7 | 324.799 | 5.55114 | 62 |
| ruby | simstring-pure | 3 | 0.8 | 166.526 | 2.27347 | 100 |
| ruby | simstring-pure | 4 | 0.6 | 594.821 | 7.55496 | 34 |
| ruby | simstring-pure | 4 | 0.7 | 321.688 | 5.60557 | 63 |
| ruby | simstring-pure | 4 | 0.8 | 175.507 | 3.34929 | 100 |
| rust | simstring-rs | 2 | 0.6 | 27.3667 | 1.10146 | 100 |
| rust | simstring-rs | 2 | 0.7 | 16.2221 | 0.230302 | 100 |
| rust | simstring-rs | 2 | 0.8 | 9.69375 | 0.438891 | 100 |
| rust | simstring-rs | 2 | 0.9 | 5.03267 | 0.208553 | 100 |
| rust | simstring-rs | 3 | 0.6 | 27.3562 | 1.36108 | 100 |
| rust | simstring-rs | 3 | 0.7 | 18.4951 | 0.317349 | 100 |
| rust | simstring-rs | 3 | 0.8 | 11.3893 | 0.440087 | 100 |
| rust | simstring-rs | 3 | 0.9 | 5.78134 | 0.197748 | 100 |
| rust | simstring-rs | 4 | 0.6 | 28.5058 | 0.59069 | 100 |
| rust | simstring-rs | 4 | 0.7 | 20.9603 | 0.526016 | 100 |
| rust | simstring-rs | 4 | 0.8 | 12.5201 | 0.434719 | 100 |
| rust | simstring-rs | 4 | 0.9 | 6.51347 | 0.194288 | 100 |
| julia | SimString.jl | 2 | 0.6 | 347.897 | 5.37929 | 58 |
| julia | SimString.jl | 2 | 0.7 | 220.185 | 4.4526 | 91 |
| julia | SimString.jl | 2 | 0.8 | 121.508 | 4.9915 | 100 |
| julia | SimString.jl | 3 | 0.6 | 286.118 | 5.16307 | 70 |
| julia | SimString.jl | 3 | 0.7 | 189.911 | 5.15619 | 100 |
| julia | SimString.jl | 3 | 0.8 | 110.726 | 3.07079 | 100 |
| julia | SimString.jl | 4 | 0.6 | 258.8 | 4.30708 | 78 |
| julia | SimString.jl | 4 | 0.7 | 176.78 | 3.7226 | 100 |
| julia | SimString.jl | 4 | 0.8 | 105.065 | 3.73706 | 100 |
| python | simstring-fast | 2 | 0.6 | 103.186 | 3.15297 | 100 |
| python | simstring-fast | 2 | 0.7 | 47.211 | 1.73449 | 100 |
| python | simstring-fast | 2 | 0.8 | 20.2115 | 0.689107 | 100 |
| python | simstring-fast | 2 | 0.9 | 8.88399 | 0.0939395 | 100 |
| python | simstring-fast | 3 | 0.6 | 78.4111 | 3.70332 | 100 |
| python | simstring-fast | 3 | 0.7 | 35.0435 | 1.40371 | 100 |
| python | simstring-fast | 3 | 0.8 | 16.9206 | 0.362392 | 100 |
| python | simstring-fast | 3 | 0.9 | 8.85743 | 0.0632324 | 100 |
| python | simstring-fast | 4 | 0.6 | 65.7887 | 4.19182 | 100 |
| python | simstring-fast | 4 | 0.7 | 31.7357 | 0.972109 | 100 |
| python | simstring-fast | 4 | 0.8 | 16.4212 | 0.263399 | 100 |
| python | simstring-fast | 4 | 0.9 | 9.19757 | 0.206047 | 100 |
| python | simstring-rust-bindings | 2 | 0.6 | 24.5028 | 2.13682 | 100 |
| python | simstring-rust-bindings | 2 | 0.7 | 15.6176 | 1.12579 | 100 |
| python | simstring-rust-bindings | 2 | 0.8 | 9.69335 | 0.711975 | 100 |
| python | simstring-rust-bindings | 2 | 0.9 | 5.94649 | 0.510738 | 100 |
| python | simstring-rust-bindings | 3 | 0.6 | 22.8872 | 1.06472 | 100 |
| python | simstring-rust-bindings | 3 | 0.7 | 15.9772 | 1.98827 | 100 |
| python | simstring-rust-bindings | 3 | 0.8 | 10.0963 | 0.306576 | 100 |
| python | simstring-rust-bindings | 3 | 0.9 | 6.42989 | 0.112866 | 100 |
| python | simstring-rust-bindings | 4 | 0.6 | 23.3736 | 1.22378 | 100 |
| python | simstring-rust-bindings | 4 | 0.7 | 17.2011 | 0.937239 | 100 |
| python | simstring-rust-bindings | 4 | 0.8 | 11.7363 | 1.04699 | 100 |
| python | simstring-rust-bindings | 4 | 0.9 | 7.06588 | 0.198796 | 100 |
| ruby | simstring-pure | 2 | 0.6 | 792.258 | 7.59397 | 26 |
| ruby | simstring-pure | 2 | 0.7 | 390.075 | 4.54525 | 52 |
| ruby | simstring-pure | 2 | 0.8 | 180.091 | 2.94039 | 100 |
| ruby | simstring-pure | 3 | 0.6 | 621.899 | 5.89548 | 33 |
| ruby | simstring-pure | 3 | 0.7 | 309.418 | 3.65762 | 65 |
| ruby | simstring-pure | 3 | 0.8 | 160.041 | 2.7464 | 100 |
| ruby | simstring-pure | 4 | 0.6 | 566.034 | 5.76241 | 36 |
| ruby | simstring-pure | 4 | 0.7 | 305.322 | 3.8862 | 66 |
| ruby | simstring-pure | 4 | 0.8 | 162.741 | 2.57769 | 100 |
| rust | simstring-rs | 2 | 0.6 | 26.0253 | 0.381879 | 100 |
| rust | simstring-rs | 2 | 0.7 | 16.3558 | 0.777738 | 100 |
| rust | simstring-rs | 2 | 0.8 | 9.27871 | 0.423255 | 100 |
| rust | simstring-rs | 2 | 0.9 | 4.90734 | 0.0788524 | 100 |
| rust | simstring-rs | 3 | 0.6 | 25.5051 | 0.486141 | 100 |
| rust | simstring-rs | 3 | 0.7 | 17.169 | 0.0785085 | 100 |
| rust | simstring-rs | 3 | 0.8 | 10.2947 | 0.0921223 | 100 |
| rust | simstring-rs | 3 | 0.9 | 5.55249 | 0.234639 | 100 |
| rust | simstring-rs | 4 | 0.6 | 26.5846 | 0.650365 | 100 |
| rust | simstring-rs | 4 | 0.7 | 19.2396 | 0.34467 | 100 |
| rust | simstring-rs | 4 | 0.8 | 11.5938 | 0.0843808 | 100 |
| rust | simstring-rs | 4 | 0.9 | 6.11221 | 0.0539445 | 100 |

58 changes: 2 additions & 56 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,57 +1,3 @@
<!--
DO NOT EDIT THIS FILE MANUALLY.
This file is automatically generated by git-cliff.
-->
# simstring-rust
# Changelog
All notable changes to this project will be documented in this file.

## v0.3.0

### Features

- feat: python bindings for project

### Other

- chore(ci): Added unit tests for python bindings
- chore(ci): Added job to run examples for the project
- chore(bindings): Added an example for the python example

## v0.2.0

### Features

- Refactor (completely) API for string interning and parallel searches

## v0.1.3

### Features

- PR and Issues template

### Other

- added order independence test (#12)

## v0.1.2

### Features

- Initial benchmark suite (#11)
- Release: Initial benchmarks compared to other implementations in other languages (#13)

## v0.1.1

### Other

- WIP: Initial proposed search method for hashdb (#7)

## v0.1.0

### Features

- Initial API structure (#1)

### Bug Fixes

- keywords not exceeding 5 items (#3)
- Added tag trigger to CI workflow (#2)
8 changes: 6 additions & 2 deletions cliff.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ body = """
{% for group, commits in commits | group_by(attribute="group") %}
### {{ group | upper_first }}
{% for commit in commits %}
- {% if commit.scope %}(**{{ commit.scope }}**) {% endif %}{{ commit.message | upper_first }} ([{{ commit.id | truncate(length=7, end="") }}]({{ commit.hyperlink }}))
- {% if commit.scope %}(**{{ commit.scope }}**) {% endif %}{{ commit.message | upper_first }} ([{{ commit.id | truncate(length=7, end="") }}])
{% endfor %}
{% endfor %}

Expand Down Expand Up @@ -64,4 +64,8 @@ tag_pattern = "v[0-9].*"
# skip git tags that are not valid SemVer
skip_tags = "v0.1.0-beta.1"
# regex for ignoring tags
ignore_tags = ""
ignore_tags = ""
link_parsers = [
{ pattern = "\\b[a-f0-9]{7}\\b", href = "https://github.com/PyDataBlog/simstring_rs/commit/$0" },
{ pattern = "#(\\d+)", href = "https://github.com/PyDataBlog/simstring_rs/issues/$1" },
]