4 ms·
While Go may be faster somewhere, that post was not a good comparison. See the discussion around it and the patches made by the community and the final results
by manaskarekar 6y ago
While Go may be faster somewhere, that post was not a good comparison.
See the discussion around it and the patches made by the community and the final results.
See the individual benchmarks: https://github.com/christianscott/levenshtein-distance-benchmarks/pulls https://github.com/christianscott/levenshtein-distance-bench...
- Tuna-Fish 6y agoAnd just to help the lazy people, after making the benchmarked loads equivalent, the results are: hyperfine go/out 'node javascript/main.js' rust/target/release/rust 1 Benchmark #1: go/out Time (mean ± σ): 1.888 s ± 0.013 s [User: 2.040 s, System: 0.045 s] Range (min … max): 1.875 s … 1.918 s 10 runs Benchmark #2: node javascript/main.js Time (mean ± σ): 4.257 s ± 0.033 s [User: 4.295 s, System: 0.042 s] Range (min … max): 4.221 s … 4.338 s 10 runs Benchmark #3: rust/target/release/rust Time (mean ± σ): 874.1 ms ± 50.8 ms [User: 5.688 s, System: 0.830 s] Range (min … max): 813.5 ms … 1001.9 ms 10 runs Summary 'rust/target/release/rust' ran 2.16 ± 0.13 times faster than 'go/out' 4.87 ± 0.29 times faster than 'node javascript/main.js'
- burntsushi 6y agoIt looks like you got that from this PR: https://github.com/christianscott/levenshtein-distance-benchmarks/pull/8 https://github.com/christianscott/levenshtein-distance-bench... That PR does not make the benchmark loads "equivalent." Please look at the diff. That PR adds parallelism to the Rust program. The Go program does not have parallelism.
- hu3 6y agoThe Go and Rust program in that benchmark are really not equivalent. Rust is using threads.