mirror of
https://github.com/ipfs/kubo.git
synced 2026-02-25 20:37:53 +08:00
31 lines
857 B
Go
31 lines
857 B
Go
package decision
|
|
|
|
import (
|
|
"fmt"
|
|
"math"
|
|
"testing"
|
|
|
|
"github.com/ipfs/go-ipfs/exchange/bitswap/wantlist"
|
|
u "gx/ipfs/QmNiJuT8Ja3hMVpBHXv3Q6dwmperaQ6JjLtpMQgMCD7xvx/go-ipfs-util"
|
|
"gx/ipfs/QmVvkK7s5imCiq3JVbL3pGfnhcCnf3LrFJPF4GE2sAoGZf/go-testutil"
|
|
"gx/ipfs/QmZoWKhxUmZ2seW4BzX6fJkNR8hh9PsGModr7q171yq2SS/go-libp2p-peer"
|
|
cid "gx/ipfs/QmcZfnkapfECQGcLZaf9B79NRg7cRa9EnZh4LSbkCzwNvY/go-cid"
|
|
)
|
|
|
|
// FWIW: At the time of this commit, including a timestamp in task increases
|
|
// time cost of Push by 3%.
|
|
func BenchmarkTaskQueuePush(b *testing.B) {
|
|
q := newPRQ()
|
|
peers := []peer.ID{
|
|
testutil.RandPeerIDFatal(b),
|
|
testutil.RandPeerIDFatal(b),
|
|
testutil.RandPeerIDFatal(b),
|
|
}
|
|
b.ResetTimer()
|
|
for i := 0; i < b.N; i++ {
|
|
c := cid.NewCidV0(u.Hash([]byte(fmt.Sprint(i))))
|
|
|
|
q.Push(&wantlist.Entry{Cid: c, Priority: math.MaxInt32}, peers[i%len(peers)])
|
|
}
|
|
}
|