Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Benchmark against competition #136

Open
mre opened this issue Oct 13, 2020 · 7 comments
Open

Benchmark against competition #136

mre opened this issue Oct 13, 2020 · 7 comments
Labels
enhancement New feature or request good first issue Good for newcomers hacktoberfest help wanted Extra attention is needed

Comments

@mre
Copy link
Member

mre commented Oct 13, 2020

People are interested in a size-comparison between

  • tinysearch
  • lunr.js
  • elasticlunr
  • flexsearch
  • fuse.js

If anyone wants to do a comparison, post a comment here.
Some ideas:

  • Use an open dataset, e.g. Shakespeare texts https://shakespeare.folger.edu/download/
  • Create a size histogram of the results that we can include into the README.
  • Add the code to the repository under a bench folder and create a pull request. This will make the benchmark reproducible in the future.

Feel free to ask questions here before starting.

@mre mre added enhancement New feature or request good first issue Good for newcomers hacktoberfest help wanted Extra attention is needed labels Oct 13, 2020
@Jieiku
Copy link
Collaborator

Jieiku commented May 1, 2022

Awesome idea. I use Zola for my blog which comes with elasticlunr. I am evaluating different search solutions.

Might want to add Stork to this list as well.

@Jieiku
Copy link
Collaborator

Jieiku commented Apr 13, 2023

I found that somebody actually made one that tests a lot of them!

https://nextapps-de.github.io/flexsearch/bench/

Unfortunately tinysearch is not in their benchmark list.

(neither is pagefind)

@mre
Copy link
Member Author

mre commented Apr 13, 2023

Interesting. We should add it there; also Stork and pagefind.

@Jieiku
Copy link
Collaborator

Jieiku commented Apr 13, 2023

one thing I dont see in their benchmark is bandwidth used... so they really should have a second benchmark for that.

(that is just as important to me as performance, if they are not interested in making one then I might.)

@mre
Copy link
Member Author

mre commented Apr 13, 2023

How exactly do you define bandwidth? Queries per second?
You could create an issue for the project to discuss that.

@Jieiku
Copy link
Collaborator

Jieiku commented Apr 14, 2023

no, what i mean is hit the website. perform a search, how many KB had to be downloaded for the search javascript + wasm + index to perform that search.

For instance Stork is around 700kb whereas tinysearch is around 100kb for abridge.

Obviously the amount of content will affect the index size. In their test they appear to be using Gulliver's Travels

they could also benchmark say: 1search, 10searches, etc. to see if that affects the amount of data downloaded to perform the searches, obviously this would affect pagesearch and possibly others because they chunk the index into multiple pieces.

@mre
Copy link
Member Author

mre commented Apr 14, 2023

Gotcha. Yeah, that would indeed be a great comparison.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers hacktoberfest help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

2 participants