benchmark

package
v0.0.8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 21, 2025 License: MIT Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AddMetricDescriptor added in v0.0.7

func AddMetricDescriptor(m MetricDescriptor)

Types

type CalculatedDiff

type CalculatedDiff struct {
	Name           string
	PreviousCommit string
	CurrentCommit  string
	MetricDiff     []MetricDiff
}

func Diff

func Diff(previous, current []Series) []CalculatedDiff

type CompareVerdict added in v0.0.7

type CompareVerdict int
const (
	CompareVerdictSame CompareVerdict = iota
	CompareVerdictBetter
	CompareVerdictWorse
)

type Measurement

type Measurement struct {
	Name       string   `json:"-"`
	CommitHash string   `json:"commit_hash"`
	Metrics    []Metric `json:"metrics"`
}

type Metric

type Metric struct {
	Unit   string    `json:"unit"`
	Values []float64 `json:"values"`
}

type MetricDescriptor added in v0.0.7

type MetricDescriptor struct {
	Unit       string
	Reduce     func([]float64) float64
	Comparator func(float64, float64) CompareVerdict
}

func GetMetricDescriptor added in v0.0.7

func GetMetricDescriptor(unit string) (MetricDescriptor, bool)

func NewMetricDescriptor added in v0.0.7

func NewMetricDescriptor(
	unit string, better string,
	threshold float64, reduce string,
) MetricDescriptor

type MetricDescriptorRegistry added in v0.0.7

type MetricDescriptorRegistry map[string]MetricDescriptor

type MetricDiff

type MetricDiff struct {
	Unit string

	PreviousValues []float64
	CurrentValues  []float64
}

func (MetricDiff) CurrentValue

func (m MetricDiff) CurrentValue() float64

func (MetricDiff) Emoji added in v0.0.7

func (m MetricDiff) Emoji() string

func (MetricDiff) PreviousValue

func (m MetricDiff) PreviousValue() float64

func (MetricDiff) Ratio

func (m MetricDiff) Ratio() float64

type Series

type Series struct {
	Name         string        `json:"name"`
	Measurements []Measurement `json:"measurements"`
}

func Merge

func Merge(previous, current []Series) []Series

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL