greyblake / whatlang-rs

Natural language detection library for Rust. Try demo online: https://whatlang.org/
https://whatlang.org/
MIT License
966 stars 108 forks source link

Use a stack-allocated array for script counters #19

Closed Dr-Emann closed 6 years ago

Dr-Emann commented 6 years ago

Fix the todo in detect_script.

greyblake commented 6 years ago

@Dr-Emann Thanks!

Unfortunately the win is not big, but still it's good to have :)

Benchmarks (on my machine, nightly):

Without this commit:

test bench_detect_script ... bench:     295,066 ns/iter (+/- 15,232)
test bench_detect_script ... bench:     297,044 ns/iter (+/- 16,505)
test bench_detect_script ... bench:     297,043 ns/iter (+/- 14,397)
test bench_detect_script ... bench:     297,864 ns/iter (+/- 12,816)
test bench_detect_script ... bench:     297,014 ns/iter (+/- 11,440)
test bench_detect_script ... bench:     297,575 ns/iter (+/- 34,455)

With commit:

test bench_detect_script ... bench:     287,492 ns/iter (+/- 10,840)
test bench_detect_script ... bench:     290,607 ns/iter (+/- 30,900)
test bench_detect_script ... bench:     297,219 ns/iter (+/- 33,598)
test bench_detect_script ... bench:     287,013 ns/iter (+/- 11,708)
test bench_detect_script ... bench:     289,989 ns/iter (+/- 66,436)
test bench_detect_script ... bench:     301,220 ns/iter (+/- 38,597)