]> Cypherpunks.ru repositories - gostls13.git/commit
unicode: improve SimpleFold performance for ascii
authorEgon Elbre <egonelbre@gmail.com>
Tue, 17 Nov 2015 14:51:23 +0000 (16:51 +0200)
committerBrad Fitzpatrick <bradfitz@golang.org>
Tue, 26 Apr 2016 21:59:50 +0000 (21:59 +0000)
commite607abbfd6e0550c13f4fa7b666d033eb9b14759
tree928cf2b0a6713490c0a8dcf9510cbc5b6c19a3f6
parent6e4a8615f652a2020471622354be6d890404020c
unicode: improve SimpleFold performance for ascii

This change significantly speeds up case-insensitive regexp matching.

benchmark                      old ns/op      new ns/op      delta
BenchmarkMatchEasy0i_32-8      2690           1473           -45.24%
BenchmarkMatchEasy0i_1K-8      80404          42269          -47.43%
BenchmarkMatchEasy0i_32K-8     3272187        2076118        -36.55%
BenchmarkMatchEasy0i_1M-8      104805990      66503805       -36.55%
BenchmarkMatchEasy0i_32M-8     3360192200     2126121600     -36.73%

benchmark                      old MB/s     new MB/s     speedup
BenchmarkMatchEasy0i_32-8      11.90        21.72        1.83x
BenchmarkMatchEasy0i_1K-8      12.74        24.23        1.90x
BenchmarkMatchEasy0i_32K-8     10.01        15.78        1.58x
BenchmarkMatchEasy0i_1M-8      10.00        15.77        1.58x
BenchmarkMatchEasy0i_32M-8     9.99         15.78        1.58x

Issue #13288

Change-Id: I94af7bb29e75d60b4f6ee760124867ab271b9642
Reviewed-on: https://go-review.googlesource.com/16943
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
src/regexp/exec_test.go
src/unicode/letter.go
src/unicode/maketables.go
src/unicode/tables.go