1Spacetime(3)                     OCaml library                    Spacetime(3)
2
3
4

NAME

6       Spacetime - Profiling of a program's space behaviour over time.
7

Module

9       Module   Spacetime
10

Documentation

12       Module Spacetime
13        : sig end
14
15
16       Profiling  of  a  program's  space behaviour over time.  Currently only
17       supported on x86-64 platforms running 64-bit code.
18
19       To use the functions in this module you must:
20
21       -configure the compiler with "-spacetime";
22
23       -compile to native code.  Without these conditions being satisfied  the
24       functions in this module will have no effect.
25
26       Instead of manually taking profiling heap snapshots with this module it
27       is possible to use an automatic snapshot facility that writes profiling
28       information  at  fixed  intervals  to  a file. To enable this, all that
29       needs to be done is to build the relevant program using a compiler con‐
30       figured  with -spacetime; and set the environment variable OCAML_SPACE‐
31       TIME_INTERVAL to an integer number of milliseconds giving the  interval
32       between  profiling  heap  snapshots.  This  interval should not be made
33       excessively small relative to the running time of the program. A  typi‐
34       cal  interval  to  start with might be 1/100 of the running time of the
35       program.  The program must exit "normally" (i.e. by calling exit , with
36       whatever  exit  code, rather than being abnormally terminated by a sig‐
37       nal) so that the snapshot file is correctly completed.
38
39       When using the automatic snapshot mode the profiling output is  written
40       to a file called "spacetime-<pid>" where <pid> is the process ID of the
41       program.  (If the program forks and continues executing  then  multiple
42       files  may be produced with different pid numbers.)  The profiling out‐
43       put is by default written to the current  working  directory  when  the
44       program  starts.   This  may  be customised by setting the OCAML_SPACE‐
45       TIME_SNAPSHOT_DIR environment variable  to  the  name  of  the  desired
46       directory.
47
48       If  using  automatic snapshots the presence of the save_event_for_auto‐
49       matic_snapshots function, below, should be noted.
50
51       The functions in this module are thread safe.
52
53       For functions to decode the information recorded by the  profiler,  see
54       the Spacetime offline library in otherlibs/.
55
56
57
58
59
60
61       val enabled : bool
62
63
64       enabled  is true if the compiler is configured with spacetime and false
65       otherwise
66
67
68       module Series : sig end
69
70
71
72
73       module Snapshot : sig end
74
75
76
77
78
79       val save_event_for_automatic_snapshots : event_name:string -> unit
80
81       Like Spacetime.Series.save_event , but writes to the automatic snapshot
82       file.   This  function  is  a no-op if OCAML_SPACETIME_INTERVAL was not
83       set.
84
85
86
87
88
89OCamldoc                          2020-02-27                      Spacetime(3)
Impressum