.TH "Spacetime" 3o source: 2019-01-25 OCamldoc "OCaml library" .SH NAME Spacetime \- Profiling of a program's space behaviour over time. .SH Module Module Spacetime .SH Documentation .sp Module .BI "Spacetime" : .B sig end .sp Profiling of a program\&'s space behaviour over time\&. Currently only supported on x86\-64 platforms running 64\-bit code\&. .sp To use the functions in this module you must: .sp \-configure the compiler with "\-spacetime"; .sp \-compile to native code\&. Without these conditions being satisfied the functions in this module will have no effect\&. Instead of manually taking profiling heap snapshots with this module it is possible to use an automatic snapshot facility that writes profiling information at fixed intervals to a file\&. To enable this, all that needs to be done is to build the relevant program using a compiler configured with \-spacetime; and set the environment variable OCAML_SPACETIME_INTERVAL to an integer number of milliseconds giving the interval between profiling heap snapshots\&. This interval should not be made excessively small relative to the running time of the program\&. A typical interval to start with might be 1/100 of the running time of the program\&. The program must exit "normally" (i\&.e\&. by calling .B exit , with whatever exit code, rather than being abnormally terminated by a signal) so that the snapshot file is correctly completed\&. .sp When using the automatic snapshot mode the profiling output is written to a file called "spacetime\-" where is the process ID of the program\&. (If the program forks and continues executing then multiple files may be produced with different pid numbers\&.) The profiling output is by default written to the current working directory when the program starts\&. This may be customised by setting the OCAML_SPACETIME_SNAPSHOT_DIR environment variable to the name of the desired directory\&. .sp If using automatic snapshots the presence of the .B save_event_for_automatic_snapshots function, below, should be noted\&. .sp The functions in this module are thread safe\&. .sp For functions to decode the information recorded by the profiler, see the Spacetime offline library in otherlibs/\&. .sp .sp .sp .I val enabled : .B bool .sp .B enabled is .B true if the compiler is configured with spacetime and .B false otherwise .sp .I module Series : .B sig end .sp .sp .I module Snapshot : .B sig end .sp .sp .I val save_event_for_automatic_snapshots : .B event_name:string -> unit .sp Like .B Spacetime\&.Series\&.save_event , but writes to the automatic snapshot file\&. This function is a no\-op if OCAML_SPACETIME_INTERVAL was not set\&. .sp