diff options
author | Aliaksandr Valialkin <valyala@gmail.com> | 2017-06-20 13:40:15 +0300 |
---|---|---|
committer | Aliaksandr Valialkin <valyala@gmail.com> | 2017-06-20 13:40:15 +0300 |
commit | 2db9429ff782eb3b4e7cae05c92d6463ea6fac3c (patch) | |
tree | d44604cb0a82982beedc18f653b155e578915101 /bytesconv_timing_test.go | |
parent | Added AppendUnquotedArg - the complementary function to AppendQuotedArg (diff) | |
download | fasthttp-2db9429ff782eb3b4e7cae05c92d6463ea6fac3c.tar.gz fasthttp-2db9429ff782eb3b4e7cae05c92d6463ea6fac3c.tar.bz2 fasthttp-2db9429ff782eb3b4e7cae05c92d6463ea6fac3c.zip |
added a fast path to decodeArgAppend when the arg doesnt contain encoded chars
Diffstat (limited to 'bytesconv_timing_test.go')
-rw-r--r-- | bytesconv_timing_test.go | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/bytesconv_timing_test.go b/bytesconv_timing_test.go index bd416d1..53f04ac 100644 --- a/bytesconv_timing_test.go +++ b/bytesconv_timing_test.go @@ -165,3 +165,23 @@ func BenchmarkLowercaseBytesMixed(b *testing.B) { } }) } + +func BenchmarkAppendUnquotedArgFastPath(b *testing.B) { + src := []byte("foobarbaz no quoted chars fdskjsdf jklsdfdfskljd;aflskjdsaf fdsklj fsdkj fsdl kfjsdlk jfsdklj fsdfsdf sdfkflsd") + b.RunParallel(func(pb *testing.PB) { + var dst []byte + for pb.Next() { + dst = AppendUnquotedArg(dst[:0], src) + } + }) +} + +func BenchmarkAppendUnquotedArgSlowPath(b *testing.B) { + src := []byte("D0%B4%20%D0%B0%D0%B2%D0%BB%D0%B4%D1%84%D1%8B%D0%B0%D0%BE%20%D1%84%D0%B2%D0%B6%D0%BB%D0%B4%D1%8B%20%D0%B0%D0%BE") + b.RunParallel(func(pb *testing.PB) { + var dst []byte + for pb.Next() { + dst = AppendUnquotedArg(dst[:0], src) + } + }) +} |