parse - ActiveState ActiveGo 1.8

Package parse

import ""

Overview ▾

Package parse provides support for parsing benchmark results as generated by 'go test -bench'.


Flags used by Benchmark.Measured to indicate which measurements a Benchmark contains.

const (
    NsPerOp = 1 << iota

type Benchmark

Benchmark is one run of a single benchmark.

type Benchmark struct {
    Name              string  // benchmark name
    N                 int     // number of iterations
    NsPerOp           float64 // nanoseconds per iteration
    AllocedBytesPerOp uint64  // bytes allocated per iteration
    AllocsPerOp       uint64  // allocs per iteration
    MBPerS            float64 // MB processed per second
    Measured          int     // which measurements were recorded
    Ord               int     // ordinal position within a benchmark run

func ParseLine

func ParseLine(line string) (*Benchmark, error)

ParseLine extracts a Benchmark from a single line of testing.B output.

func (*Benchmark) String

func (b *Benchmark) String() string

type Set

Set is a collection of benchmarks from one testing.B run, keyed by name to facilitate comparison.

type Set map[string][]*Benchmark

func ParseSet

func ParseSet(r io.Reader) (Set, error)

ParseSet extracts a Set from testing.B output. ParseSet preserves the order of benchmarks that have identical names.