prysm-pulse/beacon-chain/state/stateutil/benchmark_test.go
Raul Jordan a9a4bb9163
Move Shared/Testutil into Testing (#9659)
* move testutil

* util pkg

* build

* gaz

Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2021-09-23 18:53:46 +00:00

31 lines
736 B
Go

package stateutil_test
import (
"testing"
"github.com/prysmaticlabs/prysm/crypto/hash"
"github.com/prysmaticlabs/prysm/encoding/ssz"
"github.com/prysmaticlabs/prysm/testing/require"
)
func BenchmarkMerkleize_Buffered(b *testing.B) {
roots := make([][32]byte, 8192)
for i := 0; i < 8192; i++ {
roots[0] = [32]byte{byte(i)}
}
newMerkleize := func(chunks [][32]byte, count uint64, limit uint64) ([32]byte, error) {
leafIndexer := func(i uint64) []byte {
return chunks[i][:]
}
return ssz.Merkleize(ssz.NewHasherFunc(hash.CustomSHA256Hasher()), count, limit, leafIndexer), nil
}
b.ResetTimer()
b.ReportAllocs()
for i := 0; i < b.N; i++ {
_, err := newMerkleize(roots, 8192, 8192)
require.NoError(b, err)
}
}