| 2539 | } |
| 2540 | |
| 2541 | func BenchmarkByteSorted_DecodeMsg(b *testing.B) { |
| 2542 | sizes := []int{10, 100, 1000} |
| 2543 | |
| 2544 | for _, size := range sizes { |
| 2545 | b.Run(fmt.Sprintf("%d", size), func(b *testing.B) { |
| 2546 | set := make(ByteSorted) |
| 2547 | for i := 0; i < size; i++ { |
| 2548 | set[byte(i%256)] = struct{}{} |
| 2549 | } |
| 2550 | |
| 2551 | var buf bytes.Buffer |
| 2552 | writer := msgp.NewWriter(&buf) |
| 2553 | set.EncodeMsg(writer) |
| 2554 | writer.Flush() |
| 2555 | encoded := buf.Bytes() |
| 2556 | |
| 2557 | b.ReportAllocs() |
| 2558 | b.ResetTimer() |
| 2559 | for i := 0; i < b.N; i++ { |
| 2560 | reader := msgp.NewReader(bytes.NewReader(encoded)) |
| 2561 | var decoded ByteSorted |
| 2562 | decoded.DecodeMsg(reader) |
| 2563 | } |
| 2564 | }) |
| 2565 | } |
| 2566 | } |
| 2567 | |
| 2568 | func BenchmarkByteSorted_MarshalMsg(b *testing.B) { |
| 2569 | sizes := []int{10, 100, 1000} |