summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/mailru/easyjson/benchmark/ffjson_test.go
diff options
context:
space:
mode:
authorChristopher Speller <crspeller@gmail.com>2018-01-29 14:17:40 -0800
committerGitHub <noreply@github.com>2018-01-29 14:17:40 -0800
commit961c04cae992eadb42d286d2f85f8a675bdc68c8 (patch)
tree3408f2d06f847e966c53485e2d54c692cdd037c1 /vendor/github.com/mailru/easyjson/benchmark/ffjson_test.go
parent8d66523ba7d9a77129844be476732ebfd5272d64 (diff)
downloadchat-961c04cae992eadb42d286d2f85f8a675bdc68c8.tar.gz
chat-961c04cae992eadb42d286d2f85f8a675bdc68c8.tar.bz2
chat-961c04cae992eadb42d286d2f85f8a675bdc68c8.zip
Upgrading server dependancies (#8154)
Diffstat (limited to 'vendor/github.com/mailru/easyjson/benchmark/ffjson_test.go')
-rw-r--r--vendor/github.com/mailru/easyjson/benchmark/ffjson_test.go190
1 files changed, 190 insertions, 0 deletions
diff --git a/vendor/github.com/mailru/easyjson/benchmark/ffjson_test.go b/vendor/github.com/mailru/easyjson/benchmark/ffjson_test.go
new file mode 100644
index 000000000..03671827c
--- /dev/null
+++ b/vendor/github.com/mailru/easyjson/benchmark/ffjson_test.go
@@ -0,0 +1,190 @@
+// +build use_ffjson
+
+package benchmark
+
+import (
+ "testing"
+
+ "github.com/pquerna/ffjson/ffjson"
+)
+
+func BenchmarkFF_Unmarshal_M(b *testing.B) {
+ b.SetBytes(int64(len(largeStructText)))
+ for i := 0; i < b.N; i++ {
+ var s LargeStruct
+ err := ffjson.UnmarshalFast(largeStructText, &s)
+ if err != nil {
+ b.Error(err)
+ }
+ }
+}
+
+func BenchmarkFF_Unmarshal_S(b *testing.B) {
+ for i := 0; i < b.N; i++ {
+ var s Entities
+ err := ffjson.UnmarshalFast(smallStructText, &s)
+ if err != nil {
+ b.Error(err)
+ }
+ }
+ b.SetBytes(int64(len(smallStructText)))
+}
+
+func BenchmarkFF_Marshal_M(b *testing.B) {
+ var l int64
+ for i := 0; i < b.N; i++ {
+ data, err := ffjson.MarshalFast(&largeStructData)
+ if err != nil {
+ b.Error(err)
+ }
+ l = int64(len(data))
+ }
+ b.SetBytes(l)
+}
+
+func BenchmarkFF_Marshal_S(b *testing.B) {
+ var l int64
+ for i := 0; i < b.N; i++ {
+ data, err := ffjson.MarshalFast(&smallStructData)
+ if err != nil {
+ b.Error(err)
+ }
+ l = int64(len(data))
+ }
+ b.SetBytes(l)
+}
+
+func BenchmarkFF_Marshal_M_Pool(b *testing.B) {
+ var l int64
+ for i := 0; i < b.N; i++ {
+ data, err := ffjson.MarshalFast(&largeStructData)
+ if err != nil {
+ b.Error(err)
+ }
+ l = int64(len(data))
+ ffjson.Pool(data)
+ }
+ b.SetBytes(l)
+}
+
+func BenchmarkFF_Marshal_L(b *testing.B) {
+ var l int64
+ for i := 0; i < b.N; i++ {
+ data, err := ffjson.MarshalFast(&xlStructData)
+ if err != nil {
+ b.Error(err)
+ }
+ l = int64(len(data))
+ }
+ b.SetBytes(l)
+}
+
+func BenchmarkFF_Marshal_L_Pool(b *testing.B) {
+ var l int64
+ for i := 0; i < b.N; i++ {
+ data, err := ffjson.MarshalFast(&xlStructData)
+ if err != nil {
+ b.Error(err)
+ }
+ l = int64(len(data))
+ ffjson.Pool(data)
+ }
+ b.SetBytes(l)
+}
+
+func BenchmarkFF_Marshal_L_Pool_Parallel(b *testing.B) {
+ var l int64
+ for i := 0; i < b.N; i++ {
+ data, err := ffjson.MarshalFast(&xlStructData)
+ if err != nil {
+ b.Error(err)
+ }
+ l = int64(len(data))
+ ffjson.Pool(data)
+ }
+ b.SetBytes(l)
+}
+func BenchmarkFF_Marshal_M_Pool_Parallel(b *testing.B) {
+ var l int64
+ b.RunParallel(func(pb *testing.PB) {
+ for pb.Next() {
+ data, err := ffjson.MarshalFast(&largeStructData)
+ if err != nil {
+ b.Error(err)
+ }
+ l = int64(len(data))
+ ffjson.Pool(data)
+ }
+ })
+ b.SetBytes(l)
+}
+
+func BenchmarkFF_Marshal_S_Pool(b *testing.B) {
+ var l int64
+ for i := 0; i < b.N; i++ {
+ data, err := ffjson.MarshalFast(&smallStructData)
+ if err != nil {
+ b.Error(err)
+ }
+ l = int64(len(data))
+ ffjson.Pool(data)
+ }
+ b.SetBytes(l)
+}
+
+func BenchmarkFF_Marshal_S_Pool_Parallel(b *testing.B) {
+ var l int64
+ b.RunParallel(func(pb *testing.PB) {
+ for pb.Next() {
+ data, err := ffjson.MarshalFast(&smallStructData)
+ if err != nil {
+ b.Error(err)
+ }
+ l = int64(len(data))
+ ffjson.Pool(data)
+ }
+ })
+ b.SetBytes(l)
+}
+
+func BenchmarkFF_Marshal_S_Parallel(b *testing.B) {
+ var l int64
+ b.RunParallel(func(pb *testing.PB) {
+ for pb.Next() {
+ data, err := ffjson.MarshalFast(&smallStructData)
+ if err != nil {
+ b.Error(err)
+ }
+ l = int64(len(data))
+ }
+ })
+ b.SetBytes(l)
+}
+
+func BenchmarkFF_Marshal_M_Parallel(b *testing.B) {
+ var l int64
+ b.RunParallel(func(pb *testing.PB) {
+ for pb.Next() {
+ data, err := ffjson.MarshalFast(&largeStructData)
+ if err != nil {
+ b.Error(err)
+ }
+ l = int64(len(data))
+ }
+ })
+ b.SetBytes(l)
+}
+
+func BenchmarkFF_Marshal_L_Parallel(b *testing.B) {
+ var l int64
+ b.RunParallel(func(pb *testing.PB) {
+ for pb.Next() {
+ data, err := ffjson.MarshalFast(&xlStructData)
+ if err != nil {
+ b.Error(err)
+ }
+ l = int64(len(data))
+ }
+ })
+ b.SetBytes(l)
+}