github.com/go-ego/gse@v0.80.2/gse_bm_test.go (about) 1 package gse 2 3 import ( 4 "testing" 5 6 "github.com/vcaesar/tt" 7 ) 8 9 var text = "纽约时代广场, 纽约帝国大厦, 旧金山湾金门大桥" 10 11 func BenchmarkCut(t *testing.B) { 12 fn := func() { 13 prodSeg.Cut(text) 14 } 15 16 tt.BM(t, fn) 17 } 18 19 func BenchmarkCutTrim(t *testing.B) { 20 fn := func() { 21 s := prodSeg.Cut(text) 22 prodSeg.Trim(s) 23 } 24 25 tt.BM(t, fn) 26 } 27 28 func BenchmarkCut_NoHMM(t *testing.B) { 29 fn := func() { 30 prodSeg.Cut(text, false) 31 } 32 33 tt.BM(t, fn) 34 } 35 36 func BenchmarkCutHMM(t *testing.B) { 37 fn := func() { 38 prodSeg.Cut(text, true) 39 } 40 41 tt.BM(t, fn) 42 } 43 44 func BenchmarkCutAll(t *testing.B) { 45 fn := func() { 46 prodSeg.CutAll(text) 47 } 48 49 tt.BM(t, fn) 50 } 51 52 func BenchmarkCutSearch(t *testing.B) { 53 fn := func() { 54 prodSeg.CutSearch(text) 55 } 56 57 tt.BM(t, fn) 58 } 59 60 func BenchmarkCutSearch_NoHMM(t *testing.B) { 61 fn := func() { 62 prodSeg.CutSearch(text, false) 63 } 64 65 tt.BM(t, fn) 66 } 67 68 func BenchmarkCutSearchHMM(t *testing.B) { 69 fn := func() { 70 prodSeg.CutSearch(text, true) 71 } 72 73 tt.BM(t, fn) 74 } 75 76 func BenchmarkSlice(b *testing.B) { 77 fn := func() { 78 prodSeg.Slice(text) 79 } 80 81 tt.BM(b, fn) 82 } 83 84 func BenchmarkString(b *testing.B) { 85 fn := func() { 86 prodSeg.String(text) 87 } 88 89 tt.BM(b, fn) 90 } 91 92 func BenchmarkAddToken(b *testing.B) { 93 fn := func() { 94 prodSeg.AddToken(text, 10) 95 } 96 97 tt.BM(b, fn) 98 } 99 100 func BenchmarkRemoveToken(b *testing.B) { 101 fn := func() { 102 prodSeg.RemoveToken(text) 103 } 104 105 tt.BM(b, fn) 106 } 107 108 func BenchmarkFind(b *testing.B) { 109 fn := func() { 110 prodSeg.Find("帝国大厦") 111 } 112 113 tt.BM(b, fn) 114 }