| // Code generated by mkmalloc.go; DO NOT EDIT. |
| // See overview in malloc_stubs.go. |
| |
| package runtime_test |
| |
| import ( |
| "internal/abi" |
| "runtime" |
| "testing" |
| ) |
| |
| func benchmarkMallocgcNoscan8(b *testing.B) { |
| const size = 8 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan8(b *testing.B) { |
| const size = 8 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice8(b *testing.B) { |
| const size = 8 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan16(b *testing.B) { |
| const size = 16 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan16(b *testing.B) { |
| const size = 16 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice16(b *testing.B) { |
| const size = 16 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan24(b *testing.B) { |
| const size = 24 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan24(b *testing.B) { |
| const size = 24 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice24(b *testing.B) { |
| const size = 24 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan32(b *testing.B) { |
| const size = 32 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan32(b *testing.B) { |
| const size = 32 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice32(b *testing.B) { |
| const size = 32 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan48(b *testing.B) { |
| const size = 48 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan48(b *testing.B) { |
| const size = 48 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice48(b *testing.B) { |
| const size = 48 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan64(b *testing.B) { |
| const size = 64 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan64(b *testing.B) { |
| const size = 64 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice64(b *testing.B) { |
| const size = 64 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan80(b *testing.B) { |
| const size = 80 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan80(b *testing.B) { |
| const size = 80 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice80(b *testing.B) { |
| const size = 80 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan96(b *testing.B) { |
| const size = 96 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan96(b *testing.B) { |
| const size = 96 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice96(b *testing.B) { |
| const size = 96 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan112(b *testing.B) { |
| const size = 112 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan112(b *testing.B) { |
| const size = 112 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice112(b *testing.B) { |
| const size = 112 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan128(b *testing.B) { |
| const size = 128 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan128(b *testing.B) { |
| const size = 128 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice128(b *testing.B) { |
| const size = 128 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan144(b *testing.B) { |
| const size = 144 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan144(b *testing.B) { |
| const size = 144 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice144(b *testing.B) { |
| const size = 144 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan160(b *testing.B) { |
| const size = 160 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan160(b *testing.B) { |
| const size = 160 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice160(b *testing.B) { |
| const size = 160 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan176(b *testing.B) { |
| const size = 176 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan176(b *testing.B) { |
| const size = 176 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice176(b *testing.B) { |
| const size = 176 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan192(b *testing.B) { |
| const size = 192 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan192(b *testing.B) { |
| const size = 192 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice192(b *testing.B) { |
| const size = 192 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan208(b *testing.B) { |
| const size = 208 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan208(b *testing.B) { |
| const size = 208 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice208(b *testing.B) { |
| const size = 208 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan224(b *testing.B) { |
| const size = 224 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan224(b *testing.B) { |
| const size = 224 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice224(b *testing.B) { |
| const size = 224 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan240(b *testing.B) { |
| const size = 240 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan240(b *testing.B) { |
| const size = 240 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice240(b *testing.B) { |
| const size = 240 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan256(b *testing.B) { |
| const size = 256 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan256(b *testing.B) { |
| const size = 256 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice256(b *testing.B) { |
| const size = 256 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan288(b *testing.B) { |
| const size = 288 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan288(b *testing.B) { |
| const size = 288 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice288(b *testing.B) { |
| const size = 288 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan320(b *testing.B) { |
| const size = 320 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan320(b *testing.B) { |
| const size = 320 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice320(b *testing.B) { |
| const size = 320 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan352(b *testing.B) { |
| const size = 352 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan352(b *testing.B) { |
| const size = 352 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice352(b *testing.B) { |
| const size = 352 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan384(b *testing.B) { |
| const size = 384 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan384(b *testing.B) { |
| const size = 384 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice384(b *testing.B) { |
| const size = 384 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan416(b *testing.B) { |
| const size = 416 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan416(b *testing.B) { |
| const size = 416 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice416(b *testing.B) { |
| const size = 416 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan448(b *testing.B) { |
| const size = 448 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan448(b *testing.B) { |
| const size = 448 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice448(b *testing.B) { |
| const size = 448 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan480(b *testing.B) { |
| const size = 480 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan480(b *testing.B) { |
| const size = 480 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice480(b *testing.B) { |
| const size = 480 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcNoscan512(b *testing.B) { |
| const size = 512 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScan512(b *testing.B) { |
| const size = 512 |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| |
| runtime.Escape(new(struct{ v [size / 8]*uint64 })) |
| |
| } |
| }) |
| var typ *abi.Type |
| |
| typ = abi.TypeOf(struct{ v [size / 8]*uint64 }{}) |
| |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, true)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcScanSlice512(b *testing.B) { |
| const size = 512 |
| for b.Loop() { |
| runtime.Escape(make([]*uint64, size/8)) |
| } |
| } |
| |
| func benchmarkMallocgcTiny1(b *testing.B) { |
| const size = 1 |
| type s struct { |
| v [size]byte |
| } |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(new(s)) |
| } |
| }) |
| typ := abi.TypeOf(s{}) |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, false)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcTiny2(b *testing.B) { |
| const size = 2 |
| type s struct { |
| v [size]byte |
| } |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(new(s)) |
| } |
| }) |
| typ := abi.TypeOf(s{}) |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, false)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcTiny3(b *testing.B) { |
| const size = 3 |
| type s struct { |
| v [size]byte |
| } |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(new(s)) |
| } |
| }) |
| typ := abi.TypeOf(s{}) |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, false)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcTiny4(b *testing.B) { |
| const size = 4 |
| type s struct { |
| v [size]byte |
| } |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(new(s)) |
| } |
| }) |
| typ := abi.TypeOf(s{}) |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, false)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcTiny5(b *testing.B) { |
| const size = 5 |
| type s struct { |
| v [size]byte |
| } |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(new(s)) |
| } |
| }) |
| typ := abi.TypeOf(s{}) |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, false)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcTiny6(b *testing.B) { |
| const size = 6 |
| type s struct { |
| v [size]byte |
| } |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(new(s)) |
| } |
| }) |
| typ := abi.TypeOf(s{}) |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, false)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcTiny7(b *testing.B) { |
| const size = 7 |
| type s struct { |
| v [size]byte |
| } |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(new(s)) |
| } |
| }) |
| typ := abi.TypeOf(s{}) |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, false)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcTiny8(b *testing.B) { |
| const size = 8 |
| type s struct { |
| v [size]byte |
| } |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(new(s)) |
| } |
| }) |
| typ := abi.TypeOf(s{}) |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, false)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcTiny9(b *testing.B) { |
| const size = 9 |
| type s struct { |
| v [size]byte |
| } |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(new(s)) |
| } |
| }) |
| typ := abi.TypeOf(s{}) |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, false)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcTiny10(b *testing.B) { |
| const size = 10 |
| type s struct { |
| v [size]byte |
| } |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(new(s)) |
| } |
| }) |
| typ := abi.TypeOf(s{}) |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, false)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcTiny11(b *testing.B) { |
| const size = 11 |
| type s struct { |
| v [size]byte |
| } |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(new(s)) |
| } |
| }) |
| typ := abi.TypeOf(s{}) |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, false)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcTiny12(b *testing.B) { |
| const size = 12 |
| type s struct { |
| v [size]byte |
| } |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(new(s)) |
| } |
| }) |
| typ := abi.TypeOf(s{}) |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, false)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcTiny13(b *testing.B) { |
| const size = 13 |
| type s struct { |
| v [size]byte |
| } |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(new(s)) |
| } |
| }) |
| typ := abi.TypeOf(s{}) |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, false)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcTiny14(b *testing.B) { |
| const size = 14 |
| type s struct { |
| v [size]byte |
| } |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(new(s)) |
| } |
| }) |
| typ := abi.TypeOf(s{}) |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, false)) |
| } |
| }) |
| } |
| |
| func benchmarkMallocgcTiny15(b *testing.B) { |
| const size = 15 |
| type s struct { |
| v [size]byte |
| } |
| b.Run("kind=new", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(new(s)) |
| } |
| }) |
| typ := abi.TypeOf(s{}) |
| b.Run("kind=mallocgc", func(b *testing.B) { |
| for b.Loop() { |
| runtime.Escape(runtime.MallocGC(size, typ, false)) |
| } |
| }) |
| } |
| |
| func BenchmarkMallocgc(b *testing.B) { |
| b.Run("scan=noscan", func(b *testing.B) { |
| b.Run("size=1", benchmarkMallocgcTiny1) |
| b.Run("size=2", benchmarkMallocgcTiny2) |
| b.Run("size=3", benchmarkMallocgcTiny3) |
| b.Run("size=4", benchmarkMallocgcTiny4) |
| b.Run("size=5", benchmarkMallocgcTiny5) |
| b.Run("size=6", benchmarkMallocgcTiny6) |
| b.Run("size=7", benchmarkMallocgcTiny7) |
| b.Run("size=8", benchmarkMallocgcTiny8) |
| b.Run("size=9", benchmarkMallocgcTiny9) |
| b.Run("size=10", benchmarkMallocgcTiny10) |
| b.Run("size=11", benchmarkMallocgcTiny11) |
| b.Run("size=12", benchmarkMallocgcTiny12) |
| b.Run("size=13", benchmarkMallocgcTiny13) |
| b.Run("size=14", benchmarkMallocgcTiny14) |
| b.Run("size=15", benchmarkMallocgcTiny15) |
| b.Run("size=16", benchmarkMallocgcNoscan16) |
| b.Run("size=24", benchmarkMallocgcNoscan24) |
| b.Run("size=32", benchmarkMallocgcNoscan32) |
| b.Run("size=48", benchmarkMallocgcNoscan48) |
| b.Run("size=64", benchmarkMallocgcNoscan64) |
| b.Run("size=80", benchmarkMallocgcNoscan80) |
| b.Run("size=96", benchmarkMallocgcNoscan96) |
| b.Run("size=112", benchmarkMallocgcNoscan112) |
| b.Run("size=128", benchmarkMallocgcNoscan128) |
| b.Run("size=144", benchmarkMallocgcNoscan144) |
| b.Run("size=160", benchmarkMallocgcNoscan160) |
| b.Run("size=176", benchmarkMallocgcNoscan176) |
| b.Run("size=192", benchmarkMallocgcNoscan192) |
| b.Run("size=208", benchmarkMallocgcNoscan208) |
| b.Run("size=224", benchmarkMallocgcNoscan224) |
| b.Run("size=240", benchmarkMallocgcNoscan240) |
| b.Run("size=256", benchmarkMallocgcNoscan256) |
| b.Run("size=288", benchmarkMallocgcNoscan288) |
| b.Run("size=320", benchmarkMallocgcNoscan320) |
| b.Run("size=352", benchmarkMallocgcNoscan352) |
| b.Run("size=384", benchmarkMallocgcNoscan384) |
| b.Run("size=416", benchmarkMallocgcNoscan416) |
| b.Run("size=448", benchmarkMallocgcNoscan448) |
| b.Run("size=480", benchmarkMallocgcNoscan480) |
| b.Run("size=512", benchmarkMallocgcNoscan512) |
| }) |
| b.Run("scan=scan", func(b *testing.B) { |
| b.Run("size=8", benchmarkMallocgcScan8) |
| b.Run("size=16", benchmarkMallocgcScan16) |
| b.Run("size=24", benchmarkMallocgcScan24) |
| b.Run("size=32", benchmarkMallocgcScan32) |
| b.Run("size=48", benchmarkMallocgcScan48) |
| b.Run("size=64", benchmarkMallocgcScan64) |
| b.Run("size=80", benchmarkMallocgcScan80) |
| b.Run("size=96", benchmarkMallocgcScan96) |
| b.Run("size=112", benchmarkMallocgcScan112) |
| b.Run("size=128", benchmarkMallocgcScan128) |
| b.Run("size=144", benchmarkMallocgcScan144) |
| b.Run("size=160", benchmarkMallocgcScan160) |
| b.Run("size=176", benchmarkMallocgcScan176) |
| b.Run("size=192", benchmarkMallocgcScan192) |
| b.Run("size=208", benchmarkMallocgcScan208) |
| b.Run("size=224", benchmarkMallocgcScan224) |
| b.Run("size=240", benchmarkMallocgcScan240) |
| b.Run("size=256", benchmarkMallocgcScan256) |
| b.Run("size=288", benchmarkMallocgcScan288) |
| b.Run("size=320", benchmarkMallocgcScan320) |
| b.Run("size=352", benchmarkMallocgcScan352) |
| b.Run("size=384", benchmarkMallocgcScan384) |
| b.Run("size=416", benchmarkMallocgcScan416) |
| b.Run("size=448", benchmarkMallocgcScan448) |
| b.Run("size=480", benchmarkMallocgcScan480) |
| b.Run("size=512", benchmarkMallocgcScan512) |
| }) |
| b.Run("scan=scanslice", func(b *testing.B) { |
| b.Run("size=8", benchmarkMallocgcScanSlice8) |
| b.Run("size=16", benchmarkMallocgcScanSlice16) |
| b.Run("size=24", benchmarkMallocgcScanSlice24) |
| b.Run("size=32", benchmarkMallocgcScanSlice32) |
| b.Run("size=48", benchmarkMallocgcScanSlice48) |
| b.Run("size=64", benchmarkMallocgcScanSlice64) |
| b.Run("size=80", benchmarkMallocgcScanSlice80) |
| b.Run("size=96", benchmarkMallocgcScanSlice96) |
| b.Run("size=112", benchmarkMallocgcScanSlice112) |
| b.Run("size=128", benchmarkMallocgcScanSlice128) |
| b.Run("size=144", benchmarkMallocgcScanSlice144) |
| b.Run("size=160", benchmarkMallocgcScanSlice160) |
| b.Run("size=176", benchmarkMallocgcScanSlice176) |
| b.Run("size=192", benchmarkMallocgcScanSlice192) |
| b.Run("size=208", benchmarkMallocgcScanSlice208) |
| b.Run("size=224", benchmarkMallocgcScanSlice224) |
| b.Run("size=240", benchmarkMallocgcScanSlice240) |
| b.Run("size=256", benchmarkMallocgcScanSlice256) |
| b.Run("size=288", benchmarkMallocgcScanSlice288) |
| b.Run("size=320", benchmarkMallocgcScanSlice320) |
| b.Run("size=352", benchmarkMallocgcScanSlice352) |
| b.Run("size=384", benchmarkMallocgcScanSlice384) |
| b.Run("size=416", benchmarkMallocgcScanSlice416) |
| b.Run("size=448", benchmarkMallocgcScanSlice448) |
| b.Run("size=480", benchmarkMallocgcScanSlice480) |
| b.Run("size=512", benchmarkMallocgcScanSlice512) |
| }) |
| } |