-
Notifications
You must be signed in to change notification settings - Fork 428
Open
Description
I noticed that in your README, there is a benchmark testing, but the joseph's md5 is not included. I wonder which is faster so I tried to compare it.
Docs for joseph-md5: https://www.myersdaily.org/joseph/javascript/md5-text.html
Benchmark 1
Benchmark: https://measurethat.net/Benchmarks/Show/29171/0/md5-performance-comparison-v2
Result:

Benchmark 2
https://measurethat.net/Benchmarks/Show/29172/0/md5-performance-comparison-long-text-v2
Result:

Issue with the current benchmark in README
jsperf.app
is a bit unreliable on short time self execution. It should be tested with a long input.- a longer string should be used to see the actual speed.
- One of the tests is async.
deferred.resolve
is required.
Correct jsperf.app
with deferred.resolve
+ joseph-md5
Benchmark: https://jsperf.app/jonuhi/6

Now it comes out the result that aligns with measurethat.net
.
Summary
Your library is great ! I believe it is the fastest MD5 library for sync md5 function.
I will submit a PR for updating the README :)
- https://measurethat.net/Benchmarks/Show/29171/0/md5-performance-comparison-v2
- https://measurethat.net/Benchmarks/Show/29172/0/md5-performance-comparison-long-text-v2
- https://jsperf.app/jonuhi/6
- https://measurethat.net/Benchmarks/Show/29173/0/md5-performance-comparison-very-long-text
Note: I guess if you convert js-md5
to using low-level WebAssembly coding, it will be much faster.
Metadata
Metadata
Assignees
Labels
No labels