summaryrefslogtreecommitdiff
path: root/ledger/perf_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'ledger/perf_test.go')
-rw-r--r--ledger/perf_test.go52
1 files changed, 3 insertions, 49 deletions
diff --git a/ledger/perf_test.go b/ledger/perf_test.go
index c1e520fef..15aca599f 100644
--- a/ledger/perf_test.go
+++ b/ledger/perf_test.go
@@ -30,64 +30,18 @@ import (
"github.com/algorand/go-algorand/data/basics"
"github.com/algorand/go-algorand/data/bookkeeping"
"github.com/algorand/go-algorand/data/transactions"
+ ledgertesting "github.com/algorand/go-algorand/ledger/testing"
"github.com/algorand/go-algorand/logging"
"github.com/algorand/go-algorand/protocol"
"github.com/algorand/go-algorand/util/execpool"
)
-func genesis(naccts int) (InitState, []basics.Address, []*crypto.SignatureSecrets) {
- return genesisWithProto(naccts, protocol.ConsensusCurrentVersion)
-}
-func genesisWithProto(naccts int, proto protocol.ConsensusVersion) (InitState, []basics.Address, []*crypto.SignatureSecrets) {
- blk := bookkeeping.Block{}
- blk.CurrentProtocol = proto
- blk.BlockHeader.GenesisID = "test"
- blk.FeeSink = testSinkAddr
- blk.RewardsPool = testPoolAddr
- crypto.RandBytes(blk.BlockHeader.GenesisHash[:])
-
- addrs := []basics.Address{}
- keys := []*crypto.SignatureSecrets{}
- accts := make(map[basics.Address]basics.AccountData)
-
- // 10 billion microalgos, across N accounts and pool and sink
- amount := 10 * 1000000000 * 1000000 / uint64(naccts+2)
-
- for i := 0; i < naccts; i++ {
- var seed crypto.Seed
- crypto.RandBytes(seed[:])
- key := crypto.GenerateSignatureSecrets(seed)
- addr := basics.Address(key.SignatureVerifier)
-
- keys = append(keys, key)
- addrs = append(addrs, addr)
-
- adata := basics.AccountData{}
- adata.MicroAlgos.Raw = amount //1000 * 1000 * 1000 * 1000 / uint64(naccts)
- accts[addr] = adata
- }
-
- pooldata := basics.AccountData{}
- pooldata.MicroAlgos.Raw = amount //1000 * 1000 * 1000 * 1000
- pooldata.Status = basics.NotParticipating
- accts[testPoolAddr] = pooldata
-
- sinkdata := basics.AccountData{}
- sinkdata.MicroAlgos.Raw = amount //1000 * 1000 * 1000 * 1000
- sinkdata.Status = basics.NotParticipating
- accts[testSinkAddr] = sinkdata
-
- genesisHash := blk.BlockHeader.GenesisHash
-
- return InitState{blk, accts, genesisHash}, addrs, keys
-}
-
func BenchmarkManyAccounts(b *testing.B) {
deadlock.Opts.Disable = true
b.StopTimer()
- genesisInitState, addrs, _ := genesis(1)
+ genesisInitState, addrs, _ := ledgertesting.Genesis(1)
addr := addrs[0]
dbName := fmt.Sprintf("%s.%d", b.Name(), crypto.RandUint64())
@@ -138,7 +92,7 @@ func BenchmarkManyAccounts(b *testing.B) {
func BenchmarkValidate(b *testing.B) {
b.StopTimer()
- genesisInitState, addrs, keys := genesis(10000)
+ genesisInitState, addrs, keys := ledgertesting.Genesis(10000)
backlogPool := execpool.MakeBacklog(nil, 0, execpool.LowPriority, nil)
defer backlogPool.Shutdown()