To focus the search input from anywhere on the page, press the 'S' key.
in-package search v0.1.0
-
core_profiler
-
-
core_profiler.disabled
-
core_profiler.offline_tool
-
Library
Module
Module type
Parameter
Class
Class type
Running a program with offline metrics collection causes it to write out a data file on exit. This data file is typically called profiler.dat
. The collected metrics can then be analyzed using profiler-tool.exe
.
I don't trust these numbers, but here they are:
┌──────────────────────────────────────────────────────┬──────────┬────────────┐ │ Name │ Time/Run │ Percentage │ ├──────────────────────────────────────────────────────┼──────────┼────────────┤ │ [offline.ml:Timer] at │ 18.29ns │ 10.34% │ │ [offline.ml:Probe] at │ 21.92ns │ 12.38% │ │ [offline.ml:Delta_timer] start_async │ 10.94ns │ 6.18% │ │ [offline.ml:Delta_timer] stop_async │ 22.78ns │ 12.87% │ │ [offline.ml:Delta_timer] start │ 11.23ns │ 6.34% │ │ [offline.ml:Delta_timer] stop │ 22.84ns │ 12.91% │ │ [offline.ml:Delta_timer.wrap_sync] nop │ 2.45ns │ 1.38% │ │ [offline.ml:Delta_timer.wrap_sync] wrapped_nop │ 40.59ns │ 22.93% │ │ [offline.ml:Delta_timer.wrap_sync] count_256 │ 143.57ns │ 81.12% │ │ [offline.ml:Delta_timer.wrap_sync] wrapped_count_256 │ 176.99ns │ 100.00% │ │ [offline.ml:Delta_probe] start │ 2.47ns │ 1.40% │ │ [offline.ml:Delta_probe] stop │ 22.11ns │ 12.49% │ │ [offline.ml:Delta_probe] start_async │ 2.44ns │ 1.38% │ │ [offline.ml:Delta_probe] stop_async │ 22.20ns │ 12.54% │ └──────────────────────────────────────────────────────┴──────────┴────────────┘
In Offline
, a Delta_probe
differs from a two point Group
in that for each start/stop pair, only one message is written to the buffer. This means that only the delta in the probe is available, as opposed to deltas in both probe and time.
module Profiler : sig ... end
module Timer :
Core_profiler_disabled.Intf.Probe
with type 'a create_args :=
'a Core_profiler_disabled.Intf.timer_create_args
and type 'a record_args :=
'a Core_profiler_disabled.Intf.timer_record_args
with type t = private int
A Timer
contains only a time stamp and no extra information; however, it is useful because (in Offline
) the current time is recorded when measurements are made.
module Probe :
Core_profiler_disabled.Intf.Probe
with type 'a create_args :=
'a Core_profiler_disabled.Intf.probe_create_args
and type 'a record_args :=
'a Core_profiler_disabled.Intf.probe_record_args
with type t = private int
A Probe
records some integer value that is passed to at
along with a timestamp.
module Delta_probe : sig ... end
Delta_probe
is an optimized two-probe group to track changes to some counter.
module Delta_timer : sig ... end
Delta_timer
is an optimized two-probe group to track time differences between calls to start
and stop
.