1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
module Info = struct
type t =
{ time : float (** Original Execution Time (when not cached) *)
; memory : float
(** Difference in words allocated in the heap using `Gc.quick_stat` *)
; cache_hit : bool (** was the sentence cached? *)
; time_hash : float (** Memo timing overhead *)
}
end
module Sentence = struct
type t =
{ range : Lang.Range.t
; info : Info.t
}
end
type t =
{ summary : string
; timings : Sentence.t list
}