| 2402 | } |
| 2403 | |
| 2404 | func BenchmarkByte_DecodeMsg(b *testing.B) { |
| 2405 | sizes := []int{10, 100, 1000} |
| 2406 | |
| 2407 | for _, size := range sizes { |
| 2408 | b.Run(fmt.Sprintf("%d", size), func(b *testing.B) { |
| 2409 | set := make(Byte) |
| 2410 | for i := 0; i < size; i++ { |
| 2411 | set[byte(i%256)] = struct{}{} |
| 2412 | } |
| 2413 | |
| 2414 | var buf bytes.Buffer |
| 2415 | writer := msgp.NewWriter(&buf) |
| 2416 | set.EncodeMsg(writer) |
| 2417 | writer.Flush() |
| 2418 | encoded := buf.Bytes() |
| 2419 | |
| 2420 | b.ReportAllocs() |
| 2421 | b.ResetTimer() |
| 2422 | for i := 0; i < b.N; i++ { |
| 2423 | reader := msgp.NewReader(bytes.NewReader(encoded)) |
| 2424 | var decoded Byte |
| 2425 | decoded.DecodeMsg(reader) |
| 2426 | } |
| 2427 | }) |
| 2428 | } |
| 2429 | } |
| 2430 | |
| 2431 | func BenchmarkByte_MarshalMsg(b *testing.B) { |
| 2432 | sizes := []int{10, 100, 1000} |