ProfilingData

scalus.uplc.eval.ProfilingData
case class ProfilingData(bySourceLocation: Seq[SourceLocationProfile], byFunction: Seq[FunctionProfile], byLocationFunction: Seq[LocationFunctionProfile], transitions: Seq[SourceTransition], totalBudget: ExUnits, prices: Option[ExUnitPrices] = ..., entryTrace: Seq[(String, Int)] = ...)

Aggregated profiling data from a CEK evaluation.

Value parameters

byFunction

Budget accumulated by function name, sorted by (mem, cpu) descending

byLocationFunction

Builtins called from each source location, sorted by (mem, cpu) descending

bySourceLocation

Budget accumulated by source location (file:line), sorted by (mem, cpu) descending

entryTrace

The first distinct source locations executed, in order. Used to root the hot-path tree at the first contract location (the literal first step is often a framework/fallback location).

prices

Optional execution-unit prices. When set, the formatters derive a per-entry on-chain fee (in lovelace) from each entry's (mem, cpu) and render a fee column/field alongside count, mem and cpu. Set it with withPrices before formatting.

totalBudget

Total budget spent during profiled execution

transitions

Execution flow: how many times control transitioned from one source location to another, sorted by count descending

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

Attach execution-unit prices so the formatters emit a derived per-entry fee (lovelace).

Attach execution-unit prices so the formatters emit a derived per-entry fee (lovelace).

Attributes

Inherited methods

def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product