Skip to content

PgBenchmarkAttribute

Namespace: Ankus

Assembly: Ankus.Runtime.dll

Declares a synchronous benchmark that executes inside PostgreSQL. Native entry points are emitted only when AnkusIncludeBenchmarks is enabled.

[AttributeUsage(AttributeTargets.Method)]
public sealed class PgBenchmarkAttribute : Attribute

Inheritance: object, Attribute

public PgBenchmarkAttribute()

Gets or sets the positive target total measurement time in milliseconds.

public int MeasurementTimeMilliseconds { get; set; }

Value: int

Gets or sets the finite, nonnegative relative change below which a comparison is treated as noise.

public double NoiseThreshold { get; set; }

Value: double

Gets or sets the positive statistical resample count.

public int ResampleCount { get; set; }

Value: int

Gets or sets the number of measurement samples, which must be at least ten.

public int SampleSize { get; set; }

Value: int

Gets or sets the name of a synchronous static setup method invoked once before measurement.

public string? Setup { get; set; }

Value: string

Gets or sets the significance level used for comparisons, between zero and one.

public double SignificanceLevel { get; set; }

Value: double

Gets or sets the unit of the work one iteration performs, from which results report a throughput.

public PgBenchmarkThroughput Throughput { get; set; }

Value: PgBenchmarkThroughput

Set ThroughputPerIteration with it. The rate is the work divided by the primary time estimate, with its confidence interval, as Criterion reports it.

Gets or sets the positive number of bytes or elements one iteration processes when Throughput is set; otherwise zero.

public long ThroughputPerIteration { get; set; }

Value: long

Gets or sets the transaction boundary used by measured work.

public PgBenchmarkTransactionMode Transaction { get; set; }

Value: PgBenchmarkTransactionMode

Gets or sets the positive warmup time in milliseconds.

public int WarmupTimeMilliseconds { get; set; }

Value: int