[perf] Avoid allocating rune array for ascii string
In the best case (all ascii), this reduces the memory footprint by 60% and the response time by 15% to 20%. In the worst case (every line has non-ascii characters), 3 to 4% overhead is observed.
Showing
- src/algo/algo.go 36 additions, 30 deletionssrc/algo/algo.go
- src/algo/algo_test.go 4 additions, 2 deletionssrc/algo/algo_test.go
- src/chunklist_test.go 5 additions, 3 deletionssrc/chunklist_test.go
- src/core.go 18 additions, 17 deletionssrc/core.go
- src/item.go 9 additions, 6 deletionssrc/item.go
- src/item_test.go 7 additions, 6 deletionssrc/item_test.go
- src/merger_test.go 3 additions, 1 deletionsrc/merger_test.go
- src/options_test.go 11 additions, 10 deletionssrc/options_test.go
- src/pattern.go 4 additions, 4 deletionssrc/pattern.go
- src/pattern_test.go 8 additions, 7 deletionssrc/pattern_test.go
- src/terminal.go 3 additions, 3 deletionssrc/terminal.go
- src/tokenizer.go 22 additions, 20 deletionssrc/tokenizer.go
- src/tokenizer_test.go 24 additions, 20 deletionssrc/tokenizer_test.go
- src/util/chars.go 113 additions, 0 deletionssrc/util/chars.go
- src/util/chars_test.go 36 additions, 0 deletionssrc/util/chars_test.go
- src/util/util.go 0 additions, 29 deletionssrc/util/util.go
Loading
Please register or sign in to comment