skym
A Python package exposing fuzzy text matching based on the Rust creates skim and fuzzy-matcher.
Benchmarking
This project includes a comprehensive benchmarking suite built with Criterion.rs.
Running Benchmarks
We use just as a task runner to simplify benchmark operations. Here are the common benchmarking commands:
Basic Benchmarking
# Run all benchmarks
just bench
# Open the benchmark report in your browser
just bench-report
Comparing Implementations
When making optimizations, you can compare performance between different implementations:
# Run benchmarks and save as a baseline named "original"
just bench-save original
# Make your code changes, then run and compare with the baseline
just bench-compare original
# Generate a comparison table between two sets of results
just bench-table original new
Managing Benchmark Results
# Clean all benchmark results
just bench-clean
Understanding Benchmark Results
After running benchmarks, Criterion generates comprehensive reports in target/criterion/. The most useful files are:
-
HTML Report: Open
target/criterion/report/index.htmlin your browser for a visual representation of benchmark results including:- Line graphs showing performance over time
- Violin plots showing distribution of execution times
- Detailed statistical analysis
-
JSON Data: Raw benchmark data is stored in JSON format under
target/criterion/<benchmark_name>/for each benchmark:estimates.json: Contains summary statistics (mean, median, etc.)sample.json: Contains raw sample timing databaseline_estimates.json: Available when comparing with a baseline
Release files for skym 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| skym-0.1.0.tar.gz | 31.9 kB | Details |
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| skym-0.1.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.13 | CPython 3.13 free-threading | Linux glibc 2.17+ x86-64 | Details |
| skym-0.1.0-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl | CPython 3.13 | CPython 3.13 free-threading | Linux glibc 2.17+ x86-32 | Details |
| skym-0.1.0-cp38-abi3-musllinux_1_2_x86_64.whl | CPython 3.8 | abi3 | Linux musl 1.2+ x86-64 | Details |
| skym-0.1.0-cp38-abi3-musllinux_1_2_i686.whl | CPython 3.8 | abi3 | Linux musl 1.2+ x86-32 | Details |
| skym-0.1.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.8 | abi3 | Linux glibc 2.17+ x86-64 | Details |
| skym-0.1.0-cp38-abi3-manylinux_2_17_i686.manylinux2014_i686.whl | CPython 3.8 | abi3 | Linux glibc 2.17+ x86-32 | Details |
| skym-0.1.0-cp38-abi3-macosx_11_0_arm64.whl | CPython 3.8 | abi3 | macOS 11.0+ ARM64 | Details |
| skym-0.1.0-cp38-abi3-macosx_10_12_x86_64.whl | CPython 3.8 | abi3 | macOS 10.12+ x86-64 | Details |
Total release size: 15.9 MB
Release files / skym-0.1.0.tar.gz
| Download URL | skym-0.1.0.tar.gz |
|---|---|
| Size | 31.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ea66ffe46aeed88fdc8aac4bd616077f0675d606d9b8777f449e78552a92e76e
|
|
BLAKE2b-256 checksum How to use checksums |
3e3a4cc3e9cfedc368e71ae79c57a1d7040b7f66e0746e6ab93431c1902d5f3b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
maturin/1.8.3
|
Release files / skym-0.1.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | skym-0.1.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 2.0 MB |
| Tags | CPython 3.13 CPython 3.13 free-threading Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
63da4e979e8f67124c311c5ad2197f080a0bebe53208f01800597a27c7f24043
|
|
BLAKE2b-256 checksum How to use checksums |
d9bd818f431157545209f665e29c570ae6d5bd05f54953627ddc6c1a29ca8486
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
maturin/1.8.3
|
Release files / skym-0.1.0-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl
| Download URL | skym-0.1.0-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl |
|---|---|
| Size | 2.0 MB |
| Tags | CPython 3.13 CPython 3.13 free-threading Linux glibc 2.17+ x86-32 |
|
SHA-256 checksum How to use checksums |
947328389fe42f708f343ae17831c0ca096ca31ca8f5d3dc5f5d002c23b0c844
|
|
BLAKE2b-256 checksum How to use checksums |
ca16a6b28551ae79a7747aede99ad936b24308a30407a632dc82a64fb650218c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
maturin/1.8.3
|
Release files / skym-0.1.0-cp38-abi3-musllinux_1_2_x86_64.whl
| Download URL | skym-0.1.0-cp38-abi3-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 2.2 MB |
| Tags | CPython 3.8 Linux musl 1.2+ x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
85d3c7a976c11558fb9eebd5ba7031241c829ba35df81118efd75bec69961ad8
|
|
BLAKE2b-256 checksum How to use checksums |
e826253c431782ad6e0e29a0364cc1d5e77ca0376878c75ebe331705c6561871
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
maturin/1.8.3
|
Release files / skym-0.1.0-cp38-abi3-musllinux_1_2_i686.whl
| Download URL | skym-0.1.0-cp38-abi3-musllinux_1_2_i686.whl |
|---|---|
| Size | 2.1 MB |
| Tags | CPython 3.8 Linux musl 1.2+ x86-32 abi3 |
|
SHA-256 checksum How to use checksums |
599c84e38def66c4b1256c0ad30dd3e4920095f3adebb00d98225ca763b2aaa6
|
|
BLAKE2b-256 checksum How to use checksums |
b2be12d23c34b7ad53e7c271167d1259df3759846e990e07f48a2d96f74f1d6c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
maturin/1.8.3
|
Release files / skym-0.1.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | skym-0.1.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 2.0 MB |
| Tags | CPython 3.8 Linux glibc 2.17+ x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
d706a107142c8acf7f9ed58062ccb2caa330ff5a35e0ecfcac9bc379d9b96e5c
|
|
BLAKE2b-256 checksum How to use checksums |
2a4fbb1692af1e08177047f154d033b3a6ce462f254ca11946b2f81f87220e51
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
maturin/1.8.3
|
Release files / skym-0.1.0-cp38-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
| Download URL | skym-0.1.0-cp38-abi3-manylinux_2_17_i686.manylinux2014_i686.whl |
|---|---|
| Size | 2.0 MB |
| Tags | CPython 3.8 Linux glibc 2.17+ x86-32 abi3 |
|
SHA-256 checksum How to use checksums |
81d2a9e7e506e88a5c9ed384a15976ee7f8cb51ecfc41b6d0c0c7b69283ab431
|
|
BLAKE2b-256 checksum How to use checksums |
e77967181d6f3fd32bc20530ecde00575ba9e807cf1252fe9760d4051430ab06
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
maturin/1.8.3
|
Release files / skym-0.1.0-cp38-abi3-macosx_11_0_arm64.whl
| Download URL | skym-0.1.0-cp38-abi3-macosx_11_0_arm64.whl |
|---|---|
| Size | 1.7 MB |
| Tags | CPython 3.8 abi3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
d593c1d5ef2fed9db0dbb33a86015da48cbc4912b3e78cc9ae94d8cd3317a182
|
|
BLAKE2b-256 checksum How to use checksums |
e160cfd84b0a154190144e33c727509ec675c56752259a021015630b34a0276d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
maturin/1.8.3
|
Release files / skym-0.1.0-cp38-abi3-macosx_10_12_x86_64.whl
| Download URL | skym-0.1.0-cp38-abi3-macosx_10_12_x86_64.whl |
|---|---|
| Size | 1.8 MB |
| Tags | CPython 3.8 abi3 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
e7b31f7f32f213cebb4c0693d017606d26326dbe669e78b77b3d165116b91d7d
|
|
BLAKE2b-256 checksum How to use checksums |
802ca91bb26bd9e199aac044f3a347d318026d0a1d445983815289a95e4143a5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
maturin/1.8.3
|