trace.profiler.output
Firefox Profiler integration
Equations
- Lean.Firefox.instOfScientificMilliseconds = { ofScientific := fun (m : Nat) (s : Bool) (e : Nat) => { ms := OfScientific.ofScientific m s e } }
Equations
- Lean.Firefox.instToJsonMilliseconds = { toJson := fun (x : Lean.Firefox.Milliseconds) => Lean.toJson x.ms }
Equations
- Lean.Firefox.instFromJsonMilliseconds = { fromJson? := fun (j : Lean.Json) => Lean.Firefox.Milliseconds.mk <$> Lean.fromJson? j }
Equations
- Lean.Firefox.instToJsonMicroseconds = { toJson := fun (x : Lean.Firefox.Microseconds) => Lean.toJson x.μs }
Equations
- Lean.Firefox.instFromJsonMicroseconds = { fromJson? := fun (j : Lean.Json) => Lean.Firefox.Microseconds.mk <$> Lean.fromJson? j }
Equations
- Lean.Firefox.instFromJsonCategory = { fromJson? := Lean.Firefox.fromJsonCategory✝ }
Equations
- Lean.Firefox.instFromJsonSampleUnits = { fromJson? := Lean.Firefox.fromJsonSampleUnits✝ }
Equations
- interval : Lean.Firefox.Milliseconds
- startTime : Lean.Firefox.Milliseconds
- categories : Array Lean.Firefox.Category
- processType : Nat
- product : String
- preprocessedProfileVersion : Nat
- sampleUnits : Lean.Firefox.SampleUnits
Instances For
- time : Array Lean.Firefox.Milliseconds
- weight : Array Lean.Firefox.Milliseconds
- weightType : String
- length : Nat
Instances For
Equations
Equations
- Lean.Firefox.instFromJsonFuncTable = { fromJson? := Lean.Firefox.fromJsonFuncTable✝ }
Equations
- Lean.Firefox.instFromJsonFrameTable = { fromJson? := Lean.Firefox.fromJsonFrameTable✝ }
Equations
- Lean.Firefox.instFromJsonResourceTable = { fromJson? := Lean.Firefox.fromJsonResourceTable✝ }
- name : String
- processType : String
- isMainThread : Bool
- samples : Lean.Firefox.SamplesTable
- markers : Lean.Firefox.RawMarkerTable
- stackTable : Lean.Firefox.StackTable
- frameTable : Lean.Firefox.FrameTable
- resourceTable : Lean.Firefox.ResourceTable
- funcTable : Lean.Firefox.FuncTable
Instances For
Equations
- Lean.Firefox.instFromJsonThread = { fromJson? := Lean.Firefox.fromJsonThread✝ }
- meta : Lean.Firefox.ProfileMeta
- threads : Array Lean.Firefox.Thread
Instances For
Equations
- Lean.Firefox.instToJsonProfile = { toJson := Lean.Firefox.toJsonProfile✝ }
Thread with maps necessary for computing max sharing indices
- stringMap : Std.HashMap String Nat
- funcMap : Std.HashMap Nat Nat
- lastTime : Float
Last timestamp encountered: stop time of preceding sibling, or else start time of parent.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Lean.Firefox.Profile.export
(name : String)
(startTime : Float)
(traceStates : Array Lean.TraceState)
(opts : Lean.Options)
:
Instances For
- sampleMap : Std.HashMap Nat Nat
Max sharing map for samples
Instances For
Merges given profiles such that samples with identical stacks are deduplicated by adding up their weights. Minimizes profile size while preserving per-stack timing information.
Equations
- One or more equations did not get rendered due to their size.