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  }