Documentation

Overview

    Package bench provides benchmark output parsing capabilities.

    Index

    Constants

    This section is empty.

    Variables

    This section is empty.

    Functions

    This section is empty.

    Types

    type Benchmark

    type Benchmark struct {
    	Name string
    	Runs int
    
    	NsPerOp float64
    	Mem     Mem                // from '-benchmem'
    	Custom  map[string]float64 `json:",omitempty"` // https://tip.golang.org/pkg/testing/#B.ReportMetric
    }

      Benchmark is an individual run

      type LineReader

      type LineReader interface {
      	ReadLine() (line []byte, isPrefix bool, err error)
      }

        LineReader defines the API surface of bufio.Reader used by the parser

        type Mem

        type Mem struct {
        	BytesPerOp  int
        	AllocsPerOp int
        	MBPerSec    float64
        }

          Mem is memory allocation information about a run

          type Parser

          type Parser struct {
          	// contains filtered or unexported fields
          }

            Parser is gobenchdata's benchmark output parser

            func NewParser

            func NewParser(in *bufio.Reader) *Parser

              NewParser instantiates a new benchmark parser that reads from the given buffer

              func (*Parser) Read

              func (p *Parser) Read() ([]Suite, error)

              type Run

              type Run struct {
              	Version string `json:",omitempty"`
              	Date    int64
              	Tags    []string `json:",omitempty"`
              	Suites  []Suite
              }

                Run denotes one run of gobenchdata, useful for grouping benchmark records

                func (*Run) FindBenchmark

                func (r *Run) FindBenchmark(pkg, bench string) (*Benchmark, bool)

                  FindBenchmark returns benchmark by package and bench name

                  type RunHistory

                  type RunHistory []Run

                    RunHistory is a sort.Interface that sorts the most recent run first

                    func (RunHistory) Len

                    func (r RunHistory) Len() int

                    func (RunHistory) Less

                    func (r RunHistory) Less(i, j int) bool

                    func (RunHistory) Runs

                    func (r RunHistory) Runs() []Run

                      Runs returns the underlyinng runs

                      func (RunHistory) Swap

                      func (r RunHistory) Swap(i, j int)

                      type Suite

                      type Suite struct {
                      	Goos       string
                      	Goarch     string
                      	Pkg        string
                      	Benchmarks []Benchmark
                      }

                        Suite is a suite of benchmark runs