Back to godoc.org
go.mongodb.org/mongo-driver/benchmark

package benchmark

v1.3.4
Latest Go to latest
Published: Jun 3, 2020 | License: Apache-2.0 | Module: go.mongodb.org/mongo-driver

Index

Constants

const (
	ExecutionTimeout = five * time.Minute
	StandardRuntime  = time.Minute
	MinimumRuntime   = five * time.Second
	MinIterations    = hundred
)

func BSONDeepDocumentDecoding

func BSONDeepDocumentDecoding(ctx context.Context, tm TimerManager, iters int) error

func BSONDeepDocumentDecodingLazy

func BSONDeepDocumentDecodingLazy(ctx context.Context, tm TimerManager, iters int) error

func BSONDeepDocumentEncoding

func BSONDeepDocumentEncoding(ctx context.Context, tm TimerManager, iters int) error

func BSONDeepMapDecoding

func BSONDeepMapDecoding(ctx context.Context, tm TimerManager, iters int) error

func BSONDeepMapEncoding

func BSONDeepMapEncoding(ctx context.Context, tm TimerManager, iters int) error

func BSONFlatDocumentDecoding

func BSONFlatDocumentDecoding(ctx context.Context, tm TimerManager, iters int) error

func BSONFlatDocumentDecodingLazy

func BSONFlatDocumentDecodingLazy(ctx context.Context, tm TimerManager, iters int) error

func BSONFlatDocumentEncoding

func BSONFlatDocumentEncoding(ctx context.Context, tm TimerManager, iters int) error

func BSONFlatMapDecoding

func BSONFlatMapDecoding(ctx context.Context, tm TimerManager, iters int) error

func BSONFlatMapEncoding

func BSONFlatMapEncoding(ctx context.Context, tm TimerManager, iters int) error

func BSONFlatStructDecoding

func BSONFlatStructDecoding(ctx context.Context, tm TimerManager, iters int) error

func BSONFlatStructEncoding

func BSONFlatStructEncoding(ctx context.Context, tm TimerManager, iters int) error

func BSONFlatStructTagsDecoding

func BSONFlatStructTagsDecoding(ctx context.Context, tm TimerManager, iters int) error

func BSONFlatStructTagsEncoding

func BSONFlatStructTagsEncoding(ctx context.Context, tm TimerManager, iters int) error

func BSONFullDocumentDecoding

func BSONFullDocumentDecoding(ctx context.Context, tm TimerManager, iters int) error

func BSONFullDocumentDecodingLazy

func BSONFullDocumentDecodingLazy(ctx context.Context, tm TimerManager, iters int) error

func BSONFullDocumentEncoding

func BSONFullDocumentEncoding(ctx context.Context, tm TimerManager, iters int) error

func BSONFullMapDecoding

func BSONFullMapDecoding(ctx context.Context, tm TimerManager, iters int) error

func BSONFullMapEncoding

func BSONFullMapEncoding(ctx context.Context, tm TimerManager, iters int) error

func CanaryIncCase

func CanaryIncCase(ctx context.Context, tm TimerManager, iters int) error

func DriverBenchmarkMain

func DriverBenchmarkMain() int

func GlobalCanaryIncCase

func GlobalCanaryIncCase(ctx context.Context, tm TimerManager, iters int) error

func MultiFindMany

func MultiFindMany(ctx context.Context, tm TimerManager, iters int) error

func MultiInsertLargeDocument

func MultiInsertLargeDocument(ctx context.Context, tm TimerManager, iters int) error

func MultiInsertSmallDocument

func MultiInsertSmallDocument(ctx context.Context, tm TimerManager, iters int) error

func SingleFindOneByID

func SingleFindOneByID(ctx context.Context, tm TimerManager, iters int) error

func SingleInsertLargeDocument

func SingleInsertLargeDocument(ctx context.Context, tm TimerManager, iters int) error

func SingleInsertSmallDocument

func SingleInsertSmallDocument(ctx context.Context, tm TimerManager, iters int) error

func SingleRunCommand

func SingleRunCommand(ctx context.Context, tm TimerManager, iters int) error

type BenchCase

type BenchCase func(context.Context, TimerManager, int) error

type BenchFunction

type BenchFunction func(*testing.B)

func WrapCase

func WrapCase(bench BenchCase) BenchFunction

type BenchResult

type BenchResult struct {
	Name       string
	Trials     int
	Duration   time.Duration
	Raw        []Result
	DataSize   int
	Operations int
	// contains filtered or unexported fields
}

func (*BenchResult) EvergreenPerfFormat

func (r *BenchResult) EvergreenPerfFormat() ([]interface{}, error)

func (*BenchResult) HasErrors

func (r *BenchResult) HasErrors() bool

func (*BenchResult) String

func (r *BenchResult) String() string

type CaseDefinition

type CaseDefinition struct {
	Bench              BenchCase
	Count              int
	Size               int
	RequiredIterations int
	Runtime            time.Duration
	// contains filtered or unexported fields
}

func (*CaseDefinition) Name

func (c *CaseDefinition) Name() string

func (*CaseDefinition) ResetTimer

func (c *CaseDefinition) ResetTimer()

func (*CaseDefinition) Run

func (c *CaseDefinition) Run(ctx context.Context) *BenchResult

func (*CaseDefinition) StartTimer

func (c *CaseDefinition) StartTimer()

func (*CaseDefinition) StopTimer

func (c *CaseDefinition) StopTimer()

func (*CaseDefinition) String

func (c *CaseDefinition) String() string

type Result

type Result struct {
	Duration   time.Duration
	Iterations int
	Error      error
}

type TimerManager

type TimerManager interface {
	ResetTimer()
	StartTimer()
	StopTimer()
}

TimerManager is a subset of the testing.B tool, used to manage setup code.

Documentation was rendered with GOOS=linux and GOARCH=amd64.

Jump to identifier

Keyboard shortcuts

? : This menu
f or F : Jump to identifier